Back to home page

OSCL-LXR

 
 

    


0001 Kernel driver ucd9000
0002 =====================
0003 
0004 Supported chips:
0005 
0006   * TI UCD90120, UCD90124, UCD90160, UCD90320, UCD9090, and UCD90910
0007 
0008     Prefixes: 'ucd90120', 'ucd90124', 'ucd90160', 'ucd90320', 'ucd9090',
0009               'ucd90910'
0010 
0011     Addresses scanned: -
0012 
0013     Datasheets:
0014 
0015         - http://focus.ti.com/lit/ds/symlink/ucd90120.pdf
0016         - http://focus.ti.com/lit/ds/symlink/ucd90124.pdf
0017         - http://focus.ti.com/lit/ds/symlink/ucd90160.pdf
0018         - http://focus.ti.com/lit/ds/symlink/ucd90320.pdf
0019         - http://focus.ti.com/lit/ds/symlink/ucd9090.pdf
0020         - http://focus.ti.com/lit/ds/symlink/ucd90910.pdf
0021 
0022 Author: Guenter Roeck <linux@roeck-us.net>
0023 
0024 
0025 Description
0026 -----------
0027 
0028 From datasheets:
0029 
0030 The UCD90120 Power Supply Sequencer and System Health Monitor monitors and
0031 sequences up to 12 independent voltage rails. The device integrates a 12-bit
0032 ADC with a 2.5V internal reference for monitoring up to 13 power supply voltage,
0033 current, or temperature inputs.
0034 
0035 The UCD90124 is a 12-rail PMBus/I2C addressable power-supply sequencer and
0036 system-health monitor. The device integrates a 12-bit ADC for monitoring up to
0037 13 power-supply voltage, current, or temperature inputs. Twenty-six GPIO pins
0038 can be used for power supply enables, power-on reset signals, external
0039 interrupts, cascading, or other system functions. Twelve of these pins offer PWM
0040 functionality. Using these pins, the UCD90124 offers support for fan control,
0041 margining, and general-purpose PWM functions.
0042 
0043 The UCD90160 is a 16-rail PMBus/I2C addressable power-supply sequencer and
0044 monitor. The device integrates a 12-bit ADC for monitoring up to 16 power-supply
0045 voltage inputs. Twenty-six GPIO pins can be used for power supply enables,
0046 power-on reset signals, external interrupts, cascading, or other system
0047 functions. Twelve of these pins offer PWM functionality. Using these pins, the
0048 UCD90160 offers support for margining, and general-purpose PWM functions.
0049 
0050 The UCD90320 is a 32-rail PMBus/I2C addressable power-supply sequencer and
0051 monitor. The 24 integrated ADC channels (AMONx) monitor the power supply
0052 voltage, current, and temperature. Of the 84 GPIO pins, 8 can be used as
0053 digital monitors (DMONx), 32 to enable the power supply (ENx), 24 for margining
0054 (MARx), 16 for logical GPO, and 32 GPIs for cascading, and system function.
0055 
0056 The UCD9090 is a 10-rail PMBus/I2C addressable power-supply sequencer and
0057 monitor. The device integrates a 12-bit ADC for monitoring up to 10 power-supply
0058 voltage inputs. Twenty-three GPIO pins can be used for power supply enables,
0059 power-on reset signals, external interrupts, cascading, or other system
0060 functions. Ten of these pins offer PWM functionality. Using these pins, the
0061 UCD9090 offers support for margining, and general-purpose PWM functions.
0062 
0063 The UCD90910 is a ten-rail I2C / PMBus addressable power-supply sequencer and
0064 system-health monitor. The device integrates a 12-bit ADC for monitoring up to
0065 13 power-supply voltage, current, or temperature inputs.
0066 
0067 This driver is a client driver to the core PMBus driver. Please see
0068 Documentation/hwmon/pmbus.rst for details on PMBus client drivers.
0069 
0070 
0071 Usage Notes
0072 -----------
0073 
0074 This driver does not auto-detect devices. You will have to instantiate the
0075 devices explicitly. Please see Documentation/i2c/instantiating-devices.rst for
0076 details.
0077 
0078 
0079 Platform data support
0080 ---------------------
0081 
0082 The driver supports standard PMBus driver platform data. Please see
0083 Documentation/hwmon/pmbus.rst for details.
0084 
0085 
0086 Sysfs entries
0087 -------------
0088 
0089 The following attributes are supported. Limits are read-write; all other
0090 attributes are read-only.
0091 
0092 ======================= ========================================================
0093 in[1-12]_label          "vout[1-12]".
0094 in[1-12]_input          Measured voltage. From READ_VOUT register.
0095 in[1-12]_min            Minimum Voltage. From VOUT_UV_WARN_LIMIT register.
0096 in[1-12]_max            Maximum voltage. From VOUT_OV_WARN_LIMIT register.
0097 in[1-12]_lcrit          Critical minimum Voltage. VOUT_UV_FAULT_LIMIT register.
0098 in[1-12]_crit           Critical maximum voltage. From VOUT_OV_FAULT_LIMIT
0099                         register.
0100 in[1-12]_min_alarm      Voltage low alarm. From VOLTAGE_UV_WARNING status.
0101 in[1-12]_max_alarm      Voltage high alarm. From VOLTAGE_OV_WARNING status.
0102 in[1-12]_lcrit_alarm    Voltage critical low alarm. From VOLTAGE_UV_FAULT
0103                         status.
0104 in[1-12]_crit_alarm     Voltage critical high alarm. From VOLTAGE_OV_FAULT
0105                         status.
0106 
0107 curr[1-12]_label        "iout[1-12]".
0108 curr[1-12]_input        Measured current. From READ_IOUT register.
0109 curr[1-12]_max          Maximum current. From IOUT_OC_WARN_LIMIT register.
0110 curr[1-12]_lcrit        Critical minimum output current. From
0111                         IOUT_UC_FAULT_LIMIT register.
0112 curr[1-12]_crit         Critical maximum current. From IOUT_OC_FAULT_LIMIT
0113                         register.
0114 curr[1-12]_max_alarm    Current high alarm. From IOUT_OC_WARNING status.
0115 curr[1-12]_crit_alarm   Current critical high alarm. From IOUT_OC_FAULT status.
0116 
0117                         For each attribute index, either voltage or current is
0118                         reported, but not both. If voltage or current is
0119                         reported depends on the chip configuration.
0120 
0121 temp[1-2]_input         Measured temperatures. From READ_TEMPERATURE_1 and
0122                         READ_TEMPERATURE_2 registers.
0123 temp[1-2]_max           Maximum temperature. From OT_WARN_LIMIT register.
0124 temp[1-2]_crit          Critical high temperature. From OT_FAULT_LIMIT register.
0125 temp[1-2]_max_alarm     Temperature high alarm.
0126 temp[1-2]_crit_alarm    Temperature critical high alarm.
0127 
0128 fan[1-4]_input          Fan RPM.
0129 fan[1-4]_alarm          Fan alarm.
0130 fan[1-4]_fault          Fan fault.
0131 
0132                         Fan attributes are only available on chips supporting
0133                         fan control (UCD90124, UCD90910). Attribute files are
0134                         created only for enabled fans.
0135                         Note that even though UCD90910 supports up to 10 fans,
0136                         only up to four fans are currently supported.
0137 ======================= ========================================================