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

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.net


Signed-off-by: default avatarGuenter Roeck <linux@roeck-us.net>
parent b4fa042e
Loading
Loading
Loading
Loading
+1 −0
Original line number Diff line number Diff line
@@ -195,6 +195,7 @@ Hardware Monitoring Kernel Drivers
   tmp108
   tmp401
   tmp421
   tmp464
   tmp513
   tps23861
   tps40422
+73 −0
Original line number Diff line number Diff line
.. 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**
+2 −0
Original line number Diff line number Diff line
@@ -19502,6 +19502,8 @@ M: Guenter Roeck <linux@roeck-us.net>
L:	linux-hwmon@vger.kernel.org
S:	Maintained
F:	Documentation/devicetree/bindings/hwmon/ti,tmp464.yaml
F:	Documentation/hwmon/tmp464.rst
F:	drivers/hwmon/tmp464.c
TMP513 HARDWARE MONITOR DRIVER
M:	Eric Tremblay <etremblay@distech-controls.com>
+11 −0
Original line number Diff line number Diff line
@@ -1996,6 +1996,17 @@ config SENSORS_TMP421
	  This driver can also be built as a module. If so, the module
	  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
	tristate "Texas Instruments TMP513 and compatibles"
	depends on I2C
+1 −0
Original line number Diff line number Diff line
@@ -195,6 +195,7 @@ obj-$(CONFIG_SENSORS_TMP103) += tmp103.o
obj-$(CONFIG_SENSORS_TMP108)	+= tmp108.o
obj-$(CONFIG_SENSORS_TMP401)	+= tmp401.o
obj-$(CONFIG_SENSORS_TMP421)	+= tmp421.o
obj-$(CONFIG_SENSORS_TMP464)	+= tmp464.o
obj-$(CONFIG_SENSORS_TMP513)	+= tmp513.o
obj-$(CONFIG_SENSORS_VEXPRESS)	+= vexpress-hwmon.o
obj-$(CONFIG_SENSORS_VIA_CPUTEMP)+= via-cputemp.o
Loading