treewide: remove redundant IS_ERR() before error code check
[linux/fpc-iii.git] / Documentation / hwmon / lineage-pem.rst
blob10c271dc20e830221837356d1f25b9c1970aebd3
1 Kernel driver lineage-pem
2 =========================
4 Supported devices:
6   * Lineage Compact Power Line Power Entry Modules
8     Prefix: 'lineage-pem'
10     Addresses scanned: -
12     Documentation:
14         http://www.lineagepower.com/oem/pdf/CPLI2C.pdf
16 Author: Guenter Roeck <linux@roeck-us.net>
19 Description
20 -----------
22 This driver supports various Lineage Compact Power Line DC/DC and AC/DC
23 converters such as CP1800, CP2000AC, CP2000DC, CP2100DC, and others.
25 Lineage CPL power entry modules are nominally PMBus compliant. However, most
26 standard PMBus commands are not supported. Specifically, all hardware monitoring
27 and status reporting commands are non-standard. For this reason, a standard
28 PMBus driver can not be used.
31 Usage Notes
32 -----------
34 This driver does not probe for Lineage CPL devices, since there is no register
35 which can be safely used to identify the chip. You will have to instantiate
36 the devices explicitly.
38 Example: the following will load the driver for a Lineage PEM at address 0x40
39 on I2C bus #1::
41         $ modprobe lineage-pem
42         $ echo lineage-pem 0x40 > /sys/bus/i2c/devices/i2c-1/new_device
44 All Lineage CPL power entry modules have a built-in I2C bus master selector
45 (PCA9541). To ensure device access, this driver should only be used as client
46 driver to the pca9541 I2C master selector driver.
49 Sysfs entries
50 -------------
52 All Lineage CPL devices report output voltage and device temperature as well as
53 alarms for output voltage, temperature, input voltage, input current, input power,
54 and fan status.
56 Input voltage, input current, input power, and fan speed measurement is only
57 supported on newer devices. The driver detects if those attributes are supported,
58 and only creates respective sysfs entries if they are.
60 ======================= ===============================
61 in1_input               Output voltage (mV)
62 in1_min_alarm           Output undervoltage alarm
63 in1_max_alarm           Output overvoltage alarm
64 in1_crit                Output voltage critical alarm
66 in2_input               Input voltage (mV, optional)
67 in2_alarm               Input voltage alarm
69 curr1_input             Input current (mA, optional)
70 curr1_alarm             Input overcurrent alarm
72 power1_input            Input power (uW, optional)
73 power1_alarm            Input power alarm
75 fan1_input              Fan 1 speed (rpm, optional)
76 fan2_input              Fan 2 speed (rpm, optional)
77 fan3_input              Fan 3 speed (rpm, optional)
79 temp1_input
80 temp1_max
81 temp1_crit
82 temp1_alarm
83 temp1_crit_alarm
84 temp1_fault
85 ======================= ===============================