Re: [PATCH v3 2/4] thermal: k3: Add support for bandgap sensors
From: Keerthy <j-keerthy@ti.com>
Date: 2020-02-19 12:44:24
Also in:
linux-devicetree, linux-pm, lkml
On 19/02/20 1:20 pm, Randy Dunlap wrote:
On 2/18/20 11:43 PM, Keerthy wrote:quoted
The bandgap provides current and voltage reference for its internal circuits and other analog IP blocks. The analog-to-digital converter (ADC) produces an output value that is proportional to the silicon temperature. Currently reading temperatures and trend computing is supported as there are no active/passive cooling agent supported. Signed-off-by: Keerthy <j-keerthy@ti.com> --- drivers/thermal/Kconfig | 12 ++ drivers/thermal/Makefile | 1 + drivers/thermal/k3_bandgap.c | 342 +++++++++++++++++++++++++++++++++++ 3 files changed, 355 insertions(+) create mode 100644 drivers/thermal/k3_bandgap.cdiff --git a/drivers/thermal/Kconfig b/drivers/thermal/Kconfig index 5a05db5438d6..fa598eddc7ac 100644 --- a/drivers/thermal/Kconfig +++ b/drivers/thermal/Kconfig@@ -251,6 +251,18 @@ config IMX_THERMAL cpufreq is used as the cooling device to throttle CPUs when the passive trip is crossed. +config K3_THERMAL + bool "Texas Instruments K3 thermal support"Hi, Why is this bool and not tristate?
Definitely can work as tristate. I will fix it next version.
quoted
+ depends on THERMAL + depends on ARCH_K3 || COMPILE_TEST + help + If you say yes here you get thermal support for the Texas Instruments + K3 SoC family. The current chip supported is: + - AM654 + + This includes temperature reading functionality and also trend + computation. + config MAX77620_THERMAL tristate "Temperature sensor driver for Maxim MAX77620 PMIC" depends on MFD_MAX77620quoted
diff --git a/drivers/thermal/k3_bandgap.c b/drivers/thermal/k3_bandgap.c new file mode 100644 index 000000000000..35d904eb9857 --- /dev/null +++ b/drivers/thermal/k3_bandgap.c@@ -0,0 +1,342 @@ +// SPDX-License-Identifier: GPL-2.0 +/* + * TI Bandgap temperature sensor driver for K3 SoC Family + * + * Copyright (C) 2020 Texas Instruments Incorporated - http://www.ti.com/ + */quoted
+static int k3_bgp_read_temp(struct k3_thermal_data *devdata, + int *temp) +{ + struct k3_bandgap *bgp; + unsigned int dtemp, s0, s1, s2; + + bgp = devdata->bgp; + /**"/**" is used to indicate kernel-doc notation in the Linux kernel source files, but this comment is not kernel-doc notation, so please just use "/*".
Okay
quoted
+ * Errata is applicable for am654 pg 1.0 silicon. There + * is a variation of the order for 8-10 degree centigrade. + * Work around that by getting the average of two closest + * readings out of three readings everytime we want to + * report temperatures. + * + * Errata workaround. + */thanks.
Thanks for the review. - Keerthy
_______________________________________________ linux-arm-kernel mailing list linux-arm-kernel@lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-arm-kernel