502b5a0199
This patch adds support for hardware monitoring of Lineage Compact Power Line Power Entry Modules. Reviewed-by: Tom Grennan <tom.grennan@ericsson.com> Signed-off-by: Guenter Roeck <guenter.roeck@ericsson.com>
77 lines
2.3 KiB
Text
77 lines
2.3 KiB
Text
Kernel driver lineage-pem
|
|
=========================
|
|
|
|
Supported devices:
|
|
* Lineage Compact Power Line Power Entry Modules
|
|
Prefix: 'lineage-pem'
|
|
Addresses scanned: -
|
|
Documentation:
|
|
http://www.lineagepower.com/oem/pdf/CPLI2C.pdf
|
|
|
|
Author: Guenter Roeck <guenter.roeck@ericsson.com>
|
|
|
|
|
|
Description
|
|
-----------
|
|
|
|
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.
|
|
|
|
|
|
Usage Notes
|
|
-----------
|
|
|
|
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.
|
|
|
|
|
|
Sysfs entries
|
|
-------------
|
|
|
|
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)
|
|
|
|
temp1_input
|
|
temp1_max
|
|
temp1_crit
|
|
temp1_alarm
|
|
temp1_crit_alarm
|
|
temp1_fault
|