17ebd8b66SMauro Carvalho ChehabKernel driver ucd9000
27ebd8b66SMauro Carvalho Chehab=====================
37ebd8b66SMauro Carvalho Chehab
47ebd8b66SMauro Carvalho ChehabSupported chips:
57ebd8b66SMauro Carvalho Chehab
67ebd8b66SMauro Carvalho Chehab  * TI UCD90120, UCD90124, UCD90160, UCD9090, and UCD90910
77ebd8b66SMauro Carvalho Chehab
87ebd8b66SMauro Carvalho Chehab    Prefixes: 'ucd90120', 'ucd90124', 'ucd90160', 'ucd9090', 'ucd90910'
97ebd8b66SMauro Carvalho Chehab
107ebd8b66SMauro Carvalho Chehab    Addresses scanned: -
117ebd8b66SMauro Carvalho Chehab
127ebd8b66SMauro Carvalho Chehab    Datasheets:
137ebd8b66SMauro Carvalho Chehab
147ebd8b66SMauro Carvalho Chehab	- http://focus.ti.com/lit/ds/symlink/ucd90120.pdf
157ebd8b66SMauro Carvalho Chehab	- http://focus.ti.com/lit/ds/symlink/ucd90124.pdf
167ebd8b66SMauro Carvalho Chehab	- http://focus.ti.com/lit/ds/symlink/ucd90160.pdf
177ebd8b66SMauro Carvalho Chehab	- http://focus.ti.com/lit/ds/symlink/ucd9090.pdf
187ebd8b66SMauro Carvalho Chehab	- http://focus.ti.com/lit/ds/symlink/ucd90910.pdf
197ebd8b66SMauro Carvalho Chehab
207ebd8b66SMauro Carvalho ChehabAuthor: Guenter Roeck <linux@roeck-us.net>
217ebd8b66SMauro Carvalho Chehab
227ebd8b66SMauro Carvalho Chehab
237ebd8b66SMauro Carvalho ChehabDescription
247ebd8b66SMauro Carvalho Chehab-----------
257ebd8b66SMauro Carvalho Chehab
267ebd8b66SMauro Carvalho ChehabFrom datasheets:
277ebd8b66SMauro Carvalho Chehab
287ebd8b66SMauro Carvalho ChehabThe UCD90120 Power Supply Sequencer and System Health Monitor monitors and
297ebd8b66SMauro Carvalho Chehabsequences up to 12 independent voltage rails. The device integrates a 12-bit
307ebd8b66SMauro Carvalho ChehabADC with a 2.5V internal reference for monitoring up to 13 power supply voltage,
317ebd8b66SMauro Carvalho Chehabcurrent, or temperature inputs.
327ebd8b66SMauro Carvalho Chehab
337ebd8b66SMauro Carvalho ChehabThe UCD90124 is a 12-rail PMBus/I2C addressable power-supply sequencer and
347ebd8b66SMauro Carvalho Chehabsystem-health monitor. The device integrates a 12-bit ADC for monitoring up to
357ebd8b66SMauro Carvalho Chehab13 power-supply voltage, current, or temperature inputs. Twenty-six GPIO pins
367ebd8b66SMauro Carvalho Chehabcan be used for power supply enables, power-on reset signals, external
377ebd8b66SMauro Carvalho Chehabinterrupts, cascading, or other system functions. Twelve of these pins offer PWM
387ebd8b66SMauro Carvalho Chehabfunctionality. Using these pins, the UCD90124 offers support for fan control,
397ebd8b66SMauro Carvalho Chehabmargining, and general-purpose PWM functions.
407ebd8b66SMauro Carvalho Chehab
417ebd8b66SMauro Carvalho ChehabThe UCD90160 is a 16-rail PMBus/I2C addressable power-supply sequencer and
427ebd8b66SMauro Carvalho Chehabmonitor. The device integrates a 12-bit ADC for monitoring up to 16 power-supply
437ebd8b66SMauro Carvalho Chehabvoltage inputs. Twenty-six GPIO pins can be used for power supply enables,
447ebd8b66SMauro Carvalho Chehabpower-on reset signals, external interrupts, cascading, or other system
457ebd8b66SMauro Carvalho Chehabfunctions. Twelve of these pins offer PWM functionality. Using these pins, the
467ebd8b66SMauro Carvalho ChehabUCD90160 offers support for margining, and general-purpose PWM functions.
477ebd8b66SMauro Carvalho Chehab
487ebd8b66SMauro Carvalho ChehabThe UCD9090 is a 10-rail PMBus/I2C addressable power-supply sequencer and
497ebd8b66SMauro Carvalho Chehabmonitor. The device integrates a 12-bit ADC for monitoring up to 10 power-supply
507ebd8b66SMauro Carvalho Chehabvoltage inputs. Twenty-three GPIO pins can be used for power supply enables,
517ebd8b66SMauro Carvalho Chehabpower-on reset signals, external interrupts, cascading, or other system
527ebd8b66SMauro Carvalho Chehabfunctions. Ten of these pins offer PWM functionality. Using these pins, the
537ebd8b66SMauro Carvalho ChehabUCD9090 offers support for margining, and general-purpose PWM functions.
547ebd8b66SMauro Carvalho Chehab
557ebd8b66SMauro Carvalho ChehabThe UCD90910 is a ten-rail I2C / PMBus addressable power-supply sequencer and
567ebd8b66SMauro Carvalho Chehabsystem-health monitor. The device integrates a 12-bit ADC for monitoring up to
577ebd8b66SMauro Carvalho Chehab13 power-supply voltage, current, or temperature inputs.
587ebd8b66SMauro Carvalho Chehab
597ebd8b66SMauro Carvalho ChehabThis driver is a client driver to the core PMBus driver. Please see
607ebd8b66SMauro Carvalho ChehabDocumentation/hwmon/pmbus.rst for details on PMBus client drivers.
617ebd8b66SMauro Carvalho Chehab
627ebd8b66SMauro Carvalho Chehab
637ebd8b66SMauro Carvalho ChehabUsage Notes
647ebd8b66SMauro Carvalho Chehab-----------
657ebd8b66SMauro Carvalho Chehab
667ebd8b66SMauro Carvalho ChehabThis driver does not auto-detect devices. You will have to instantiate the
677ebd8b66SMauro Carvalho Chehabdevices explicitly. Please see Documentation/i2c/instantiating-devices for
687ebd8b66SMauro Carvalho Chehabdetails.
697ebd8b66SMauro Carvalho Chehab
707ebd8b66SMauro Carvalho Chehab
717ebd8b66SMauro Carvalho ChehabPlatform data support
727ebd8b66SMauro Carvalho Chehab---------------------
737ebd8b66SMauro Carvalho Chehab
747ebd8b66SMauro Carvalho ChehabThe driver supports standard PMBus driver platform data. Please see
757ebd8b66SMauro Carvalho ChehabDocumentation/hwmon/pmbus.rst for details.
767ebd8b66SMauro Carvalho Chehab
777ebd8b66SMauro Carvalho Chehab
787ebd8b66SMauro Carvalho ChehabSysfs entries
797ebd8b66SMauro Carvalho Chehab-------------
807ebd8b66SMauro Carvalho Chehab
817ebd8b66SMauro Carvalho ChehabThe following attributes are supported. Limits are read-write; all other
827ebd8b66SMauro Carvalho Chehabattributes are read-only.
837ebd8b66SMauro Carvalho Chehab
847ebd8b66SMauro Carvalho Chehab======================= ========================================================
857ebd8b66SMauro Carvalho Chehabin[1-12]_label		"vout[1-12]".
867ebd8b66SMauro Carvalho Chehabin[1-12]_input		Measured voltage. From READ_VOUT register.
877ebd8b66SMauro Carvalho Chehabin[1-12]_min		Minimum Voltage. From VOUT_UV_WARN_LIMIT register.
887ebd8b66SMauro Carvalho Chehabin[1-12]_max		Maximum voltage. From VOUT_OV_WARN_LIMIT register.
897ebd8b66SMauro Carvalho Chehabin[1-12]_lcrit		Critical minimum Voltage. VOUT_UV_FAULT_LIMIT register.
907ebd8b66SMauro Carvalho Chehabin[1-12]_crit		Critical maximum voltage. From VOUT_OV_FAULT_LIMIT
917ebd8b66SMauro Carvalho Chehab			register.
927ebd8b66SMauro Carvalho Chehabin[1-12]_min_alarm	Voltage low alarm. From VOLTAGE_UV_WARNING status.
937ebd8b66SMauro Carvalho Chehabin[1-12]_max_alarm	Voltage high alarm. From VOLTAGE_OV_WARNING status.
947ebd8b66SMauro Carvalho Chehabin[1-12]_lcrit_alarm	Voltage critical low alarm. From VOLTAGE_UV_FAULT
957ebd8b66SMauro Carvalho Chehab			status.
967ebd8b66SMauro Carvalho Chehabin[1-12]_crit_alarm	Voltage critical high alarm. From VOLTAGE_OV_FAULT
977ebd8b66SMauro Carvalho Chehab			status.
987ebd8b66SMauro Carvalho Chehab
997ebd8b66SMauro Carvalho Chehabcurr[1-12]_label	"iout[1-12]".
1007ebd8b66SMauro Carvalho Chehabcurr[1-12]_input	Measured current. From READ_IOUT register.
1017ebd8b66SMauro Carvalho Chehabcurr[1-12]_max		Maximum current. From IOUT_OC_WARN_LIMIT register.
1027ebd8b66SMauro Carvalho Chehabcurr[1-12]_lcrit	Critical minimum output current. From
1037ebd8b66SMauro Carvalho Chehab			IOUT_UC_FAULT_LIMIT register.
1047ebd8b66SMauro Carvalho Chehabcurr[1-12]_crit		Critical maximum current. From IOUT_OC_FAULT_LIMIT
1057ebd8b66SMauro Carvalho Chehab			register.
1067ebd8b66SMauro Carvalho Chehabcurr[1-12]_max_alarm	Current high alarm. From IOUT_OC_WARNING status.
1077ebd8b66SMauro Carvalho Chehabcurr[1-12]_crit_alarm	Current critical high alarm. From IOUT_OC_FAULT status.
1087ebd8b66SMauro Carvalho Chehab
1097ebd8b66SMauro Carvalho Chehab			For each attribute index, either voltage or current is
1107ebd8b66SMauro Carvalho Chehab			reported, but not both. If voltage or current is
1117ebd8b66SMauro Carvalho Chehab			reported depends on the chip configuration.
1127ebd8b66SMauro Carvalho Chehab
1137ebd8b66SMauro Carvalho Chehabtemp[1-2]_input		Measured temperatures. From READ_TEMPERATURE_1 and
1147ebd8b66SMauro Carvalho Chehab			READ_TEMPERATURE_2 registers.
1157ebd8b66SMauro Carvalho Chehabtemp[1-2]_max		Maximum temperature. From OT_WARN_LIMIT register.
1167ebd8b66SMauro Carvalho Chehabtemp[1-2]_crit		Critical high temperature. From OT_FAULT_LIMIT register.
1177ebd8b66SMauro Carvalho Chehabtemp[1-2]_max_alarm	Temperature high alarm.
1187ebd8b66SMauro Carvalho Chehabtemp[1-2]_crit_alarm	Temperature critical high alarm.
1197ebd8b66SMauro Carvalho Chehab
1207ebd8b66SMauro Carvalho Chehabfan[1-4]_input		Fan RPM.
1217ebd8b66SMauro Carvalho Chehabfan[1-4]_alarm		Fan alarm.
1227ebd8b66SMauro Carvalho Chehabfan[1-4]_fault		Fan fault.
1237ebd8b66SMauro Carvalho Chehab
1247ebd8b66SMauro Carvalho Chehab			Fan attributes are only available on chips supporting
1257ebd8b66SMauro Carvalho Chehab			fan control (UCD90124, UCD90910). Attribute files are
1267ebd8b66SMauro Carvalho Chehab			created only for enabled fans.
1277ebd8b66SMauro Carvalho Chehab			Note that even though UCD90910 supports up to 10 fans,
1287ebd8b66SMauro Carvalho Chehab			only up to four fans are currently supported.
1297ebd8b66SMauro Carvalho Chehab======================= ========================================================
130