[PATCH] thermal: amlogic: Add hwmon support

From: Martin Blumenstingl
Date: Sun Nov 15 2020 - 14:10:39 EST


Many monitoring tools read the CPU temperature using the hwmon
interface. Expose the thermal sensors on Amlogic boards as hwmon
devices.

Without this lm_sensors' "sensors" tool does not find any temperature
sensors. Now it prints:
cpu_thermal-virtual-0
Adapter: Virtual device
temp1: +44.7 C (crit = +110.0 C)

ddr_thermal-virtual-0
Adapter: Virtual device
temp1: +45.9 C (crit = +110.0 C)

Signed-off-by: Martin Blumenstingl <martin.blumenstingl@xxxxxxxxxxxxxx>
---
drivers/thermal/amlogic_thermal.c | 4 ++++
1 file changed, 4 insertions(+)

diff --git a/drivers/thermal/amlogic_thermal.c b/drivers/thermal/amlogic_thermal.c
index ccb1fe18e993..dffe3ba8c7c4 100644
--- a/drivers/thermal/amlogic_thermal.c
+++ b/drivers/thermal/amlogic_thermal.c
@@ -29,6 +29,7 @@
#include <linux/thermal.h>

#include "thermal_core.h"
+#include "thermal_hwmon.h"

#define TSENSOR_CFG_REG1 0x4
#define TSENSOR_CFG_REG1_RSET_VBG BIT(12)
@@ -287,6 +288,9 @@ static int amlogic_thermal_probe(struct platform_device *pdev)
return ret;
}

+ if (devm_thermal_add_hwmon_sysfs(pdata->tzd))
+ dev_warn(&pdev->dev, "Failed to add hwmon sysfs attributes\n");
+
ret = amlogic_thermal_initialize(pdata);
if (ret)
return ret;
--
2.29.2