Back to home page

OSCL-LXR

 
 

    


0001 Kernel driver lineage-pem
0002 =========================
0003 
0004 Supported devices:
0005 
0006   * Lineage Compact Power Line Power Entry Modules
0007 
0008     Prefix: 'lineage-pem'
0009 
0010     Addresses scanned: -
0011 
0012     Documentation:
0013 
0014         http://www.lineagepower.com/oem/pdf/CPLI2C.pdf
0015 
0016 Author: Guenter Roeck <linux@roeck-us.net>
0017 
0018 
0019 Description
0020 -----------
0021 
0022 This driver supports various Lineage Compact Power Line DC/DC and AC/DC
0023 converters such as CP1800, CP2000AC, CP2000DC, CP2100DC, and others.
0024 
0025 Lineage CPL power entry modules are nominally PMBus compliant. However, most
0026 standard PMBus commands are not supported. Specifically, all hardware monitoring
0027 and status reporting commands are non-standard. For this reason, a standard
0028 PMBus driver can not be used.
0029 
0030 
0031 Usage Notes
0032 -----------
0033 
0034 This driver does not probe for Lineage CPL devices, since there is no register
0035 which can be safely used to identify the chip. You will have to instantiate
0036 the devices explicitly.
0037 
0038 Example: the following will load the driver for a Lineage PEM at address 0x40
0039 on I2C bus #1::
0040 
0041         $ modprobe lineage-pem
0042         $ echo lineage-pem 0x40 > /sys/bus/i2c/devices/i2c-1/new_device
0043 
0044 All Lineage CPL power entry modules have a built-in I2C bus master selector
0045 (PCA9541). To ensure device access, this driver should only be used as client
0046 driver to the pca9541 I2C master selector driver.
0047 
0048 
0049 Sysfs entries
0050 -------------
0051 
0052 All Lineage CPL devices report output voltage and device temperature as well as
0053 alarms for output voltage, temperature, input voltage, input current, input power,
0054 and fan status.
0055 
0056 Input voltage, input current, input power, and fan speed measurement is only
0057 supported on newer devices. The driver detects if those attributes are supported,
0058 and only creates respective sysfs entries if they are.
0059 
0060 ======================= ===============================
0061 in1_input               Output voltage (mV)
0062 in1_min_alarm           Output undervoltage alarm
0063 in1_max_alarm           Output overvoltage alarm
0064 in1_crit                Output voltage critical alarm
0065 
0066 in2_input               Input voltage (mV, optional)
0067 in2_alarm               Input voltage alarm
0068 
0069 curr1_input             Input current (mA, optional)
0070 curr1_alarm             Input overcurrent alarm
0071 
0072 power1_input            Input power (uW, optional)
0073 power1_alarm            Input power alarm
0074 
0075 fan1_input              Fan 1 speed (rpm, optional)
0076 fan2_input              Fan 2 speed (rpm, optional)
0077 fan3_input              Fan 3 speed (rpm, optional)
0078 
0079 temp1_input
0080 temp1_max
0081 temp1_crit
0082 temp1_alarm
0083 temp1_crit_alarm
0084 temp1_fault
0085 ======================= ===============================