[PATCH v3 0/6] Allwinner: A523: add support for A523 THS0/1 controllers

From: iuncuim

Date: Sat Oct 25 2025 - 00:32:11 EST


From: Mikhail Kalashnikov <iuncuim@xxxxxxxxx>

This patch series adds temperature sensor support for the Allwinner A523
family of processors (same die with H728/A527/T527)

Based on 6.18-rc1.

Changes v3~v2:
x) dt-bindings: nvmem: SID: Add binding for A523 SID controller
- previously accepted, therefore removed from this version

1) dt-bindings: thermal: sun8i: Add A523 THS0/1 controllers
- added changes as requested by Rob

2) thermal/drivers/sun8i: add gpadc clock
- removed undescribed changes spaces to tabs

3) thermal/drivers/sun8i: replace devm_reset_control_get to
- changed the commit description to the version suggested by wens
- added reviewed-by tag

4) thermal/drivers/sun8i: get calibration data from two nvmem cells
- added spaces in the description block before "*"

5) thermal/drivers/sun8i: Add support for A523 THS0/1 controllers
- added alignment of functions in compliance with open parenthesis

x) arm64: dts: allwinner: A523: Add SID controller node
- previously accepted, therefore removed from this version

6) arm64: dts: allwinner: A523: Add thermal sensors and zones
- no functional changes

Changes v2~v1:
1) dt-bindings: nvmem: SID: Add binding for A523 SID controller
- added new patch

2) dt-bindings: thermal: sun8i: Add A523 THS0/1 controllers
- changed clock order
- added additional nvmem cell with calibration data
- added requirements for new controllers
- added description

3) thermal/drivers/sun8i: add gpadc clock
- removed unnecessary call to clk_prepare_enable() since
devm_clk_get_enabled()includes this

4) thermal/drivers/sun8i: replace devm_reset_control_get to
- original function replaced with devm_reset_control_get_shared_deasserted()
- removed some of the repetitive code executed by
devm_reset_control_get_shared_deasserted()

5) thermal/drivers/sun8i: get calibration data from two nvmem cells
- added possibility to get calibration data from two independent cells

6) thermal/drivers/sun8i: Add support for A523 THS0/1 controllers
- removed magic digits
- changed description of calibration data procedure for A523
- changed numbers of array elements with calibration data

7) arm64: dts: allwinner: A523: Add SID controller node
- fix typo (sun50i->sun55i)

8) arm64: dts: allwinner: A523: Add thermal sensors and zones
- cell with calibration data divided into two
- added passive trips for gpu
- added information that information obtained from BSP

v1: https://lore.kernel.org/linux-sunxi/20250411003827.782544-1-iuncuim@xxxxxxxxx

Mikhail Kalashnikov (6):
dt-bindings: thermal: sun8i: Add A523 THS0/1 controllers
thermal/drivers/sun8i: add gpadc clock
thermal/drivers/sun8i: replace devm_reset_control_get to
devm_reset_control_get_shared_deasserted
thermal/drivers/sun8i: get calibration data from two nvmem cells
thermal/drivers/sun8i: Add support for A523 THS0/1 controllers
Allwinner: A523: add support for A523 THS0/1 controllers

.../thermal/allwinner,sun8i-a83t-ths.yaml | 56 ++++-
.../arm64/boot/dts/allwinner/sun55i-a523.dtsi | 154 ++++++++++++
drivers/thermal/sun8i_thermal.c | 234 +++++++++++++++---
3 files changed, 401 insertions(+), 43 deletions(-)

--
2.51.0