Эх сурвалжийг харах

hwmon: (ucd9000) Add support for UCD90160 Power Supply Sequencer

The UCD90160 Power Supply Sequencer reuses the existing register layout,
so just an id addition was required.

Signed-off-by: Matthew Weber <matthew.weber@rockwellcollins.com>
Signed-off-by: Ronak Desai <ronak.desai@rockwellcollins.com>
[groeck: Updated description, ordered alphabetically, added documentation]
Signed-off-by: Guenter Roeck <linux@roeck-us.net>
Matt Weber 9 жил өмнө
parent
commit
50b2b02c40

+ 10 - 2
Documentation/hwmon/ucd9000

@@ -2,12 +2,13 @@ Kernel driver ucd9000
 =====================
 =====================
 
 
 Supported chips:
 Supported chips:
-  * TI UCD90120, UCD90124, UCD9090, and UCD90910
-    Prefixes: 'ucd90120', 'ucd90124', 'ucd9090', 'ucd90910'
+  * TI UCD90120, UCD90124, UCD90160, UCD9090, and UCD90910
+    Prefixes: 'ucd90120', 'ucd90124', 'ucd90160', 'ucd9090', 'ucd90910'
     Addresses scanned: -
     Addresses scanned: -
     Datasheets:
     Datasheets:
 	http://focus.ti.com/lit/ds/symlink/ucd90120.pdf
 	http://focus.ti.com/lit/ds/symlink/ucd90120.pdf
 	http://focus.ti.com/lit/ds/symlink/ucd90124.pdf
 	http://focus.ti.com/lit/ds/symlink/ucd90124.pdf
+	http://focus.ti.com/lit/ds/symlink/ucd90160.pdf
 	http://focus.ti.com/lit/ds/symlink/ucd9090.pdf
 	http://focus.ti.com/lit/ds/symlink/ucd9090.pdf
 	http://focus.ti.com/lit/ds/symlink/ucd90910.pdf
 	http://focus.ti.com/lit/ds/symlink/ucd90910.pdf
 
 
@@ -32,6 +33,13 @@ interrupts, cascading, or other system functions. Twelve of these pins offer PWM
 functionality. Using these pins, the UCD90124 offers support for fan control,
 functionality. Using these pins, the UCD90124 offers support for fan control,
 margining, and general-purpose PWM functions.
 margining, and general-purpose PWM functions.
 
 
+The UCD90160 is a 16-rail PMBus/I2C addressable power-supply sequencer and
+monitor. The device integrates a 12-bit ADC for monitoring up to 16 power-supply
+voltage inputs. Twenty-six GPIO pins can be used for power supply enables,
+power-on reset signals, external interrupts, cascading, or other system
+functions. Twelve of these pins offer PWM functionality. Using these pins, the
+UCD90160 offers support for margining, and general-purpose PWM functions.
+
 The UCD9090 is a 10-rail PMBus/I2C addressable power-supply sequencer and
 The UCD9090 is a 10-rail PMBus/I2C addressable power-supply sequencer and
 monitor. The device integrates a 12-bit ADC for monitoring up to 10 power-supply
 monitor. The device integrates a 12-bit ADC for monitoring up to 10 power-supply
 voltage inputs. Twenty-three GPIO pins can be used for power supply enables,
 voltage inputs. Twenty-three GPIO pins can be used for power supply enables,

+ 3 - 3
drivers/hwmon/pmbus/Kconfig

@@ -126,12 +126,12 @@ config SENSORS_TPS40422
 	  be called tps40422.
 	  be called tps40422.
 
 
 config SENSORS_UCD9000
 config SENSORS_UCD9000
-	tristate "TI UCD90120, UCD90124, UCD9090, UCD90910"
+	tristate "TI UCD90120, UCD90124, UCD90160, UCD9090, UCD90910"
 	default n
 	default n
 	help
 	help
 	  If you say yes here you get hardware monitoring support for TI
 	  If you say yes here you get hardware monitoring support for TI
-	  UCD90120, UCD90124, UCD9090, UCD90910 Sequencer and System Health
-	  Controllers.
+	  UCD90120, UCD90124, UCD90160, UCD9090, UCD90910, Sequencer and System
+	  Health Controllers.
 
 
 	  This driver can also be built as a module. If so, the module will
 	  This driver can also be built as a module. If so, the module will
 	  be called ucd9000.
 	  be called ucd9000.

+ 2 - 1
drivers/hwmon/pmbus/ucd9000.c

@@ -28,7 +28,7 @@
 #include <linux/i2c/pmbus.h>
 #include <linux/i2c/pmbus.h>
 #include "pmbus.h"
 #include "pmbus.h"
 
 
-enum chips { ucd9000, ucd90120, ucd90124, ucd9090, ucd90910 };
+enum chips { ucd9000, ucd90120, ucd90124, ucd90160, ucd9090, ucd90910 };
 
 
 #define UCD9000_MONITOR_CONFIG		0xd5
 #define UCD9000_MONITOR_CONFIG		0xd5
 #define UCD9000_NUM_PAGES		0xd6
 #define UCD9000_NUM_PAGES		0xd6
@@ -112,6 +112,7 @@ static const struct i2c_device_id ucd9000_id[] = {
 	{"ucd9000", ucd9000},
 	{"ucd9000", ucd9000},
 	{"ucd90120", ucd90120},
 	{"ucd90120", ucd90120},
 	{"ucd90124", ucd90124},
 	{"ucd90124", ucd90124},
+	{"ucd90160", ucd90160},
 	{"ucd9090", ucd9090},
 	{"ucd9090", ucd9090},
 	{"ucd90910", ucd90910},
 	{"ucd90910", ucd90910},
 	{}
 	{}