Kernel driver lineage-pem¶
Lineage Compact Power Line Power Entry Modules
Addresses scanned: -
Author: Guenter Roeck <firstname.lastname@example.org>
This driver supports various Lineage Compact Power Line DC/DC and AC/DC converters such as CP1800, CP2000AC, CP2000DC, CP2100DC, and others.
Lineage CPL power entry modules are nominally PMBus compliant. However, most standard PMBus commands are not supported. Specifically, all hardware monitoring and status reporting commands are non-standard. For this reason, a standard PMBus driver can not be used.
This driver does not probe for Lineage CPL devices, since there is no register which can be safely used to identify the chip. You will have to instantiate the devices explicitly.
Example: the following will load the driver for a Lineage PEM at address 0x40 on I2C bus #1:
$ modprobe lineage-pem $ echo lineage-pem 0x40 > /sys/bus/i2c/devices/i2c-1/new_device
All Lineage CPL power entry modules have a built-in I2C bus master selector (PCA9541). To ensure device access, this driver should only be used as client driver to the pca9541 I2C master selector driver.
All Lineage CPL devices report output voltage and device temperature as well as alarms for output voltage, temperature, input voltage, input current, input power, and fan status.
Input voltage, input current, input power, and fan speed measurement is only supported on newer devices. The driver detects if those attributes are supported, and only creates respective sysfs entries if they are.
|in1_input||Output voltage (mV)|
|in1_min_alarm||Output undervoltage alarm|
|in1_max_alarm||Output overvoltage alarm|
|in1_crit||Output voltage critical alarm|
|in2_input||Input voltage (mV, optional)|
|in2_alarm||Input voltage alarm|
|curr1_input||Input current (mA, optional)|
|curr1_alarm||Input overcurrent alarm|
|power1_input||Input power (uW, optional)|
|power1_alarm||Input power alarm|
|fan1_input||Fan 1 speed (rpm, optional)|
|fan2_input||Fan 2 speed (rpm, optional)|
|fan3_input||Fan 3 speed (rpm, optional)|