^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1) Kernel driver ina209
^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) * Burr-Brown / Texas Instruments INA209
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 7)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 8) Prefix: 'ina209'
^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:
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 13) https://www.ti.com/lit/gpn/ina209
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 14)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 15) Author:
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 16) - Paul Hays <Paul.Hays@cattail.ca>
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 17) - Ira W. Snyder <iws@ovro.caltech.edu>
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 18) - Guenter Roeck <linux@roeck-us.net>
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 19)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 20)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 21) Description
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 22) -----------
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 23)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 24) The TI / Burr-Brown INA209 monitors voltage, current, and power on the high side
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 25) of a D.C. power supply. It can perform measurements and calculations in the
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 26) background to supply readings at any time. It includes a programmable
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 27) calibration multiplier to scale the displayed current and power values.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 28)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 29)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 30) Sysfs entries
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 31) -------------
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 32)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 33) The INA209 chip is highly configurable both via hardwiring and via
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 34) the I2C bus. See the datasheet for details.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 35)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 36) This tries to expose most monitoring features of the hardware via
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 37) sysfs. It does not support every feature of this chip.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 38)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 39) ======================= =======================================================
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 40) in0_input shunt voltage (mV)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 41) in0_input_highest shunt voltage historical maximum reading (mV)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 42) in0_input_lowest shunt voltage historical minimum reading (mV)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 43) in0_reset_history reset shunt voltage history
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 44) in0_max shunt voltage max alarm limit (mV)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 45) in0_min shunt voltage min alarm limit (mV)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 46) in0_crit_max shunt voltage crit max alarm limit (mV)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 47) in0_crit_min shunt voltage crit min alarm limit (mV)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 48) in0_max_alarm shunt voltage max alarm limit exceeded
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 49) in0_min_alarm shunt voltage min alarm limit exceeded
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 50) in0_crit_max_alarm shunt voltage crit max alarm limit exceeded
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 51) in0_crit_min_alarm shunt voltage crit min alarm limit exceeded
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 52)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 53) in1_input bus voltage (mV)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 54) in1_input_highest bus voltage historical maximum reading (mV)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 55) in1_input_lowest bus voltage historical minimum reading (mV)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 56) in1_reset_history reset bus voltage history
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 57) in1_max bus voltage max alarm limit (mV)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 58) in1_min bus voltage min alarm limit (mV)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 59) in1_crit_max bus voltage crit max alarm limit (mV)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 60) in1_crit_min bus voltage crit min alarm limit (mV)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 61) in1_max_alarm bus voltage max alarm limit exceeded
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 62) in1_min_alarm bus voltage min alarm limit exceeded
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 63) in1_crit_max_alarm bus voltage crit max alarm limit exceeded
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 64) in1_crit_min_alarm bus voltage crit min alarm limit exceeded
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 65)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 66) power1_input power measurement (uW)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 67) power1_input_highest power historical maximum reading (uW)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 68) power1_reset_history reset power history
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 69) power1_max power max alarm limit (uW)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 70) power1_crit power crit alarm limit (uW)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 71) power1_max_alarm power max alarm limit exceeded
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 72) power1_crit_alarm power crit alarm limit exceeded
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 73)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 74) curr1_input current measurement (mA)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 75)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 76) update_interval data conversion time; affects number of samples used
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 77) to average results for shunt and bus voltages.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 78) ======================= =======================================================
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 79)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 80) General Remarks
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 81) ---------------
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 82)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 83) The power and current registers in this chip require that the calibration
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 84) register is programmed correctly before they are used. Normally this is expected
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 85) to be done in the BIOS. In the absence of BIOS programming, the shunt resistor
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 86) voltage can be provided using platform data. The driver uses platform data from
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 87) the ina2xx driver for this purpose. If calibration register data is not provided
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 88) via platform data, the driver checks if the calibration register has been
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 89) programmed (ie has a value not equal to zero). If so, this value is retained.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 90) Otherwise, a default value reflecting a shunt resistor value of 10 mOhm is
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 91) programmed into the calibration register.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 92)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 93)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 94) Output Pins
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 95) -----------
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 96)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 97) Output pin programming is a board feature which depends on the BIOS. It is
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 98) outside the scope of a hardware monitoring driver to enable or disable output
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 99) pins.