Guenter Roeck | 200855e | 2011-07-29 22:21:53 -0700 | [diff] [blame] | 1 | Kernel driver zl6100 |
| 2 | ==================== |
| 3 | |
| 4 | Supported chips: |
Guenter Roeck | 443830f | 2011-10-01 17:35:44 -0700 | [diff] [blame] | 5 | |
Erik Rosen | 6e954d2 | 2021-04-23 17:33:29 +0200 | [diff] [blame] | 6 | * Renesas / Intersil / Zilker Labs ZL2004 |
Mauro Carvalho Chehab | 1f234ff | 2019-04-17 06:46:26 -0300 | [diff] [blame] | 7 | |
| 8 | Prefix: 'zl2004' |
| 9 | |
| 10 | Addresses scanned: - |
| 11 | |
Erik Rosen | 6e954d2 | 2021-04-23 17:33:29 +0200 | [diff] [blame] | 12 | Datasheet: https://www.renesas.com/us/en/document/dst/zl2004-datasheet.pdf |
Mauro Carvalho Chehab | 1f234ff | 2019-04-17 06:46:26 -0300 | [diff] [blame] | 13 | |
Erik Rosen | 6e954d2 | 2021-04-23 17:33:29 +0200 | [diff] [blame] | 14 | * Renesas / Intersil / Zilker Labs ZL2005 |
Mauro Carvalho Chehab | 1f234ff | 2019-04-17 06:46:26 -0300 | [diff] [blame] | 15 | |
| 16 | Prefix: 'zl2005' |
| 17 | |
| 18 | Addresses scanned: - |
| 19 | |
Erik Rosen | 6e954d2 | 2021-04-23 17:33:29 +0200 | [diff] [blame] | 20 | Datasheet: https://www.renesas.com/us/en/document/dst/zl2005-datasheet.pdf |
Mauro Carvalho Chehab | 1f234ff | 2019-04-17 06:46:26 -0300 | [diff] [blame] | 21 | |
Erik Rosen | 6e954d2 | 2021-04-23 17:33:29 +0200 | [diff] [blame] | 22 | * Renesas / Intersil / Zilker Labs ZL2006 |
Mauro Carvalho Chehab | 1f234ff | 2019-04-17 06:46:26 -0300 | [diff] [blame] | 23 | |
| 24 | Prefix: 'zl2006' |
| 25 | |
| 26 | Addresses scanned: - |
| 27 | |
Erik Rosen | 6e954d2 | 2021-04-23 17:33:29 +0200 | [diff] [blame] | 28 | Datasheet: https://www.renesas.com/us/en/document/dst/zl2006-datasheet.pdf |
Mauro Carvalho Chehab | 1f234ff | 2019-04-17 06:46:26 -0300 | [diff] [blame] | 29 | |
Erik Rosen | 6e954d2 | 2021-04-23 17:33:29 +0200 | [diff] [blame] | 30 | * Renesas / Intersil / Zilker Labs ZL2008 |
Mauro Carvalho Chehab | 1f234ff | 2019-04-17 06:46:26 -0300 | [diff] [blame] | 31 | |
| 32 | Prefix: 'zl2008' |
| 33 | |
| 34 | Addresses scanned: - |
| 35 | |
Erik Rosen | 6e954d2 | 2021-04-23 17:33:29 +0200 | [diff] [blame] | 36 | Datasheet: https://www.renesas.com/us/en/document/dst/zl2008-datasheet.pdf |
Mauro Carvalho Chehab | 1f234ff | 2019-04-17 06:46:26 -0300 | [diff] [blame] | 37 | |
Erik Rosen | 6e954d2 | 2021-04-23 17:33:29 +0200 | [diff] [blame] | 38 | * Renesas / Intersil / Zilker Labs ZL2105 |
Mauro Carvalho Chehab | 1f234ff | 2019-04-17 06:46:26 -0300 | [diff] [blame] | 39 | |
| 40 | Prefix: 'zl2105' |
| 41 | |
| 42 | Addresses scanned: - |
| 43 | |
Erik Rosen | 6e954d2 | 2021-04-23 17:33:29 +0200 | [diff] [blame] | 44 | Datasheet: https://www.renesas.com/us/en/document/dst/zl2105-datasheet.pdf |
Mauro Carvalho Chehab | 1f234ff | 2019-04-17 06:46:26 -0300 | [diff] [blame] | 45 | |
Erik Rosen | 6e954d2 | 2021-04-23 17:33:29 +0200 | [diff] [blame] | 46 | * Renesas / Intersil / Zilker Labs ZL2106 |
Mauro Carvalho Chehab | 1f234ff | 2019-04-17 06:46:26 -0300 | [diff] [blame] | 47 | |
| 48 | Prefix: 'zl2106' |
| 49 | |
| 50 | Addresses scanned: - |
| 51 | |
Erik Rosen | 6e954d2 | 2021-04-23 17:33:29 +0200 | [diff] [blame] | 52 | Datasheet: https://www.renesas.com/us/en/document/dst/zl2106-datasheet.pdf |
Mauro Carvalho Chehab | 1f234ff | 2019-04-17 06:46:26 -0300 | [diff] [blame] | 53 | |
Erik Rosen | 6e954d2 | 2021-04-23 17:33:29 +0200 | [diff] [blame] | 54 | * Renesas / Intersil / Zilker Labs ZL6100 |
Mauro Carvalho Chehab | 1f234ff | 2019-04-17 06:46:26 -0300 | [diff] [blame] | 55 | |
| 56 | Prefix: 'zl6100' |
| 57 | |
| 58 | Addresses scanned: - |
| 59 | |
Erik Rosen | 6e954d2 | 2021-04-23 17:33:29 +0200 | [diff] [blame] | 60 | Datasheet: https://www.renesas.com/us/en/document/dst/zl6100-datasheet.pdf |
Mauro Carvalho Chehab | 1f234ff | 2019-04-17 06:46:26 -0300 | [diff] [blame] | 61 | |
Erik Rosen | 6e954d2 | 2021-04-23 17:33:29 +0200 | [diff] [blame] | 62 | * Renesas / Intersil / Zilker Labs ZL6105 |
Mauro Carvalho Chehab | 1f234ff | 2019-04-17 06:46:26 -0300 | [diff] [blame] | 63 | |
| 64 | Prefix: 'zl6105' |
| 65 | |
| 66 | Addresses scanned: - |
| 67 | |
Erik Rosen | 6e954d2 | 2021-04-23 17:33:29 +0200 | [diff] [blame] | 68 | Datasheet: https://www.renesas.com/us/en/document/dst/zl6105-datasheet.pdf |
Mauro Carvalho Chehab | 1f234ff | 2019-04-17 06:46:26 -0300 | [diff] [blame] | 69 | |
Erik Rosen | 6e954d2 | 2021-04-23 17:33:29 +0200 | [diff] [blame] | 70 | * Renesas / Intersil / Zilker Labs ZL8802 |
| 71 | |
| 72 | Prefix: 'zl8802' |
| 73 | |
| 74 | Addresses scanned: - |
| 75 | |
| 76 | Datasheet: https://www.renesas.com/us/en/document/dst/zl8802-datasheet |
| 77 | |
| 78 | * Renesas / Intersil / Zilker Labs ZL9101M |
Mauro Carvalho Chehab | 1f234ff | 2019-04-17 06:46:26 -0300 | [diff] [blame] | 79 | |
| 80 | Prefix: 'zl9101' |
| 81 | |
| 82 | Addresses scanned: - |
| 83 | |
Erik Rosen | 6e954d2 | 2021-04-23 17:33:29 +0200 | [diff] [blame] | 84 | Datasheet: https://www.renesas.com/us/en/document/dst/zl9101m-datasheet |
Mauro Carvalho Chehab | 1f234ff | 2019-04-17 06:46:26 -0300 | [diff] [blame] | 85 | |
Erik Rosen | 6e954d2 | 2021-04-23 17:33:29 +0200 | [diff] [blame] | 86 | * Renesas / Intersil / Zilker Labs ZL9117M |
Mauro Carvalho Chehab | 1f234ff | 2019-04-17 06:46:26 -0300 | [diff] [blame] | 87 | |
| 88 | Prefix: 'zl9117' |
| 89 | |
| 90 | Addresses scanned: - |
| 91 | |
Erik Rosen | 6e954d2 | 2021-04-23 17:33:29 +0200 | [diff] [blame] | 92 | Datasheet: https://www.renesas.com/us/en/document/dst/zl9117m-datasheet |
Mauro Carvalho Chehab | 1f234ff | 2019-04-17 06:46:26 -0300 | [diff] [blame] | 93 | |
Erik Rosen | 6e954d2 | 2021-04-23 17:33:29 +0200 | [diff] [blame] | 94 | * Renesas / Intersil / Zilker Labs ZLS1003, ZLS4009 |
| 95 | |
| 96 | Prefix: 'zls1003', zls4009 |
| 97 | |
| 98 | Addresses scanned: - |
| 99 | |
| 100 | Datasheet: Not published |
| 101 | |
| 102 | * Flex BMR450, BMR451 |
Mauro Carvalho Chehab | 1f234ff | 2019-04-17 06:46:26 -0300 | [diff] [blame] | 103 | |
| 104 | Prefix: 'bmr450', 'bmr451' |
| 105 | |
| 106 | Addresses scanned: - |
| 107 | |
| 108 | Datasheet: |
| 109 | |
Erik Rosen | 6e954d2 | 2021-04-23 17:33:29 +0200 | [diff] [blame] | 110 | https://flexpowermodules.com/resources/fpm-techspec-bmr450-digital-pol-regulators-20a |
Mauro Carvalho Chehab | 1f234ff | 2019-04-17 06:46:26 -0300 | [diff] [blame] | 111 | |
Erik Rosen | 6e954d2 | 2021-04-23 17:33:29 +0200 | [diff] [blame] | 112 | * Flex BMR462, BMR463, BMR464 |
Mauro Carvalho Chehab | 1f234ff | 2019-04-17 06:46:26 -0300 | [diff] [blame] | 113 | |
| 114 | Prefixes: 'bmr462', 'bmr463', 'bmr464' |
| 115 | |
| 116 | Addresses scanned: - |
| 117 | |
Erik Rosen | 6e954d2 | 2021-04-23 17:33:29 +0200 | [diff] [blame] | 118 | Datasheet: https://flexpowermodules.com/resources/fpm-techspec-bmr462 |
Mauro Carvalho Chehab | 1f234ff | 2019-04-17 06:46:26 -0300 | [diff] [blame] | 119 | |
Erik Rosen | 6e954d2 | 2021-04-23 17:33:29 +0200 | [diff] [blame] | 120 | * Flex BMR465, BMR467 |
| 121 | |
| 122 | Prefixes: 'bmr465', 'bmr467' |
| 123 | |
| 124 | Addresses scanned: - |
| 125 | |
| 126 | Datasheet: https://flexpowermodules.com/resources/fpm-techspec-bmr465-digital-pol |
| 127 | |
| 128 | * Flex BMR466 |
| 129 | |
| 130 | Prefixes: 'bmr466' |
| 131 | |
| 132 | Addresses scanned: - |
| 133 | |
| 134 | Datasheet: https://flexpowermodules.com/resources/fpm-techspec-bmr466-8x12 |
| 135 | |
| 136 | * Flex BMR469 |
| 137 | |
| 138 | Prefixes: 'bmr469' |
| 139 | |
| 140 | Addresses scanned: - |
| 141 | |
| 142 | Datasheet: https://flexpowermodules.com/resources/fpm-techspec-bmr4696001 |
Guenter Roeck | 200855e | 2011-07-29 22:21:53 -0700 | [diff] [blame] | 143 | |
Guenter Roeck | e3333e5 | 2013-02-20 20:58:42 -0800 | [diff] [blame] | 144 | Author: Guenter Roeck <linux@roeck-us.net> |
Guenter Roeck | 200855e | 2011-07-29 22:21:53 -0700 | [diff] [blame] | 145 | |
| 146 | |
| 147 | Description |
| 148 | ----------- |
| 149 | |
Erik Rosen | 6e954d2 | 2021-04-23 17:33:29 +0200 | [diff] [blame] | 150 | This driver supports hardware monitoring for Renesas / Intersil / Zilker Labs |
| 151 | ZL6100 and compatible digital DC-DC controllers. |
Guenter Roeck | 200855e | 2011-07-29 22:21:53 -0700 | [diff] [blame] | 152 | |
| 153 | The driver is a client driver to the core PMBus driver. Please see |
Mauro Carvalho Chehab | 7ebd8b66 | 2019-04-17 06:46:29 -0300 | [diff] [blame] | 154 | Documentation/hwmon/pmbus.rst and Documentation.hwmon/pmbus-core for details |
Guenter Roeck | 200855e | 2011-07-29 22:21:53 -0700 | [diff] [blame] | 155 | on PMBus client drivers. |
| 156 | |
| 157 | |
| 158 | Usage Notes |
| 159 | ----------- |
| 160 | |
| 161 | This driver does not auto-detect devices. You will have to instantiate the |
Mauro Carvalho Chehab | ccf988b | 2019-07-26 09:51:16 -0300 | [diff] [blame] | 162 | devices explicitly. Please see Documentation/i2c/instantiating-devices.rst for |
Guenter Roeck | 200855e | 2011-07-29 22:21:53 -0700 | [diff] [blame] | 163 | details. |
| 164 | |
Mauro Carvalho Chehab | 1f234ff | 2019-04-17 06:46:26 -0300 | [diff] [blame] | 165 | .. warning:: |
| 166 | |
| 167 | Do not access chip registers using the i2cdump command, and do not use |
| 168 | any of the i2ctools commands on a command register used to save and restore |
| 169 | configuration data (0x11, 0x12, 0x15, 0x16, and 0xf4). The chips supported by |
| 170 | this driver interpret any access to those command registers (including read |
| 171 | commands) as request to execute the command in question. Unless write accesses |
| 172 | to those registers are protected, this may result in power loss, board resets, |
| 173 | and/or Flash corruption. Worst case, your board may turn into a brick. |
Guenter Roeck | 200855e | 2011-07-29 22:21:53 -0700 | [diff] [blame] | 174 | |
| 175 | |
| 176 | Platform data support |
| 177 | --------------------- |
| 178 | |
| 179 | The driver supports standard PMBus driver platform data. |
| 180 | |
| 181 | |
| 182 | Module parameters |
| 183 | ----------------- |
| 184 | |
| 185 | delay |
| 186 | ----- |
| 187 | |
Erik Rosen | 6e954d2 | 2021-04-23 17:33:29 +0200 | [diff] [blame] | 188 | Renesas/Intersil/Zilker Labs DC-DC controllers require a minimum interval |
| 189 | between I2C bus accesses. According to Intersil, the minimum interval is 2 ms, |
| 190 | though 1 ms appears to be sufficient and has not caused any problems in testing. |
| 191 | The problem is known to affect all currently supported chips. For manual override, |
| 192 | the driver provides a writeable module parameter, 'delay', which can be used |
| 193 | to set the interval to a value between 0 and 65,535 microseconds. |
Guenter Roeck | 200855e | 2011-07-29 22:21:53 -0700 | [diff] [blame] | 194 | |
| 195 | |
| 196 | Sysfs entries |
| 197 | ------------- |
| 198 | |
| 199 | The following attributes are supported. Limits are read-write; all other |
| 200 | attributes are read-only. |
| 201 | |
Mauro Carvalho Chehab | 1f234ff | 2019-04-17 06:46:26 -0300 | [diff] [blame] | 202 | ======================= ======================================================== |
Guenter Roeck | 200855e | 2011-07-29 22:21:53 -0700 | [diff] [blame] | 203 | in1_label "vin" |
| 204 | in1_input Measured input voltage. |
| 205 | in1_min Minimum input voltage. |
| 206 | in1_max Maximum input voltage. |
Masanari Iida | 40e4712 | 2012-03-04 23:16:11 +0900 | [diff] [blame] | 207 | in1_lcrit Critical minimum input voltage. |
Guenter Roeck | 200855e | 2011-07-29 22:21:53 -0700 | [diff] [blame] | 208 | in1_crit Critical maximum input voltage. |
| 209 | in1_min_alarm Input voltage low alarm. |
| 210 | in1_max_alarm Input voltage high alarm. |
| 211 | in1_lcrit_alarm Input voltage critical low alarm. |
| 212 | in1_crit_alarm Input voltage critical high alarm. |
| 213 | |
Guenter Roeck | 1640eae | 2012-03-07 03:54:50 -0800 | [diff] [blame] | 214 | in2_label "vmon" |
| 215 | in2_input Measured voltage on VMON (ZL2004) or VDRV (ZL9101M, |
| 216 | ZL9117M) pin. Reported voltage is 16x the voltage on the |
| 217 | pin (adjusted internally by the chip). |
Masanari Iida | 1754e4c | 2013-04-13 01:22:11 +0900 | [diff] [blame] | 218 | in2_lcrit Critical minimum VMON/VDRV Voltage. |
Guenter Roeck | 1640eae | 2012-03-07 03:54:50 -0800 | [diff] [blame] | 219 | in2_crit Critical maximum VMON/VDRV voltage. |
| 220 | in2_lcrit_alarm VMON/VDRV voltage critical low alarm. |
| 221 | in2_crit_alarm VMON/VDRV voltage critical high alarm. |
| 222 | |
Erik Rosen | 6e954d2 | 2021-04-23 17:33:29 +0200 | [diff] [blame] | 223 | vmon attributes are supported on ZL2004, ZL8802, |
| 224 | ZL9101M, ZL9117M and ZLS4009 only. |
Guenter Roeck | 1640eae | 2012-03-07 03:54:50 -0800 | [diff] [blame] | 225 | |
Erik Rosen | 6e954d2 | 2021-04-23 17:33:29 +0200 | [diff] [blame] | 226 | inX_label "vout[12]" |
Guenter Roeck | 1640eae | 2012-03-07 03:54:50 -0800 | [diff] [blame] | 227 | inX_input Measured output voltage. |
| 228 | inX_lcrit Critical minimum output Voltage. |
| 229 | inX_crit Critical maximum output voltage. |
| 230 | inX_lcrit_alarm Critical output voltage critical low alarm. |
| 231 | inX_crit_alarm Critical output voltage critical high alarm. |
| 232 | |
Erik Rosen | 6e954d2 | 2021-04-23 17:33:29 +0200 | [diff] [blame] | 233 | X is 3 for ZL2004, ZL9101M, and ZL9117M, |
| 234 | 3, 4 for ZL8802 and 2 otherwise. |
Guenter Roeck | 200855e | 2011-07-29 22:21:53 -0700 | [diff] [blame] | 235 | |
Erik Rosen | 6e954d2 | 2021-04-23 17:33:29 +0200 | [diff] [blame] | 236 | curr1_label "iin" |
| 237 | curr1_input Measured input current. |
| 238 | |
| 239 | iin attributes are supported on ZL8802 only |
| 240 | |
| 241 | currY_label "iout[12]" |
| 242 | currY_input Measured output current. |
| 243 | currY_lcrit Critical minimum output current. |
| 244 | currY_crit Critical maximum output current. |
| 245 | currY_lcrit_alarm Output current critical low alarm. |
| 246 | currY_crit_alarm Output current critical high alarm. |
| 247 | |
| 248 | Y is 2, 3 for ZL8802, 1 otherwise |
Guenter Roeck | 200855e | 2011-07-29 22:21:53 -0700 | [diff] [blame] | 249 | |
| 250 | temp[12]_input Measured temperature. |
| 251 | temp[12]_min Minimum temperature. |
| 252 | temp[12]_max Maximum temperature. |
| 253 | temp[12]_lcrit Critical low temperature. |
| 254 | temp[12]_crit Critical high temperature. |
| 255 | temp[12]_min_alarm Chip temperature low alarm. |
| 256 | temp[12]_max_alarm Chip temperature high alarm. |
| 257 | temp[12]_lcrit_alarm Chip temperature critical low alarm. |
| 258 | temp[12]_crit_alarm Chip temperature critical high alarm. |
Mauro Carvalho Chehab | 1f234ff | 2019-04-17 06:46:26 -0300 | [diff] [blame] | 259 | ======================= ======================================================== |