You've already forked linux-rockchip
mirror of
https://github.com/armbian/linux-rockchip.git
synced 2026-01-06 11:08:10 -08:00
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: Agathe Porte <agathe.porte@nokia.com> Link: https://lore.kernel.org/r/20220222223610.23098-2-linux@roeck-us.net Signed-off-by: Guenter Roeck <linux@roeck-us.net>
This commit is contained in:
@@ -195,6 +195,7 @@ Hardware Monitoring Kernel Drivers
|
||||
tmp108
|
||||
tmp401
|
||||
tmp421
|
||||
tmp464
|
||||
tmp513
|
||||
tps23861
|
||||
tps40422
|
||||
|
||||
73
Documentation/hwmon/tmp464.rst
Normal file
73
Documentation/hwmon/tmp464.rst
Normal file
@@ -0,0 +1,73 @@
|
||||
.. 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>
|
||||
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>
|
||||
|
||||
@@ -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
|
||||
|
||||
@@ -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
|
||||
|
||||
712
drivers/hwmon/tmp464.c
Normal file
712
drivers/hwmon/tmp464.c
Normal file
File diff suppressed because it is too large
Load Diff
Reference in New Issue
Block a user