Back to home page

OSCL-LXR

 
 

    


0001 Kernel driver max34440
0002 ======================
0003 
0004 Supported chips:
0005 
0006   * Maxim MAX34440
0007 
0008     Prefixes: 'max34440'
0009 
0010     Addresses scanned: -
0011 
0012     Datasheet: https://datasheets.maximintegrated.com/en/ds/MAX34440.pdf
0013 
0014   * Maxim MAX34441
0015 
0016     PMBus 5-Channel Power-Supply Manager and Intelligent Fan Controller
0017 
0018     Prefixes: 'max34441'
0019 
0020     Addresses scanned: -
0021 
0022     Datasheet: https://datasheets.maximintegrated.com/en/ds/MAX34441.pdf
0023 
0024   * Maxim MAX34446
0025 
0026     PMBus Power-Supply Data Logger
0027 
0028     Prefixes: 'max34446'
0029 
0030     Addresses scanned: -
0031 
0032     Datasheet: https://datasheets.maximintegrated.com/en/ds/MAX34446.pdf
0033 
0034   * Maxim MAX34451
0035 
0036     PMBus 16-Channel V/I Monitor and 12-Channel Sequencer/Marginer
0037 
0038     Prefixes: 'max34451'
0039 
0040     Addresses scanned: -
0041 
0042     Datasheet: https://datasheets.maximintegrated.com/en/ds/MAX34451.pdf
0043 
0044   * Maxim MAX34460
0045 
0046     PMBus 12-Channel Voltage Monitor & Sequencer
0047 
0048     Prefix: 'max34460'
0049 
0050     Addresses scanned: -
0051 
0052     Datasheet: https://datasheets.maximintegrated.com/en/ds/MAX34460.pdf
0053 
0054   * Maxim MAX34461
0055 
0056     PMBus 16-Channel Voltage Monitor & Sequencer
0057 
0058     Prefix: 'max34461'
0059 
0060     Addresses scanned: -
0061 
0062     Datasheet: https://datasheets.maximintegrated.com/en/ds/MAX34461.pdf
0063 
0064 Author: Guenter Roeck <linux@roeck-us.net>
0065 
0066 
0067 Description
0068 -----------
0069 
0070 This driver supports hardware monitoring for Maxim MAX34440 PMBus 6-Channel
0071 Power-Supply Manager, MAX34441 PMBus 5-Channel Power-Supply Manager
0072 and Intelligent Fan Controller, and MAX34446 PMBus Power-Supply Data Logger.
0073 It also supports the MAX34451, MAX34460, and MAX34461 PMBus Voltage Monitor &
0074 Sequencers. The MAX34451 supports monitoring voltage or current of 12 channels
0075 based on GIN pins. The MAX34460 supports 12 voltage channels, and the MAX34461
0076 supports 16 voltage channels.
0077 
0078 The driver is a client driver to the core PMBus driver. Please see
0079 Documentation/hwmon/pmbus.rst for details on PMBus client drivers.
0080 
0081 
0082 Usage Notes
0083 -----------
0084 
0085 This driver does not auto-detect devices. You will have to instantiate the
0086 devices explicitly. Please see Documentation/i2c/instantiating-devices.rst for
0087 details.
0088 
0089 For MAX34446, the value of the currX_crit attribute determines if current or
0090 voltage measurement is enabled for a given channel. Voltage measurement is
0091 enabled if currX_crit is set to 0; current measurement is enabled if the
0092 attribute is set to a positive value. Power measurement is only enabled if
0093 channel 1 (3) is configured for voltage measurement, and channel 2 (4) is
0094 configured for current measurement.
0095 
0096 
0097 Platform data support
0098 ---------------------
0099 
0100 The driver supports standard PMBus driver platform data.
0101 
0102 
0103 Sysfs entries
0104 -------------
0105 
0106 The following attributes are supported. Limits are read-write; all other
0107 attributes are read-only.
0108 
0109 In
0110 ~~
0111 
0112 ======================= =======================================================
0113 in[1-6]_label           "vout[1-6]".
0114 in[1-6]_input           Measured voltage. From READ_VOUT register.
0115 in[1-6]_min             Minimum Voltage. From VOUT_UV_WARN_LIMIT register.
0116 in[1-6]_max             Maximum voltage. From VOUT_OV_WARN_LIMIT register.
0117 in[1-6]_lcrit           Critical minimum Voltage. VOUT_UV_FAULT_LIMIT register.
0118 in[1-6]_crit            Critical maximum voltage. From VOUT_OV_FAULT_LIMIT
0119                         register.
0120 in[1-6]_min_alarm       Voltage low alarm. From VOLTAGE_UV_WARNING status.
0121 in[1-6]_max_alarm       Voltage high alarm. From VOLTAGE_OV_WARNING status.
0122 in[1-6]_lcrit_alarm     Voltage critical low alarm. From VOLTAGE_UV_FAULT
0123                         status.
0124 in[1-6]_crit_alarm      Voltage critical high alarm. From VOLTAGE_OV_FAULT
0125                         status.
0126 in[1-6]_lowest          Historical minimum voltage.
0127 in[1-6]_highest         Historical maximum voltage.
0128 in[1-6]_reset_history   Write any value to reset history.
0129 ======================= =======================================================
0130 
0131 .. note:: MAX34446 only supports in[1-4].
0132 
0133 Curr
0134 ~~~~
0135 
0136 ======================= ========================================================
0137 curr[1-6]_label         "iout[1-6]".
0138 curr[1-6]_input         Measured current. From READ_IOUT register.
0139 curr[1-6]_max           Maximum current. From IOUT_OC_WARN_LIMIT register.
0140 curr[1-6]_crit          Critical maximum current. From IOUT_OC_FAULT_LIMIT
0141                         register.
0142 curr[1-6]_max_alarm     Current high alarm. From IOUT_OC_WARNING status.
0143 curr[1-6]_crit_alarm    Current critical high alarm. From IOUT_OC_FAULT status.
0144 curr[1-4]_average       Historical average current (MAX34446/34451 only).
0145 curr[1-6]_highest       Historical maximum current.
0146 curr[1-6]_reset_history Write any value to reset history.
0147 ======================= ========================================================
0148 
0149 .. note::
0150 
0151     - in6 and curr6 attributes only exist for MAX34440.
0152     - MAX34446 only supports curr[1-4].
0153 
0154 Power
0155 ~~~~~
0156 
0157 ======================= ========================================================
0158 power[1,3]_label        "pout[1,3]"
0159 power[1,3]_input        Measured power.
0160 power[1,3]_average      Historical average power.
0161 power[1,3]_highest      Historical maximum power.
0162 ======================= ========================================================
0163 
0164 .. note:: Power attributes only exist for MAX34446.
0165 
0166 Temp
0167 ~~~~
0168 
0169 ======================= ========================================================
0170 temp[1-8]_input         Measured temperatures. From READ_TEMPERATURE_1 register.
0171                         temp1 is the chip's internal temperature. temp2..temp5
0172                         are remote I2C temperature sensors. For MAX34441, temp6
0173                         is a remote thermal-diode sensor. For MAX34440, temp6..8
0174                         are remote I2C temperature sensors.
0175 temp[1-8]_max           Maximum temperature. From OT_WARN_LIMIT register.
0176 temp[1-8]_crit          Critical high temperature. From OT_FAULT_LIMIT register.
0177 temp[1-8]_max_alarm     Temperature high alarm.
0178 temp[1-8]_crit_alarm    Temperature critical high alarm.
0179 temp[1-8]_average       Historical average temperature (MAX34446 only).
0180 temp[1-8]_highest       Historical maximum temperature.
0181 temp[1-8]_reset_history Write any value to reset history.
0182 ======================= ========================================================
0183 
0184 
0185 .. note::
0186    - temp7 and temp8 attributes only exist for MAX34440.
0187    - MAX34446 only supports temp[1-3].
0188 
0189 
0190 .. note::
0191 
0192    - MAX34451 supports attribute groups in[1-16] (or curr[1-16] based on
0193      input pins) and temp[1-5].
0194    - MAX34460 supports attribute groups in[1-12] and temp[1-5].
0195    - MAX34461 supports attribute groups in[1-16] and temp[1-5].