1Kernel driver ucd9000
2=====================
3
4Supported chips:
5
6  * TI UCD90120, UCD90124, UCD90160, UCD90320, UCD9090, and UCD90910
7
8    Prefixes: 'ucd90120', 'ucd90124', 'ucd90160', 'ucd90320', 'ucd9090',
9              'ucd90910'
10
11    Addresses scanned: -
12
13    Datasheets:
14
15	- http://focus.ti.com/lit/ds/symlink/ucd90120.pdf
16	- http://focus.ti.com/lit/ds/symlink/ucd90124.pdf
17	- http://focus.ti.com/lit/ds/symlink/ucd90160.pdf
18	- http://focus.ti.com/lit/ds/symlink/ucd90320.pdf
19	- http://focus.ti.com/lit/ds/symlink/ucd9090.pdf
20	- http://focus.ti.com/lit/ds/symlink/ucd90910.pdf
21
22Author: Guenter Roeck <linux@roeck-us.net>
23
24
25Description
26-----------
27
28From datasheets:
29
30The UCD90120 Power Supply Sequencer and System Health Monitor monitors and
31sequences up to 12 independent voltage rails. The device integrates a 12-bit
32ADC with a 2.5V internal reference for monitoring up to 13 power supply voltage,
33current, or temperature inputs.
34
35The UCD90124 is a 12-rail PMBus/I2C addressable power-supply sequencer and
36system-health monitor. The device integrates a 12-bit ADC for monitoring up to
3713 power-supply voltage, current, or temperature inputs. Twenty-six GPIO pins
38can be used for power supply enables, power-on reset signals, external
39interrupts, cascading, or other system functions. Twelve of these pins offer PWM
40functionality. Using these pins, the UCD90124 offers support for fan control,
41margining, and general-purpose PWM functions.
42
43The UCD90160 is a 16-rail PMBus/I2C addressable power-supply sequencer and
44monitor. The device integrates a 12-bit ADC for monitoring up to 16 power-supply
45voltage inputs. Twenty-six GPIO pins can be used for power supply enables,
46power-on reset signals, external interrupts, cascading, or other system
47functions. Twelve of these pins offer PWM functionality. Using these pins, the
48UCD90160 offers support for margining, and general-purpose PWM functions.
49
50The UCD90320 is a 32-rail PMBus/I2C addressable power-supply sequencer and
51monitor. The 24 integrated ADC channels (AMONx) monitor the power supply
52voltage, current, and temperature. Of the 84 GPIO pins, 8 can be used as
53digital monitors (DMONx), 32 to enable the power supply (ENx), 24 for margining
54(MARx), 16 for logical GPO, and 32 GPIs for cascading, and system function.
55
56The UCD9090 is a 10-rail PMBus/I2C addressable power-supply sequencer and
57monitor. The device integrates a 12-bit ADC for monitoring up to 10 power-supply
58voltage inputs. Twenty-three GPIO pins can be used for power supply enables,
59power-on reset signals, external interrupts, cascading, or other system
60functions. Ten of these pins offer PWM functionality. Using these pins, the
61UCD9090 offers support for margining, and general-purpose PWM functions.
62
63The UCD90910 is a ten-rail I2C / PMBus addressable power-supply sequencer and
64system-health monitor. The device integrates a 12-bit ADC for monitoring up to
6513 power-supply voltage, current, or temperature inputs.
66
67This driver is a client driver to the core PMBus driver. Please see
68Documentation/hwmon/pmbus.rst for details on PMBus client drivers.
69
70
71Usage Notes
72-----------
73
74This driver does not auto-detect devices. You will have to instantiate the
75devices explicitly. Please see Documentation/i2c/instantiating-devices.rst for
76details.
77
78
79Platform data support
80---------------------
81
82The driver supports standard PMBus driver platform data. Please see
83Documentation/hwmon/pmbus.rst for details.
84
85
86Sysfs entries
87-------------
88
89The following attributes are supported. Limits are read-write; all other
90attributes are read-only.
91
92======================= ========================================================
93in[1-12]_label		"vout[1-12]".
94in[1-12]_input		Measured voltage. From READ_VOUT register.
95in[1-12]_min		Minimum Voltage. From VOUT_UV_WARN_LIMIT register.
96in[1-12]_max		Maximum voltage. From VOUT_OV_WARN_LIMIT register.
97in[1-12]_lcrit		Critical minimum Voltage. VOUT_UV_FAULT_LIMIT register.
98in[1-12]_crit		Critical maximum voltage. From VOUT_OV_FAULT_LIMIT
99			register.
100in[1-12]_min_alarm	Voltage low alarm. From VOLTAGE_UV_WARNING status.
101in[1-12]_max_alarm	Voltage high alarm. From VOLTAGE_OV_WARNING status.
102in[1-12]_lcrit_alarm	Voltage critical low alarm. From VOLTAGE_UV_FAULT
103			status.
104in[1-12]_crit_alarm	Voltage critical high alarm. From VOLTAGE_OV_FAULT
105			status.
106
107curr[1-12]_label	"iout[1-12]".
108curr[1-12]_input	Measured current. From READ_IOUT register.
109curr[1-12]_max		Maximum current. From IOUT_OC_WARN_LIMIT register.
110curr[1-12]_lcrit	Critical minimum output current. From
111			IOUT_UC_FAULT_LIMIT register.
112curr[1-12]_crit		Critical maximum current. From IOUT_OC_FAULT_LIMIT
113			register.
114curr[1-12]_max_alarm	Current high alarm. From IOUT_OC_WARNING status.
115curr[1-12]_crit_alarm	Current critical high alarm. From IOUT_OC_FAULT status.
116
117			For each attribute index, either voltage or current is
118			reported, but not both. If voltage or current is
119			reported depends on the chip configuration.
120
121temp[1-2]_input		Measured temperatures. From READ_TEMPERATURE_1 and
122			READ_TEMPERATURE_2 registers.
123temp[1-2]_max		Maximum temperature. From OT_WARN_LIMIT register.
124temp[1-2]_crit		Critical high temperature. From OT_FAULT_LIMIT register.
125temp[1-2]_max_alarm	Temperature high alarm.
126temp[1-2]_crit_alarm	Temperature critical high alarm.
127
128fan[1-4]_input		Fan RPM.
129fan[1-4]_alarm		Fan alarm.
130fan[1-4]_fault		Fan fault.
131
132			Fan attributes are only available on chips supporting
133			fan control (UCD90124, UCD90910). Attribute files are
134			created only for enabled fans.
135			Note that even though UCD90910 supports up to 10 fans,
136			only up to four fans are currently supported.
137======================= ========================================================
138