summaryrefslogtreecommitdiff
path: root/drivers/thermal/amlogic_thermal.c
diff options
context:
space:
mode:
authorDmitry Rokosov <ddrokosov@salutedevices.com>2024-03-28 22:13:11 +0300
committerDaniel Lezcano <daniel.lezcano@linaro.org>2024-04-23 13:40:29 +0300
commit7fcd7dfa5ec29afe0b3fe8ad6a5f42c19e71d6be (patch)
tree39492508915078dc0012d17af9ff482daddd374b /drivers/thermal/amlogic_thermal.c
parent63d96b1253169126a791d6b1b0ef2e708ffb0d75 (diff)
downloadlinux-7fcd7dfa5ec29afe0b3fe8ad6a5f42c19e71d6be.tar.xz
thermal/drivers/amlogic: Support A1 SoC family Thermal Sensor controller
In comparison to other Amlogic chips, there is one key difference. The offset for the sec_ao base, also known as u_efuse_off, is special, while other aspects remain the same. Signed-off-by: Dmitry Rokosov <ddrokosov@salutedevices.com> Reviewed-by: Neil Armstrong <neil.armstrong@linaro.org> Signed-off-by: Daniel Lezcano <daniel.lezcano@linaro.org> Link: https://lore.kernel.org/r/20240328191322.17551-3-ddrokosov@salutedevices.com
Diffstat (limited to 'drivers/thermal/amlogic_thermal.c')
-rw-r--r--drivers/thermal/amlogic_thermal.c10
1 files changed, 10 insertions, 0 deletions
diff --git a/drivers/thermal/amlogic_thermal.c b/drivers/thermal/amlogic_thermal.c
index df7a5ed55385..cd4776aa805e 100644
--- a/drivers/thermal/amlogic_thermal.c
+++ b/drivers/thermal/amlogic_thermal.c
@@ -220,6 +220,12 @@ static const struct amlogic_thermal_data amlogic_thermal_g12a_ddr_param = {
.regmap_config = &amlogic_thermal_regmap_config_g12a,
};
+static const struct amlogic_thermal_data amlogic_thermal_a1_cpu_param = {
+ .u_efuse_off = 0x114,
+ .calibration_parameters = &amlogic_thermal_g12a,
+ .regmap_config = &amlogic_thermal_regmap_config_g12a,
+};
+
static const struct of_device_id of_amlogic_thermal_match[] = {
{
.compatible = "amlogic,g12a-ddr-thermal",
@@ -229,6 +235,10 @@ static const struct of_device_id of_amlogic_thermal_match[] = {
.compatible = "amlogic,g12a-cpu-thermal",
.data = &amlogic_thermal_g12a_cpu_param,
},
+ {
+ .compatible = "amlogic,a1-cpu-thermal",
+ .data = &amlogic_thermal_a1_cpu_param,
+ },
{ /* sentinel */ }
};
MODULE_DEVICE_TABLE(of, of_amlogic_thermal_match);