^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1) Kernel driver zl6100
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 2) ====================
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 3)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 4) Supported chips:
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 5)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 6) * Intersil / Zilker Labs ZL2004
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 7)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 8) Prefix: 'zl2004'
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 9)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 10) Addresses scanned: -
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 11)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 12) Datasheet: http://www.intersil.com/data/fn/fn6847.pdf
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 13)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 14) * Intersil / Zilker Labs ZL2005
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 15)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 16) Prefix: 'zl2005'
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 17)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 18) Addresses scanned: -
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 19)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 20) Datasheet: http://www.intersil.com/data/fn/fn6848.pdf
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 21)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 22) * Intersil / Zilker Labs ZL2006
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 23)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 24) Prefix: 'zl2006'
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 25)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 26) Addresses scanned: -
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 27)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 28) Datasheet: http://www.intersil.com/data/fn/fn6850.pdf
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 29)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 30) * Intersil / Zilker Labs ZL2008
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 31)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 32) Prefix: 'zl2008'
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 33)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 34) Addresses scanned: -
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 35)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 36) Datasheet: http://www.intersil.com/data/fn/fn6859.pdf
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 37)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 38) * Intersil / Zilker Labs ZL2105
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 39)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 40) Prefix: 'zl2105'
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 41)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 42) Addresses scanned: -
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 43)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 44) Datasheet: http://www.intersil.com/data/fn/fn6851.pdf
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 45)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 46) * Intersil / Zilker Labs ZL2106
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 47)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 48) Prefix: 'zl2106'
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 49)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 50) Addresses scanned: -
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 51)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 52) Datasheet: http://www.intersil.com/data/fn/fn6852.pdf
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 53)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 54) * Intersil / Zilker Labs ZL6100
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 55)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 56) Prefix: 'zl6100'
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 57)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 58) Addresses scanned: -
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 59)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 60) Datasheet: http://www.intersil.com/data/fn/fn6876.pdf
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 61)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 62) * Intersil / Zilker Labs ZL6105
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 63)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 64) Prefix: 'zl6105'
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 65)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 66) Addresses scanned: -
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 67)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 68) Datasheet: http://www.intersil.com/data/fn/fn6906.pdf
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 69)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 70) * Intersil / Zilker Labs ZL9101M
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 71)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 72) Prefix: 'zl9101'
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 73)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 74) Addresses scanned: -
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 75)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 76) Datasheet: http://www.intersil.com/data/fn/fn7669.pdf
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 77)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 78) * Intersil / Zilker Labs ZL9117M
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 79)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 80) Prefix: 'zl9117'
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 81)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 82) Addresses scanned: -
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 83)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 84) Datasheet: http://www.intersil.com/data/fn/fn7914.pdf
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 85)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 86) * Ericsson BMR450, BMR451
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 87)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 88) Prefix: 'bmr450', 'bmr451'
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 89)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 90) Addresses scanned: -
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 91)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 92) Datasheet:
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 93)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 94) http://archive.ericsson.net/service/internet/picov/get?DocNo=28701-EN/LZT146401
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 95)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 96) * Ericsson BMR462, BMR463, BMR464
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 97)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 98) Prefixes: 'bmr462', 'bmr463', 'bmr464'
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 99)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 100) Addresses scanned: -
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 101)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 102) Datasheet:
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 103)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 104) http://archive.ericsson.net/service/internet/picov/get?DocNo=28701-EN/LZT146256
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 105)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 106) Author: Guenter Roeck <linux@roeck-us.net>
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 107)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 108)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 109) Description
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 110) -----------
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 111)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 112) This driver supports hardware monitoring for Intersil / Zilker Labs ZL6100 and
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 113) compatible digital DC-DC controllers.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 114)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 115) The driver is a client driver to the core PMBus driver. Please see
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 116) Documentation/hwmon/pmbus.rst and Documentation.hwmon/pmbus-core for details
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 117) on PMBus client drivers.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 118)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 119)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 120) Usage Notes
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 121) -----------
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 122)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 123) This driver does not auto-detect devices. You will have to instantiate the
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 124) devices explicitly. Please see Documentation/i2c/instantiating-devices.rst for
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 125) details.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 126)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 127) .. warning::
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 128)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 129) Do not access chip registers using the i2cdump command, and do not use
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 130) any of the i2ctools commands on a command register used to save and restore
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 131) configuration data (0x11, 0x12, 0x15, 0x16, and 0xf4). The chips supported by
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 132) this driver interpret any access to those command registers (including read
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 133) commands) as request to execute the command in question. Unless write accesses
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 134) to those registers are protected, this may result in power loss, board resets,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 135) and/or Flash corruption. Worst case, your board may turn into a brick.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 136)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 137)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 138) Platform data support
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 139) ---------------------
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 140)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 141) The driver supports standard PMBus driver platform data.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 142)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 143)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 144) Module parameters
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 145) -----------------
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 146)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 147) delay
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 148) -----
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 149)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 150) Intersil/Zilker Labs DC-DC controllers require a minimum interval between I2C
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 151) bus accesses. According to Intersil, the minimum interval is 2 ms, though 1 ms
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 152) appears to be sufficient and has not caused any problems in testing. The problem
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 153) is known to affect all currently supported chips. For manual override, the
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 154) driver provides a writeable module parameter, 'delay', which can be used to set
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 155) the interval to a value between 0 and 65,535 microseconds.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 156)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 157)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 158) Sysfs entries
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 159) -------------
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 160)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 161) The following attributes are supported. Limits are read-write; all other
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 162) attributes are read-only.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 163)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 164) ======================= ========================================================
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 165) in1_label "vin"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 166) in1_input Measured input voltage.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 167) in1_min Minimum input voltage.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 168) in1_max Maximum input voltage.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 169) in1_lcrit Critical minimum input voltage.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 170) in1_crit Critical maximum input voltage.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 171) in1_min_alarm Input voltage low alarm.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 172) in1_max_alarm Input voltage high alarm.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 173) in1_lcrit_alarm Input voltage critical low alarm.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 174) in1_crit_alarm Input voltage critical high alarm.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 175)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 176) in2_label "vmon"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 177) in2_input Measured voltage on VMON (ZL2004) or VDRV (ZL9101M,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 178) ZL9117M) pin. Reported voltage is 16x the voltage on the
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 179) pin (adjusted internally by the chip).
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 180) in2_lcrit Critical minimum VMON/VDRV Voltage.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 181) in2_crit Critical maximum VMON/VDRV voltage.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 182) in2_lcrit_alarm VMON/VDRV voltage critical low alarm.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 183) in2_crit_alarm VMON/VDRV voltage critical high alarm.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 184)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 185) vmon attributes are supported on ZL2004, ZL9101M,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 186) and ZL9117M only.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 187)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 188) inX_label "vout1"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 189) inX_input Measured output voltage.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 190) inX_lcrit Critical minimum output Voltage.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 191) inX_crit Critical maximum output voltage.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 192) inX_lcrit_alarm Critical output voltage critical low alarm.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 193) inX_crit_alarm Critical output voltage critical high alarm.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 194)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 195) X is 3 for ZL2004, ZL9101M, and ZL9117M, 2 otherwise.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 196)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 197) curr1_label "iout1"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 198) curr1_input Measured output current.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 199) curr1_lcrit Critical minimum output current.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 200) curr1_crit Critical maximum output current.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 201) curr1_lcrit_alarm Output current critical low alarm.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 202) curr1_crit_alarm Output current critical high alarm.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 203)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 204) temp[12]_input Measured temperature.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 205) temp[12]_min Minimum temperature.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 206) temp[12]_max Maximum temperature.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 207) temp[12]_lcrit Critical low temperature.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 208) temp[12]_crit Critical high temperature.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 209) temp[12]_min_alarm Chip temperature low alarm.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 210) temp[12]_max_alarm Chip temperature high alarm.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 211) temp[12]_lcrit_alarm Chip temperature critical low alarm.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 212) temp[12]_crit_alarm Chip temperature critical high alarm.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 213) ======================= ========================================================