Kyle Swenson | 8d8f654 | 2021-03-15 11:02:55 -0600 | [diff] [blame] | 1 | Kernel driver max34440 |
| 2 | ====================== |
| 3 | |
| 4 | Supported chips: |
| 5 | * Maxim MAX34440 |
| 6 | Prefixes: 'max34440' |
| 7 | Addresses scanned: - |
| 8 | Datasheet: http://datasheets.maxim-ic.com/en/ds/MAX34440.pdf |
| 9 | * Maxim MAX34441 |
| 10 | PMBus 5-Channel Power-Supply Manager and Intelligent Fan Controller |
| 11 | Prefixes: 'max34441' |
| 12 | Addresses scanned: - |
| 13 | Datasheet: http://datasheets.maxim-ic.com/en/ds/MAX34441.pdf |
| 14 | * Maxim MAX34446 |
| 15 | PMBus Power-Supply Data Logger |
| 16 | Prefixes: 'max34446' |
| 17 | Addresses scanned: - |
| 18 | Datasheet: http://datasheets.maxim-ic.com/en/ds/MAX34446.pdf |
| 19 | * Maxim MAX34460 |
| 20 | PMBus 12-Channel Voltage Monitor & Sequencer |
| 21 | Prefix: 'max34460' |
| 22 | Addresses scanned: - |
| 23 | Datasheet: http://datasheets.maximintegrated.com/en/ds/MAX34460.pdf |
| 24 | * Maxim MAX34461 |
| 25 | PMBus 16-Channel Voltage Monitor & Sequencer |
| 26 | Prefix: 'max34461' |
| 27 | Addresses scanned: - |
| 28 | Datasheet: http://datasheets.maximintegrated.com/en/ds/MAX34461.pdf |
| 29 | |
| 30 | Author: Guenter Roeck <linux@roeck-us.net> |
| 31 | |
| 32 | |
| 33 | Description |
| 34 | ----------- |
| 35 | |
| 36 | This driver supports hardware montoring for Maxim MAX34440 PMBus 6-Channel |
| 37 | Power-Supply Manager, MAX34441 PMBus 5-Channel Power-Supply Manager |
| 38 | and Intelligent Fan Controller, and MAX34446 PMBus Power-Supply Data Logger. |
| 39 | It also supports the MAX34460 and MAX34461 PMBus Voltage Monitor & Sequencers. |
| 40 | The MAX34460 supports 12 voltage channels, and the MAX34461 supports 16 voltage |
| 41 | channels. |
| 42 | |
| 43 | The driver is a client driver to the core PMBus driver. Please see |
| 44 | Documentation/hwmon/pmbus for details on PMBus client drivers. |
| 45 | |
| 46 | |
| 47 | Usage Notes |
| 48 | ----------- |
| 49 | |
| 50 | This driver does not auto-detect devices. You will have to instantiate the |
| 51 | devices explicitly. Please see Documentation/i2c/instantiating-devices for |
| 52 | details. |
| 53 | |
| 54 | For MAX34446, the value of the currX_crit attribute determines if current or |
| 55 | voltage measurement is enabled for a given channel. Voltage measurement is |
| 56 | enabled if currX_crit is set to 0; current measurement is enabled if the |
| 57 | attribute is set to a positive value. Power measurement is only enabled if |
| 58 | channel 1 (3) is configured for voltage measurement, and channel 2 (4) is |
| 59 | configured for current measurement. |
| 60 | |
| 61 | |
| 62 | Platform data support |
| 63 | --------------------- |
| 64 | |
| 65 | The driver supports standard PMBus driver platform data. |
| 66 | |
| 67 | |
| 68 | Sysfs entries |
| 69 | ------------- |
| 70 | |
| 71 | The following attributes are supported. Limits are read-write; all other |
| 72 | attributes are read-only. |
| 73 | |
| 74 | in[1-6]_label "vout[1-6]". |
| 75 | in[1-6]_input Measured voltage. From READ_VOUT register. |
| 76 | in[1-6]_min Minimum Voltage. From VOUT_UV_WARN_LIMIT register. |
| 77 | in[1-6]_max Maximum voltage. From VOUT_OV_WARN_LIMIT register. |
| 78 | in[1-6]_lcrit Critical minimum Voltage. VOUT_UV_FAULT_LIMIT register. |
| 79 | in[1-6]_crit Critical maximum voltage. From VOUT_OV_FAULT_LIMIT register. |
| 80 | in[1-6]_min_alarm Voltage low alarm. From VOLTAGE_UV_WARNING status. |
| 81 | in[1-6]_max_alarm Voltage high alarm. From VOLTAGE_OV_WARNING status. |
| 82 | in[1-6]_lcrit_alarm Voltage critical low alarm. From VOLTAGE_UV_FAULT status. |
| 83 | in[1-6]_crit_alarm Voltage critical high alarm. From VOLTAGE_OV_FAULT status. |
| 84 | in[1-6]_lowest Historical minimum voltage. |
| 85 | in[1-6]_highest Historical maximum voltage. |
| 86 | in[1-6]_reset_history Write any value to reset history. |
| 87 | |
| 88 | MAX34446 only supports in[1-4]. |
| 89 | |
| 90 | curr[1-6]_label "iout[1-6]". |
| 91 | curr[1-6]_input Measured current. From READ_IOUT register. |
| 92 | curr[1-6]_max Maximum current. From IOUT_OC_WARN_LIMIT register. |
| 93 | curr[1-6]_crit Critical maximum current. From IOUT_OC_FAULT_LIMIT register. |
| 94 | curr[1-6]_max_alarm Current high alarm. From IOUT_OC_WARNING status. |
| 95 | curr[1-6]_crit_alarm Current critical high alarm. From IOUT_OC_FAULT status. |
| 96 | curr[1-4]_average Historical average current (MAX34446 only). |
| 97 | curr[1-6]_highest Historical maximum current. |
| 98 | curr[1-6]_reset_history Write any value to reset history. |
| 99 | |
| 100 | in6 and curr6 attributes only exist for MAX34440. |
| 101 | MAX34446 only supports curr[1-4]. |
| 102 | |
| 103 | power[1,3]_label "pout[1,3]" |
| 104 | power[1,3]_input Measured power. |
| 105 | power[1,3]_average Historical average power. |
| 106 | power[1,3]_highest Historical maximum power. |
| 107 | |
| 108 | Power attributes only exist for MAX34446. |
| 109 | |
| 110 | temp[1-8]_input Measured temperatures. From READ_TEMPERATURE_1 register. |
| 111 | temp1 is the chip's internal temperature. temp2..temp5 |
| 112 | are remote I2C temperature sensors. For MAX34441, temp6 |
| 113 | is a remote thermal-diode sensor. For MAX34440, temp6..8 |
| 114 | are remote I2C temperature sensors. |
| 115 | temp[1-8]_max Maximum temperature. From OT_WARN_LIMIT register. |
| 116 | temp[1-8]_crit Critical high temperature. From OT_FAULT_LIMIT register. |
| 117 | temp[1-8]_max_alarm Temperature high alarm. |
| 118 | temp[1-8]_crit_alarm Temperature critical high alarm. |
| 119 | temp[1-8]_average Historical average temperature (MAX34446 only). |
| 120 | temp[1-8]_highest Historical maximum temperature. |
| 121 | temp[1-8]_reset_history Write any value to reset history. |
| 122 | |
| 123 | temp7 and temp8 attributes only exist for MAX34440. |
| 124 | MAX34446 only supports temp[1-3]. |
| 125 | |
| 126 | MAX34460 supports attribute groups in[1-12] and temp[1-5]. |
| 127 | MAX34461 supports attribute groups in[1-16] and temp[1-5]. |