123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103 |
- .. SPDX-License-Identifier: GPL-2.0
- Kernel driver tmp513
- ====================
- Supported chips:
- * Texas Instruments TMP512
- Prefix: 'tmp512'
- Datasheet: https://www.ti.com/lit/ds/symlink/tmp512.pdf
- * Texas Instruments TMP513
- Prefix: 'tmp513'
- Datasheet: https://www.ti.com/lit/ds/symlink/tmp513.pdf
- Authors:
- Eric Tremblay <[email protected]>
- Description
- -----------
- This driver implements support for Texas Instruments TMP512, and TMP513.
- The TMP512 (dual-channel) and TMP513 (triple-channel) are system monitors
- that include remote sensors, a local temperature sensor, and a high-side current
- shunt monitor. These system monitors have the capability of measuring remote
- temperatures, on-chip temperatures, and system voltage/power/current
- consumption.
- The temperatures are measured in degrees Celsius with a range of
- -40 to + 125 degrees with a resolution of 0.0625 degree C.
- For hysteresis value, only the first channel is writable. Writing to it
- will affect all other values since each channels are sharing the same
- hysteresis value. The hysteresis is in degrees Celsius with a range of
- 0 to 127.5 degrees with a resolution of 0.5 degree.
- The driver exports the temperature values via the following sysfs files:
- **temp[1-4]_input**
- **temp[1-4]_crit**
- **temp[1-4]_crit_alarm**
- **temp[1-4]_crit_hyst**
- The driver read the shunt voltage from the chip and convert it to current.
- The readable range depends on the "ti,pga-gain" property (default to 8) and the
- shunt resistor value. The value resolution will be equal to 10uV/Rshunt.
- The driver exports the shunt currents values via the following sysFs files:
- **curr1_input**
- **curr1_lcrit**
- **curr1_lcrit_alarm**
- **curr1_crit**
- **curr1_crit_alarm**
- The bus voltage range is read from the chip with a resolution of 4mV. The chip
- can be configurable in two different range (32V or 16V) using the
- ti,bus-range-microvolt property in the devicetree.
- The driver exports the bus voltage values via the following sysFs files:
- **in0_input**
- **in0_lcrit**
- **in0_lcrit_alarm**
- **in0_crit**
- **in0_crit_alarm**
- The bus power and bus currents range and resolution depends on the calibration
- register value. Those values are calculate by the hardware using those
- formulas:
- Current = (ShuntVoltage * CalibrationRegister) / 4096
- Power = (Current * BusVoltage) / 5000
- The driver exports the bus current and bus power values via the following
- sysFs files:
- **curr2_input**
- **power1_input**
- **power1_crit**
- **power1_crit_alarm**
- The calibration process follow the procedure of the datasheet (without overflow)
- and depend on the shunt resistor value and the pga_gain value.
|