Guenter Roeck | 44f5a40 | 2010-06-28 14:29:03 -0700 | [diff] [blame] | 1 | Kernel driver pmbus |
Mauro Carvalho Chehab | 1f234ff | 2019-04-17 06:46:26 -0300 | [diff] [blame] | 2 | =================== |
Guenter Roeck | 44f5a40 | 2010-06-28 14:29:03 -0700 | [diff] [blame] | 3 | |
| 4 | Supported chips: |
Mauro Carvalho Chehab | 1f234ff | 2019-04-17 06:46:26 -0300 | [diff] [blame] | 5 | |
Erik Rosen | ea541c1 | 2021-05-07 21:40:23 +0200 | [diff] [blame] | 6 | * Flex BMR310, BMR453, BMR454, BMR456, BMR457, BMR458, BMR480, |
| 7 | BMR490, BMR491, BMR492 |
Mauro Carvalho Chehab | 1f234ff | 2019-04-17 06:46:26 -0300 | [diff] [blame] | 8 | |
Erik Rosen | ea541c1 | 2021-05-07 21:40:23 +0200 | [diff] [blame] | 9 | Prefixes: 'bmr310', 'bmr453', 'bmr454', 'bmr456', 'bmr457', 'bmr458', 'bmr480', |
| 10 | 'bmr490', 'bmr491', 'bmr492' |
Mauro Carvalho Chehab | 1f234ff | 2019-04-17 06:46:26 -0300 | [diff] [blame] | 11 | |
Guenter Roeck | 44f5a40 | 2010-06-28 14:29:03 -0700 | [diff] [blame] | 12 | Addresses scanned: - |
Mauro Carvalho Chehab | 1f234ff | 2019-04-17 06:46:26 -0300 | [diff] [blame] | 13 | |
Erik Rosen | ea541c1 | 2021-05-07 21:40:23 +0200 | [diff] [blame] | 14 | Datasheets: |
Mauro Carvalho Chehab | 1f234ff | 2019-04-17 06:46:26 -0300 | [diff] [blame] | 15 | |
Erik Rosen | ea541c1 | 2021-05-07 21:40:23 +0200 | [diff] [blame] | 16 | https://flexpowermodules.com/products |
| 17 | |
Mauro Carvalho Chehab | 1f234ff | 2019-04-17 06:46:26 -0300 | [diff] [blame] | 18 | |
Guenter Roeck | e0455e3 | 2011-06-25 15:13:44 -0700 | [diff] [blame] | 19 | * ON Semiconductor ADP4000, NCP4200, NCP4208 |
Mauro Carvalho Chehab | 1f234ff | 2019-04-17 06:46:26 -0300 | [diff] [blame] | 20 | |
Guenter Roeck | e0455e3 | 2011-06-25 15:13:44 -0700 | [diff] [blame] | 21 | Prefixes: 'adp4000', 'ncp4200', 'ncp4208' |
Mauro Carvalho Chehab | 1f234ff | 2019-04-17 06:46:26 -0300 | [diff] [blame] | 22 | |
Guenter Roeck | e0455e3 | 2011-06-25 15:13:44 -0700 | [diff] [blame] | 23 | Addresses scanned: - |
Mauro Carvalho Chehab | 1f234ff | 2019-04-17 06:46:26 -0300 | [diff] [blame] | 24 | |
Guenter Roeck | e0455e3 | 2011-06-25 15:13:44 -0700 | [diff] [blame] | 25 | Datasheets: |
Mauro Carvalho Chehab | 1f234ff | 2019-04-17 06:46:26 -0300 | [diff] [blame] | 26 | |
Alexander A. Klimov | f12d634 | 2020-07-19 19:04:20 +0200 | [diff] [blame] | 27 | https://www.onsemi.com/pub_link/Collateral/ADP4000-D.PDF |
Mauro Carvalho Chehab | 1f234ff | 2019-04-17 06:46:26 -0300 | [diff] [blame] | 28 | |
Alexander A. Klimov | f12d634 | 2020-07-19 19:04:20 +0200 | [diff] [blame] | 29 | https://www.onsemi.com/pub_link/Collateral/NCP4200-D.PDF |
Mauro Carvalho Chehab | 1f234ff | 2019-04-17 06:46:26 -0300 | [diff] [blame] | 30 | |
Alexander A. Klimov | f12d634 | 2020-07-19 19:04:20 +0200 | [diff] [blame] | 31 | https://www.onsemi.com/pub_link/Collateral/JUNE%202009-%20REV.%200.PDF |
Mauro Carvalho Chehab | 1f234ff | 2019-04-17 06:46:26 -0300 | [diff] [blame] | 32 | |
Guenter Roeck | bc365a7 | 2011-09-15 10:43:40 -0700 | [diff] [blame] | 33 | * Lineage Power |
Mauro Carvalho Chehab | 1f234ff | 2019-04-17 06:46:26 -0300 | [diff] [blame] | 34 | |
Guenter Roeck | 2163340 | 2012-02-28 11:00:54 -0800 | [diff] [blame] | 35 | Prefixes: 'mdt040', 'pdt003', 'pdt006', 'pdt012', 'udt020' |
Mauro Carvalho Chehab | 1f234ff | 2019-04-17 06:46:26 -0300 | [diff] [blame] | 36 | |
Guenter Roeck | bc365a7 | 2011-09-15 10:43:40 -0700 | [diff] [blame] | 37 | Addresses scanned: - |
Mauro Carvalho Chehab | 1f234ff | 2019-04-17 06:46:26 -0300 | [diff] [blame] | 38 | |
Guenter Roeck | bc365a7 | 2011-09-15 10:43:40 -0700 | [diff] [blame] | 39 | Datasheets: |
Mauro Carvalho Chehab | 1f234ff | 2019-04-17 06:46:26 -0300 | [diff] [blame] | 40 | |
Guenter Roeck | bc365a7 | 2011-09-15 10:43:40 -0700 | [diff] [blame] | 41 | http://www.lineagepower.com/oem/pdf/PDT003A0X.pdf |
Mauro Carvalho Chehab | 1f234ff | 2019-04-17 06:46:26 -0300 | [diff] [blame] | 42 | |
Guenter Roeck | bc365a7 | 2011-09-15 10:43:40 -0700 | [diff] [blame] | 43 | http://www.lineagepower.com/oem/pdf/PDT006A0X.pdf |
Mauro Carvalho Chehab | 1f234ff | 2019-04-17 06:46:26 -0300 | [diff] [blame] | 44 | |
Guenter Roeck | bc365a7 | 2011-09-15 10:43:40 -0700 | [diff] [blame] | 45 | http://www.lineagepower.com/oem/pdf/PDT012A0X.pdf |
Mauro Carvalho Chehab | 1f234ff | 2019-04-17 06:46:26 -0300 | [diff] [blame] | 46 | |
Guenter Roeck | bc365a7 | 2011-09-15 10:43:40 -0700 | [diff] [blame] | 47 | http://www.lineagepower.com/oem/pdf/UDT020A0X.pdf |
Mauro Carvalho Chehab | 1f234ff | 2019-04-17 06:46:26 -0300 | [diff] [blame] | 48 | |
Guenter Roeck | 2163340 | 2012-02-28 11:00:54 -0800 | [diff] [blame] | 49 | http://www.lineagepower.com/oem/pdf/MDT040A0X.pdf |
Mauro Carvalho Chehab | 1f234ff | 2019-04-17 06:46:26 -0300 | [diff] [blame] | 50 | |
Guenter Roeck | cfca378 | 2015-08-07 20:55:59 -0700 | [diff] [blame] | 51 | * Texas Instruments TPS40400, TPS544B20, TPS544B25, TPS544C20, TPS544C25 |
Mauro Carvalho Chehab | 1f234ff | 2019-04-17 06:46:26 -0300 | [diff] [blame] | 52 | |
Guenter Roeck | cfca378 | 2015-08-07 20:55:59 -0700 | [diff] [blame] | 53 | Prefixes: 'tps40400', 'tps544b20', 'tps544b25', 'tps544c20', 'tps544c25' |
Mauro Carvalho Chehab | 1f234ff | 2019-04-17 06:46:26 -0300 | [diff] [blame] | 54 | |
Guenter Roeck | c5f35c9 | 2012-02-28 10:24:54 -0800 | [diff] [blame] | 55 | Addresses scanned: - |
Mauro Carvalho Chehab | 1f234ff | 2019-04-17 06:46:26 -0300 | [diff] [blame] | 56 | |
Guenter Roeck | c5f35c9 | 2012-02-28 10:24:54 -0800 | [diff] [blame] | 57 | Datasheets: |
Mauro Carvalho Chehab | 1f234ff | 2019-04-17 06:46:26 -0300 | [diff] [blame] | 58 | |
Alexander A. Klimov | f12d634 | 2020-07-19 19:04:20 +0200 | [diff] [blame] | 59 | https://www.ti.com/lit/gpn/tps40400 |
Mauro Carvalho Chehab | 1f234ff | 2019-04-17 06:46:26 -0300 | [diff] [blame] | 60 | |
Alexander A. Klimov | f12d634 | 2020-07-19 19:04:20 +0200 | [diff] [blame] | 61 | https://www.ti.com/lit/gpn/tps544b20 |
Mauro Carvalho Chehab | 1f234ff | 2019-04-17 06:46:26 -0300 | [diff] [blame] | 62 | |
Alexander A. Klimov | f12d634 | 2020-07-19 19:04:20 +0200 | [diff] [blame] | 63 | https://www.ti.com/lit/gpn/tps544b25 |
Mauro Carvalho Chehab | 1f234ff | 2019-04-17 06:46:26 -0300 | [diff] [blame] | 64 | |
Alexander A. Klimov | f12d634 | 2020-07-19 19:04:20 +0200 | [diff] [blame] | 65 | https://www.ti.com/lit/gpn/tps544c20 |
Mauro Carvalho Chehab | 1f234ff | 2019-04-17 06:46:26 -0300 | [diff] [blame] | 66 | |
Alexander A. Klimov | f12d634 | 2020-07-19 19:04:20 +0200 | [diff] [blame] | 67 | https://www.ti.com/lit/gpn/tps544c25 |
Mauro Carvalho Chehab | 1f234ff | 2019-04-17 06:46:26 -0300 | [diff] [blame] | 68 | |
Guenter Roeck | 1a1ea12 | 2019-12-13 13:36:36 -0800 | [diff] [blame] | 69 | * Maxim MAX20796 |
| 70 | |
| 71 | Prefix: 'max20796' |
| 72 | |
| 73 | Addresses scanned: - |
| 74 | |
| 75 | Datasheet: |
| 76 | |
| 77 | Not published |
| 78 | |
Guenter Roeck | 44f5a40 | 2010-06-28 14:29:03 -0700 | [diff] [blame] | 79 | * Generic PMBus devices |
Mauro Carvalho Chehab | 1f234ff | 2019-04-17 06:46:26 -0300 | [diff] [blame] | 80 | |
Guenter Roeck | 44f5a40 | 2010-06-28 14:29:03 -0700 | [diff] [blame] | 81 | Prefix: 'pmbus' |
Mauro Carvalho Chehab | 1f234ff | 2019-04-17 06:46:26 -0300 | [diff] [blame] | 82 | |
Guenter Roeck | 44f5a40 | 2010-06-28 14:29:03 -0700 | [diff] [blame] | 83 | Addresses scanned: - |
Mauro Carvalho Chehab | 1f234ff | 2019-04-17 06:46:26 -0300 | [diff] [blame] | 84 | |
Guenter Roeck | 44f5a40 | 2010-06-28 14:29:03 -0700 | [diff] [blame] | 85 | Datasheet: n.a. |
| 86 | |
Mauro Carvalho Chehab | 1f234ff | 2019-04-17 06:46:26 -0300 | [diff] [blame] | 87 | |
Guenter Roeck | e3333e5 | 2013-02-20 20:58:42 -0800 | [diff] [blame] | 88 | Author: Guenter Roeck <linux@roeck-us.net> |
Guenter Roeck | 44f5a40 | 2010-06-28 14:29:03 -0700 | [diff] [blame] | 89 | |
| 90 | |
| 91 | Description |
| 92 | ----------- |
| 93 | |
Masanari Iida | 92417da | 2016-02-28 12:57:57 +0900 | [diff] [blame] | 94 | This driver supports hardware monitoring for various PMBus compliant devices. |
Guenter Roeck | 44f5a40 | 2010-06-28 14:29:03 -0700 | [diff] [blame] | 95 | It supports voltage, current, power, and temperature sensors as supported |
| 96 | by the device. |
| 97 | |
| 98 | Each monitored channel has its own high and low limits, plus a critical |
| 99 | limit. |
| 100 | |
| 101 | Fan support will be added in a later version of this driver. |
| 102 | |
| 103 | |
| 104 | Usage Notes |
| 105 | ----------- |
| 106 | |
| 107 | This driver does not probe for PMBus devices, since there is no register |
| 108 | which can be safely used to identify the chip (The MFG_ID register is not |
| 109 | supported by all chips), and since there is no well defined address range for |
| 110 | PMBus devices. You will have to instantiate the devices explicitly. |
| 111 | |
| 112 | Example: the following will load the driver for an LTC2978 at address 0x60 |
Mauro Carvalho Chehab | 1f234ff | 2019-04-17 06:46:26 -0300 | [diff] [blame] | 113 | on I2C bus #1:: |
| 114 | |
| 115 | $ modprobe pmbus |
| 116 | $ echo ltc2978 0x60 > /sys/bus/i2c/devices/i2c-1/new_device |
Guenter Roeck | 44f5a40 | 2010-06-28 14:29:03 -0700 | [diff] [blame] | 117 | |
| 118 | |
| 119 | Platform data support |
| 120 | --------------------- |
| 121 | |
| 122 | Support for additional PMBus chips can be added by defining chip parameters in |
| 123 | a new chip specific driver file. For example, (untested) code to add support for |
Mauro Carvalho Chehab | 1f234ff | 2019-04-17 06:46:26 -0300 | [diff] [blame] | 124 | Emerson DS1200 power modules might look as follows:: |
Guenter Roeck | 44f5a40 | 2010-06-28 14:29:03 -0700 | [diff] [blame] | 125 | |
Mauro Carvalho Chehab | 1f234ff | 2019-04-17 06:46:26 -0300 | [diff] [blame] | 126 | static struct pmbus_driver_info ds1200_info = { |
Guenter Roeck | 44f5a40 | 2010-06-28 14:29:03 -0700 | [diff] [blame] | 127 | .pages = 1, |
| 128 | /* Note: All other sensors are in linear mode */ |
| 129 | .direct[PSC_VOLTAGE_OUT] = true, |
| 130 | .direct[PSC_TEMPERATURE] = true, |
| 131 | .direct[PSC_CURRENT_OUT] = true, |
| 132 | .m[PSC_VOLTAGE_IN] = 1, |
| 133 | .b[PSC_VOLTAGE_IN] = 0, |
| 134 | .R[PSC_VOLTAGE_IN] = 3, |
| 135 | .m[PSC_VOLTAGE_OUT] = 1, |
| 136 | .b[PSC_VOLTAGE_OUT] = 0, |
| 137 | .R[PSC_VOLTAGE_OUT] = 3, |
| 138 | .m[PSC_TEMPERATURE] = 1, |
| 139 | .b[PSC_TEMPERATURE] = 0, |
| 140 | .R[PSC_TEMPERATURE] = 3, |
| 141 | .func[0] = PMBUS_HAVE_VIN | PMBUS_HAVE_IIN | PMBUS_HAVE_STATUS_INPUT |
| 142 | | PMBUS_HAVE_VOUT | PMBUS_HAVE_STATUS_VOUT |
| 143 | | PMBUS_HAVE_IOUT | PMBUS_HAVE_STATUS_IOUT |
| 144 | | PMBUS_HAVE_PIN | PMBUS_HAVE_POUT |
| 145 | | PMBUS_HAVE_TEMP | PMBUS_HAVE_STATUS_TEMP |
| 146 | | PMBUS_HAVE_FAN12 | PMBUS_HAVE_STATUS_FAN12, |
Mauro Carvalho Chehab | 1f234ff | 2019-04-17 06:46:26 -0300 | [diff] [blame] | 147 | }; |
Guenter Roeck | 44f5a40 | 2010-06-28 14:29:03 -0700 | [diff] [blame] | 148 | |
Stephen Kitt | dd43193 | 2020-08-08 23:00:04 +0200 | [diff] [blame] | 149 | static int ds1200_probe(struct i2c_client *client) |
Mauro Carvalho Chehab | 1f234ff | 2019-04-17 06:46:26 -0300 | [diff] [blame] | 150 | { |
Stephen Kitt | dd43193 | 2020-08-08 23:00:04 +0200 | [diff] [blame] | 151 | return pmbus_do_probe(client, &ds1200_info); |
Mauro Carvalho Chehab | 1f234ff | 2019-04-17 06:46:26 -0300 | [diff] [blame] | 152 | } |
Guenter Roeck | 44f5a40 | 2010-06-28 14:29:03 -0700 | [diff] [blame] | 153 | |
Mauro Carvalho Chehab | 1f234ff | 2019-04-17 06:46:26 -0300 | [diff] [blame] | 154 | static const struct i2c_device_id ds1200_id[] = { |
Guenter Roeck | 44f5a40 | 2010-06-28 14:29:03 -0700 | [diff] [blame] | 155 | {"ds1200", 0}, |
| 156 | {} |
Mauro Carvalho Chehab | 1f234ff | 2019-04-17 06:46:26 -0300 | [diff] [blame] | 157 | }; |
Guenter Roeck | 44f5a40 | 2010-06-28 14:29:03 -0700 | [diff] [blame] | 158 | |
Mauro Carvalho Chehab | 1f234ff | 2019-04-17 06:46:26 -0300 | [diff] [blame] | 159 | MODULE_DEVICE_TABLE(i2c, ds1200_id); |
Guenter Roeck | 44f5a40 | 2010-06-28 14:29:03 -0700 | [diff] [blame] | 160 | |
Mauro Carvalho Chehab | 1f234ff | 2019-04-17 06:46:26 -0300 | [diff] [blame] | 161 | /* This is the driver that will be inserted */ |
| 162 | static struct i2c_driver ds1200_driver = { |
Guenter Roeck | 44f5a40 | 2010-06-28 14:29:03 -0700 | [diff] [blame] | 163 | .driver = { |
| 164 | .name = "ds1200", |
| 165 | }, |
Stephen Kitt | dd43193 | 2020-08-08 23:00:04 +0200 | [diff] [blame] | 166 | .probe_new = ds1200_probe, |
Guenter Roeck | 44f5a40 | 2010-06-28 14:29:03 -0700 | [diff] [blame] | 167 | .id_table = ds1200_id, |
Mauro Carvalho Chehab | 1f234ff | 2019-04-17 06:46:26 -0300 | [diff] [blame] | 168 | }; |
Guenter Roeck | 44f5a40 | 2010-06-28 14:29:03 -0700 | [diff] [blame] | 169 | |
Mauro Carvalho Chehab | 1f234ff | 2019-04-17 06:46:26 -0300 | [diff] [blame] | 170 | static int __init ds1200_init(void) |
| 171 | { |
Guenter Roeck | 44f5a40 | 2010-06-28 14:29:03 -0700 | [diff] [blame] | 172 | return i2c_add_driver(&ds1200_driver); |
Mauro Carvalho Chehab | 1f234ff | 2019-04-17 06:46:26 -0300 | [diff] [blame] | 173 | } |
Guenter Roeck | 44f5a40 | 2010-06-28 14:29:03 -0700 | [diff] [blame] | 174 | |
Mauro Carvalho Chehab | 1f234ff | 2019-04-17 06:46:26 -0300 | [diff] [blame] | 175 | static void __exit ds1200_exit(void) |
| 176 | { |
Guenter Roeck | 44f5a40 | 2010-06-28 14:29:03 -0700 | [diff] [blame] | 177 | i2c_del_driver(&ds1200_driver); |
Mauro Carvalho Chehab | 1f234ff | 2019-04-17 06:46:26 -0300 | [diff] [blame] | 178 | } |
Guenter Roeck | 44f5a40 | 2010-06-28 14:29:03 -0700 | [diff] [blame] | 179 | |
| 180 | |
| 181 | Sysfs entries |
| 182 | ------------- |
| 183 | |
| 184 | When probing the chip, the driver identifies which PMBus registers are |
| 185 | supported, and determines available sensors from this information. |
Masanari Iida | 02582e9 | 2012-08-22 19:11:26 +0900 | [diff] [blame] | 186 | Attribute files only exist if respective sensors are supported by the chip. |
Guenter Roeck | 44f5a40 | 2010-06-28 14:29:03 -0700 | [diff] [blame] | 187 | Labels are provided to inform the user about the sensor associated with |
| 188 | a given sysfs entry. |
| 189 | |
| 190 | The following attributes are supported. Limits are read-write; all other |
| 191 | attributes are read-only. |
| 192 | |
Mauro Carvalho Chehab | 1f234ff | 2019-04-17 06:46:26 -0300 | [diff] [blame] | 193 | ======================= ======================================================== |
Guenter Roeck | 44f5a40 | 2010-06-28 14:29:03 -0700 | [diff] [blame] | 194 | inX_input Measured voltage. From READ_VIN or READ_VOUT register. |
Lucas De Marchi | 25985ed | 2011-03-30 22:57:33 -0300 | [diff] [blame] | 195 | inX_min Minimum Voltage. |
Guenter Roeck | 44f5a40 | 2010-06-28 14:29:03 -0700 | [diff] [blame] | 196 | From VIN_UV_WARN_LIMIT or VOUT_UV_WARN_LIMIT register. |
| 197 | inX_max Maximum voltage. |
| 198 | From VIN_OV_WARN_LIMIT or VOUT_OV_WARN_LIMIT register. |
Lucas De Marchi | 25985ed | 2011-03-30 22:57:33 -0300 | [diff] [blame] | 199 | inX_lcrit Critical minimum Voltage. |
Guenter Roeck | 44f5a40 | 2010-06-28 14:29:03 -0700 | [diff] [blame] | 200 | From VIN_UV_FAULT_LIMIT or VOUT_UV_FAULT_LIMIT register. |
| 201 | inX_crit Critical maximum voltage. |
| 202 | From VIN_OV_FAULT_LIMIT or VOUT_OV_FAULT_LIMIT register. |
| 203 | inX_min_alarm Voltage low alarm. From VOLTAGE_UV_WARNING status. |
| 204 | inX_max_alarm Voltage high alarm. From VOLTAGE_OV_WARNING status. |
| 205 | inX_lcrit_alarm Voltage critical low alarm. |
| 206 | From VOLTAGE_UV_FAULT status. |
| 207 | inX_crit_alarm Voltage critical high alarm. |
| 208 | From VOLTAGE_OV_FAULT status. |
| 209 | inX_label "vin", "vcap", or "voutY" |
Zbigniew Lukwinski | 787c095 | 2020-07-31 21:37:17 +0200 | [diff] [blame] | 210 | inX_rated_min Minimum rated voltage. |
| 211 | From MFR_VIN_MIN or MFR_VOUT_MIN register. |
| 212 | inX_rated_max Maximum rated voltage. |
| 213 | From MFR_VIN_MAX or MFR_VOUT_MAX register. |
Guenter Roeck | 44f5a40 | 2010-06-28 14:29:03 -0700 | [diff] [blame] | 214 | |
| 215 | currX_input Measured current. From READ_IIN or READ_IOUT register. |
| 216 | currX_max Maximum current. |
| 217 | From IIN_OC_WARN_LIMIT or IOUT_OC_WARN_LIMIT register. |
Lucas De Marchi | 25985ed | 2011-03-30 22:57:33 -0300 | [diff] [blame] | 218 | currX_lcrit Critical minimum output current. |
Guenter Roeck | 44f5a40 | 2010-06-28 14:29:03 -0700 | [diff] [blame] | 219 | From IOUT_UC_FAULT_LIMIT register. |
| 220 | currX_crit Critical maximum current. |
| 221 | From IIN_OC_FAULT_LIMIT or IOUT_OC_FAULT_LIMIT register. |
| 222 | currX_alarm Current high alarm. |
| 223 | From IIN_OC_WARNING or IOUT_OC_WARNING status. |
Guenter Roeck | 180b3d8 | 2011-04-18 09:48:58 -0700 | [diff] [blame] | 224 | currX_max_alarm Current high alarm. |
| 225 | From IIN_OC_WARN_LIMIT or IOUT_OC_WARN_LIMIT status. |
Guenter Roeck | 44f5a40 | 2010-06-28 14:29:03 -0700 | [diff] [blame] | 226 | currX_lcrit_alarm Output current critical low alarm. |
| 227 | From IOUT_UC_FAULT status. |
| 228 | currX_crit_alarm Current critical high alarm. |
| 229 | From IIN_OC_FAULT or IOUT_OC_FAULT status. |
Guenter Roeck | 1635854 | 2020-01-13 15:30:14 -0800 | [diff] [blame] | 230 | currX_label "iin", "iinY", "iinY.Z", "ioutY", or "ioutY.Z", |
| 231 | where Y reflects the page number and Z reflects the |
| 232 | phase. |
Zbigniew Lukwinski | 787c095 | 2020-07-31 21:37:17 +0200 | [diff] [blame] | 233 | currX_rated_max Maximum rated current. |
| 234 | From MFR_IIN_MAX or MFR_IOUT_MAX register. |
Guenter Roeck | 44f5a40 | 2010-06-28 14:29:03 -0700 | [diff] [blame] | 235 | |
| 236 | powerX_input Measured power. From READ_PIN or READ_POUT register. |
| 237 | powerX_cap Output power cap. From POUT_MAX register. |
| 238 | powerX_max Power limit. From PIN_OP_WARN_LIMIT or |
| 239 | POUT_OP_WARN_LIMIT register. |
| 240 | powerX_crit Critical output power limit. |
| 241 | From POUT_OP_FAULT_LIMIT register. |
| 242 | powerX_alarm Power high alarm. |
| 243 | From PIN_OP_WARNING or POUT_OP_WARNING status. |
| 244 | powerX_crit_alarm Output power critical high alarm. |
| 245 | From POUT_OP_FAULT status. |
Guenter Roeck | 1635854 | 2020-01-13 15:30:14 -0800 | [diff] [blame] | 246 | powerX_label "pin", "pinY", "pinY.Z", "poutY", or "poutY.Z", |
| 247 | where Y reflects the page number and Z reflects the |
| 248 | phase. |
Zbigniew Lukwinski | 787c095 | 2020-07-31 21:37:17 +0200 | [diff] [blame] | 249 | powerX_rated_max Maximum rated power. |
| 250 | From MFR_PIN_MAX or MFR_POUT_MAX register. |
Guenter Roeck | 44f5a40 | 2010-06-28 14:29:03 -0700 | [diff] [blame] | 251 | |
Guenter Roeck | 180b3d8 | 2011-04-18 09:48:58 -0700 | [diff] [blame] | 252 | tempX_input Measured temperature. |
Guenter Roeck | 44f5a40 | 2010-06-28 14:29:03 -0700 | [diff] [blame] | 253 | From READ_TEMPERATURE_X register. |
Zbigniew Lukwinski | 787c095 | 2020-07-31 21:37:17 +0200 | [diff] [blame] | 254 | tempX_min Minimum temperature. From UT_WARN_LIMIT register. |
Guenter Roeck | 180b3d8 | 2011-04-18 09:48:58 -0700 | [diff] [blame] | 255 | tempX_max Maximum temperature. From OT_WARN_LIMIT register. |
| 256 | tempX_lcrit Critical low temperature. |
Guenter Roeck | 44f5a40 | 2010-06-28 14:29:03 -0700 | [diff] [blame] | 257 | From UT_FAULT_LIMIT register. |
Guenter Roeck | 180b3d8 | 2011-04-18 09:48:58 -0700 | [diff] [blame] | 258 | tempX_crit Critical high temperature. |
Guenter Roeck | 44f5a40 | 2010-06-28 14:29:03 -0700 | [diff] [blame] | 259 | From OT_FAULT_LIMIT register. |
| 260 | tempX_min_alarm Chip temperature low alarm. Set by comparing |
| 261 | READ_TEMPERATURE_X with UT_WARN_LIMIT if |
| 262 | TEMP_UT_WARNING status is set. |
| 263 | tempX_max_alarm Chip temperature high alarm. Set by comparing |
| 264 | READ_TEMPERATURE_X with OT_WARN_LIMIT if |
| 265 | TEMP_OT_WARNING status is set. |
| 266 | tempX_lcrit_alarm Chip temperature critical low alarm. Set by comparing |
| 267 | READ_TEMPERATURE_X with UT_FAULT_LIMIT if |
| 268 | TEMP_UT_FAULT status is set. |
| 269 | tempX_crit_alarm Chip temperature critical high alarm. Set by comparing |
| 270 | READ_TEMPERATURE_X with OT_FAULT_LIMIT if |
| 271 | TEMP_OT_FAULT status is set. |
Zbigniew Lukwinski | 787c095 | 2020-07-31 21:37:17 +0200 | [diff] [blame] | 272 | tempX_rated_min Minimum rated temperature. |
| 273 | From MFR_TAMBIENT_MIN register. |
| 274 | tempX_rated_max Maximum rated temperature. |
| 275 | From MFR_TAMBIENT_MAX, MFR_MAX_TEMP_1, MFR_MAX_TEMP_2 or |
| 276 | MFR_MAX_TEMP_3 register. |
Mauro Carvalho Chehab | 1f234ff | 2019-04-17 06:46:26 -0300 | [diff] [blame] | 277 | ======================= ======================================================== |