Commit 007e433c authored by Guenter Roeck's avatar Guenter Roeck

hwmon: Add driver for Texas Instruments TMP464 and TMP468

Add support for Texas Instruments TMP464 and TMP468 temperature sensor
ICs.

TI's TMP464 is an I2C temperature sensor chip. This chip is similar
to TI's TMP421 chip, but with 16bit-wide registers (instead of
8bit-wide registers). The chip has one local sensor and four remote
sensors. TMP468 is similar to TMP464 but has one local and eight
remote sensors.

Originally-from: Agathe Porte <agathe.porte@nokia.com>
Cc: Agathe Porte <agathe.porte@nokia.com>
Cc: Krzysztof Adamski <krzysztof.adamski@nokia.com>
Tested-by: default avatarAgathe Porte <agathe.porte@nokia.com>
Link: https://lore.kernel.org/r/20220222223610.23098-2-linux@roeck-us.netSigned-off-by: default avatarGuenter Roeck <linux@roeck-us.net>
parent b4fa042e
...@@ -195,6 +195,7 @@ Hardware Monitoring Kernel Drivers ...@@ -195,6 +195,7 @@ Hardware Monitoring Kernel Drivers
tmp108 tmp108
tmp401 tmp401
tmp421 tmp421
tmp464
tmp513 tmp513
tps23861 tps23861
tps40422 tps40422
......
.. SPDX-License-Identifier: GPL-2.0
Kernel driver tmp464
====================
Supported chips:
* Texas Instruments TMP464
Prefix: 'tmp464'
Addresses scanned: I2C 0x48, 0x49, 0x4a and 0x4b
Datasheet: http://focus.ti.com/docs/prod/folders/print/tmp464.html
* Texas Instruments TMP468
Prefix: 'tmp468'
Addresses scanned: I2C 0x48, 0x49, 0x4a and 0x4b
Datasheet: http://focus.ti.com/docs/prod/folders/print/tmp468.html
Authors:
Agathe Porte <agathe.porte@nokia.com>
Guenter Roeck <linux@roeck-us.net>
Description
-----------
This driver implements support for Texas Instruments TMP464 and TMP468
temperature sensor chips. TMP464 provides one local and four remote
sensors. TMP468 provides one local and eight remote sensors.
Temperature is measured in degrees Celsius. The chips are wired over
I2C/SMBus and specified over a temperature range of -40 to +125 degrees
Celsius. Resolution for both the local and remote channels is 0.0625
degree C.
The chips support only temperature measurements. The driver exports
temperature values, limits, and alarms via the following sysfs files:
**temp[1-9]_input**
**temp[1-9]_max**
**temp[1-9]_max_hyst**
**temp[1-9]_max_alarm**
**temp[1-9]_crit**
**temp[1-9]_crit_alarm**
**temp[1-9]_crit_hyst**
**temp[2-9]_offset**
**temp[2-9]_fault**
Each sensor can be individually disabled via Devicetree or from sysfs
via:
**temp[1-9]_enable**
If labels were specified in Devicetree, additional sysfs files will
be present:
**temp[1-9]_label**
The update interval is configurable with the following sysfs attribute.
**update_interval**
...@@ -19502,6 +19502,8 @@ M: Guenter Roeck <linux@roeck-us.net> ...@@ -19502,6 +19502,8 @@ M: Guenter Roeck <linux@roeck-us.net>
L: linux-hwmon@vger.kernel.org L: linux-hwmon@vger.kernel.org
S: Maintained S: Maintained
F: Documentation/devicetree/bindings/hwmon/ti,tmp464.yaml F: Documentation/devicetree/bindings/hwmon/ti,tmp464.yaml
F: Documentation/hwmon/tmp464.rst
F: drivers/hwmon/tmp464.c
TMP513 HARDWARE MONITOR DRIVER TMP513 HARDWARE MONITOR DRIVER
M: Eric Tremblay <etremblay@distech-controls.com> M: Eric Tremblay <etremblay@distech-controls.com>
......
...@@ -1996,6 +1996,17 @@ config SENSORS_TMP421 ...@@ -1996,6 +1996,17 @@ config SENSORS_TMP421
This driver can also be built as a module. If so, the module This driver can also be built as a module. If so, the module
will be called tmp421. will be called tmp421.
config SENSORS_TMP464
tristate "Texas Instruments TMP464 and compatible"
depends on I2C
select REGMAP_I2C
help
If you say yes here you get support for Texas Instruments TMP464
and TMP468 temperature sensor chips.
This driver can also be built as a module. If so, the module
will be called tmp464.
config SENSORS_TMP513 config SENSORS_TMP513
tristate "Texas Instruments TMP513 and compatibles" tristate "Texas Instruments TMP513 and compatibles"
depends on I2C depends on I2C
......
...@@ -195,6 +195,7 @@ obj-$(CONFIG_SENSORS_TMP103) += tmp103.o ...@@ -195,6 +195,7 @@ obj-$(CONFIG_SENSORS_TMP103) += tmp103.o
obj-$(CONFIG_SENSORS_TMP108) += tmp108.o obj-$(CONFIG_SENSORS_TMP108) += tmp108.o
obj-$(CONFIG_SENSORS_TMP401) += tmp401.o obj-$(CONFIG_SENSORS_TMP401) += tmp401.o
obj-$(CONFIG_SENSORS_TMP421) += tmp421.o obj-$(CONFIG_SENSORS_TMP421) += tmp421.o
obj-$(CONFIG_SENSORS_TMP464) += tmp464.o
obj-$(CONFIG_SENSORS_TMP513) += tmp513.o obj-$(CONFIG_SENSORS_TMP513) += tmp513.o
obj-$(CONFIG_SENSORS_VEXPRESS) += vexpress-hwmon.o obj-$(CONFIG_SENSORS_VEXPRESS) += vexpress-hwmon.o
obj-$(CONFIG_SENSORS_VIA_CPUTEMP)+= via-cputemp.o obj-$(CONFIG_SENSORS_VIA_CPUTEMP)+= via-cputemp.o
......
This diff is collapsed.
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment