Skip to content

Commit ffcb2fc

Browse files
Keerthyjdlezcano
authored andcommitted
thermal: k3_j72xx_bandgap: Add the bandgap driver support
Add VTM thermal support. In the Voltage Thermal Management Module(VTM), K3 J72XX supplies a voltage reference and a temperature sensor feature that are gathered in the band gap voltage and temperature sensor (VBGAPTS) module. The band gap 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 only is supported. There are no active/passive cooling agent supported. J721e SoCs have errata i2128: https://www.ti.com/lit/pdf/sprz455 The VTM Temperature Monitors (TEMPSENSORs) are trimmed during production, with the resulting values stored in software-readable registers. Software should use these register values when translating the Temperature Monitor output codes to temperature values. It has an involved workaround. Software needs to read the error codes for -40C, 30C, 125C from the efuse for each device & derive a new look up table for adc to temperature conversion. Involved calculating slopes & constants using 3 different straight line equations with adc refernce codes as the y-axis & error codes in the x-axis. -40C to 30C 30C to 125C 125C to 150C With the above 2 line equations we derive the full look-up table to workaround the errata i2128 for j721e SoC. Tested temperature reading on J721e SoC & J7200 SoC. [[email protected]: Generate look-up tables run-time] Signed-off-by: Daniel Lezcano <[email protected]> Signed-off-by: Keerthy <[email protected]> Link: https://lore.kernel.org/r/[email protected] Signed-off-by: Daniel Lezcano <[email protected]>
1 parent 031c295 commit ffcb2fc

File tree

2 files changed

+567
-1
lines changed

2 files changed

+567
-1
lines changed

drivers/thermal/Makefile

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,7 @@ thermal_sys-$(CONFIG_CPU_IDLE_THERMAL) += cpuidle_cooling.o
2828
# devfreq cooling
2929
thermal_sys-$(CONFIG_DEVFREQ_THERMAL) += devfreq_cooling.o
3030

31-
obj-$(CONFIG_K3_THERMAL) += k3_bandgap.o
31+
obj-$(CONFIG_K3_THERMAL) += k3_bandgap.o k3_j72xx_bandgap.o
3232
# platform thermal drivers
3333
obj-y += broadcom/
3434
obj-$(CONFIG_THERMAL_MMIO) += thermal_mmio.o

0 commit comments

Comments
 (0)