cachepc-linux

Fork of AMDESE/linux with modifications for CachePC side-channel attack
git clone https://git.sinitax.com/sinitax/cachepc-linux
Log | Files | Refs | README | LICENSE | sfeed.txt

ina2xx.rst (3963B)


      1Kernel driver ina2xx
      2====================
      3
      4Supported chips:
      5
      6  * Texas Instruments INA219
      7
      8
      9    Prefix: 'ina219'
     10    Addresses: I2C 0x40 - 0x4f
     11
     12    Datasheet: Publicly available at the Texas Instruments website
     13
     14	       https://www.ti.com/
     15
     16  * Texas Instruments INA220
     17
     18    Prefix: 'ina220'
     19
     20    Addresses: I2C 0x40 - 0x4f
     21
     22    Datasheet: Publicly available at the Texas Instruments website
     23
     24	       https://www.ti.com/
     25
     26  * Texas Instruments INA226
     27
     28    Prefix: 'ina226'
     29
     30    Addresses: I2C 0x40 - 0x4f
     31
     32    Datasheet: Publicly available at the Texas Instruments website
     33
     34	       https://www.ti.com/
     35
     36  * Texas Instruments INA230
     37
     38    Prefix: 'ina230'
     39
     40    Addresses: I2C 0x40 - 0x4f
     41
     42    Datasheet: Publicly available at the Texas Instruments website
     43
     44	       https://www.ti.com/
     45
     46  * Texas Instruments INA231
     47
     48    Prefix: 'ina231'
     49
     50    Addresses: I2C 0x40 - 0x4f
     51
     52    Datasheet: Publicly available at the Texas Instruments website
     53
     54	       https://www.ti.com/
     55
     56Author: Lothar Felten <lothar.felten@gmail.com>
     57
     58Description
     59-----------
     60
     61The INA219 is a high-side current shunt and power monitor with an I2C
     62interface. The INA219 monitors both shunt drop and supply voltage, with
     63programmable conversion times and filtering.
     64
     65The INA220 is a high or low side current shunt and power monitor with an I2C
     66interface. The INA220 monitors both shunt drop and supply voltage.
     67
     68The INA226 is a current shunt and power monitor with an I2C interface.
     69The INA226 monitors both a shunt voltage drop and bus supply voltage.
     70
     71INA230 and INA231 are high or low side current shunt and power monitors
     72with an I2C interface. The chips monitor both a shunt voltage drop and
     73bus supply voltage.
     74
     75The shunt value in micro-ohms can be set via platform data or device tree at
     76compile-time or via the shunt_resistor attribute in sysfs at run-time. Please
     77refer to the Documentation/devicetree/bindings/hwmon/ti,ina2xx.yaml for bindings
     78if the device tree is used.
     79
     80Additionally ina226 supports update_interval attribute as described in
     81Documentation/hwmon/sysfs-interface.rst. Internally the interval is the sum of
     82bus and shunt voltage conversion times multiplied by the averaging rate. We
     83don't touch the conversion times and only modify the number of averages. The
     84lower limit of the update_interval is 2 ms, the upper limit is 2253 ms.
     85The actual programmed interval may vary from the desired value.
     86
     87General sysfs entries
     88---------------------
     89
     90======================= ===============================
     91in0_input		Shunt voltage(mV) channel
     92in1_input		Bus voltage(mV) channel
     93curr1_input		Current(mA) measurement channel
     94power1_input		Power(uW) measurement channel
     95shunt_resistor		Shunt resistance(uOhm) channel
     96======================= ===============================
     97
     98Sysfs entries for ina226, ina230 and ina231 only
     99------------------------------------------------
    100
    101======================= ====================================================
    102in0_lcrit		Critical low shunt voltage
    103in0_crit		Critical high shunt voltage
    104in0_lcrit_alarm		Shunt voltage critical low alarm
    105in0_crit_alarm		Shunt voltage critical high alarm
    106in1_lcrit		Critical low bus voltage
    107in1_crit		Critical high bus voltage
    108in1_lcrit_alarm		Bus voltage critical low alarm
    109in1_crit_alarm		Bus voltage critical high alarm
    110power1_crit		Critical high power
    111power1_crit_alarm	Power critical high alarm
    112update_interval		data conversion time; affects number of samples used
    113			to average results for shunt and bus voltages.
    114======================= ====================================================
    115
    116.. note::
    117
    118   - Configure `shunt_resistor` before configure `power1_crit`, because power
    119     value is calculated based on `shunt_resistor` set.
    120   - Because of the underlying register implementation, only one `*crit` setting
    121     and its `alarm` can be active. Writing to one `*crit` setting clears other
    122     `*crit` settings and alarms. Writing 0 to any `*crit` setting clears all
    123     `*crit` settings and alarms.