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 series also incorporates workaround for Errata i2128. Changes in v6: * Fixed the DT comments that were missed in v5. * Changed the offsets, bit masks to 2-D array. * Clean up Changes in v5: * Simplified the computation of the table. * Removed unnecessary members in the structures. Changes in v4: * Fixed compilation warning with W=1. Changes in v3: * Removed static look up tables & added functions to dynamically generate them. Changes in v2: * Fixed DT binding errors. Keerthy (4): dt-bindings: thermal: k3-j72xx: Add VTM bindings documentation arm64: dts: ti: j721e: Add VTM node arm64: dts: ti: j7200: Add VTM node thermal: k3_j72xx_bandgap: Add the bandgap driver support .../bindings/thermal/ti,j72xx-thermal.yaml | 64 ++ .../boot/dts/ti/k3-j7200-mcu-wakeup.dtsi | 9 + arch/arm64/boot/dts/ti/k3-j7200-thermal.dtsi | 47 ++ arch/arm64/boot/dts/ti/k3-j7200.dtsi | 2 + .../boot/dts/ti/k3-j721e-mcu-wakeup.dtsi | 9 + arch/arm64/boot/dts/ti/k3-j721e-thermal.dtsi | 75 +++ arch/arm64/boot/dts/ti/k3-j721e.dtsi | 2 + drivers/thermal/Makefile | 2 +- drivers/thermal/k3_j72xx_bandgap.c | 566 ++++++++++++++++++ 9 files changed, 775 insertions(+), 1 deletion(-) create mode 100644 Documentation/devicetree/bindings/thermal/ti,j72xx-thermal.yaml create mode 100644 arch/arm64/boot/dts/ti/k3-j7200-thermal.dtsi create mode 100644 arch/arm64/boot/dts/ti/k3-j721e-thermal.dtsi create mode 100644 drivers/thermal/k3_j72xx_bandgap.c -- 2.17.1