Skip to content

IIO-based thermal sensor driver for Allwinner H3 and A83T SoC

Philipp Rossak linux-arm-kernel linux-devicetree linux-iio lkml 3 versions – In review

Get series with b4
b4 am [email protected]

Versions newest first · linked by author and title

  1. v3 Latest30 patches 55 repliesIn review
  2. v216 patches 37 repliesSuperseded
  3. v116 patches 21 repliesSuperseded

Changes in v3 from the cover letter

* mfd driver is now merged into the gpadc driver
* complete rework

Patches in v3 No applies recorded yet

#Subject and filesSizeRepliesApplied
1/30mfd: Makefile: Remove build option for MFD:sun4i-gpadcdrivers/mfd/Makefile+0 -12 replies
2/30mfd: Kconfig: Remove MFD_SUN4I_GPADC config optiondrivers/mfd/Kconfig+0 -171 reply
3/30iio: adc: Remove ID tabledrivers/iio/adc/sun4i-gpadc-iio.c+0 -90 replies
4/30iio: adc: Kconfig: Update Kconfig to new build optionsdrivers/iio/adc/Kconfig+7 -41 reply
5/30iio: adc: move SUN4I_GPADC_CHANNEL define to header filedrivers/iio/adc/sun4i-gpadc-iio.c include/linux/mfd/sun4i-gpadc.h+9 -93 replies
6/30iio: adc: remove ofnode optionsdrivers/iio/adc/sun4i-gpadc-iio.c+1 -40 replies
7/30iio: adc: remove mfd_probe & sunwi_irq_init functiondrivers/iio/adc/sun4i-gpadc-iio.c+0 -1261 reply
8/30iio: adc: remove hwmon structuredrivers/iio/adc/sun4i-gpadc-iio.c+0 -81 reply
9/30iio: adc: Threat A33 as thermal sensor and remove non thermal sun4i channeldrivers/iio/adc/sun4i-gpadc-iio.c+0 -192 replies
10/30iio: adc: rework irq and adc_channel handlingdrivers/iio/adc/sun4i-gpadc-iio.c include/linux/mfd/sun4i-gpadc.h+98 -661 reply
11/30iio: adc: add new compatiblesdrivers/iio/adc/sun4i-gpadc-iio.c+12 -01 reply
12/30mfd: Remove old mfd driver & Move sun4i-gpadc.h to iio/adc/drivers/iio/adc/sun4i-gpadc-iio.c drivers/mfd/sun4i-gpadc.c include/linux/iio/adc/sun4i-gpadc.h+1 -1820 replies
13/30arm: config: Enable SUN4I_GPADC in defconfigarch/arm/configs/sunxi_defconfig+1 -00 replies
14/30dt-bindings: update the Allwinner GPADC device tree binding for H3 & A83TDocumentation/devicetree/bindings/iio/adc/sun4i-gpadc.txt+38 -33 replies
15/30iio: adc: sun4i-gpadc-iio: rename A33-specified registers to contain A33drivers/iio/adc/sun4i-gpadc-iio.c include/linux/iio/adc/sun4i-gpadc.h+4 -40 replies
16/30iio: adc: sun4i-gpadc-iio: rework: readout temp_datadrivers/iio/adc/sun4i-gpadc-iio.c+13 -81 reply
17/30iio: adc: sun4i-gpadc-iio: rework: support clocks and resetdrivers/iio/adc/sun4i-gpadc-iio.c+70 -21 reply
18/30iio: adc: sun4i-gpadc-iio: rework: support multiple sensorsdrivers/iio/adc/sun4i-gpadc-iio.c include/linux/iio/adc/sun4i-gpadc.h+46 -204 replies
19/30iio: adc: sun4i-gpadc-iio: rework: support nvmem calibration datadrivers/iio/adc/sun4i-gpadc-iio.c+24 -01 reply
20/30iio: adc: sun4i-gpadc-iio: rework: device specific suspend & resumedrivers/iio/adc/sun4i-gpadc-iio.c+20 -03 replies
21/30iio: adc: sun4i-gpadc-iio: add support for H3 thermal sensordrivers/iio/adc/sun4i-gpadc-iio.c include/linux/iio/adc/sun4i-gpadc.h+109 -010 replies
22/30iio: adc: sun4i-gpadc-iio: add support for A83T thermal sensordrivers/iio/adc/sun4i-gpadc-iio.c include/linux/iio/adc/sun4i-gpadc.h+65 -00 replies
23/30ARM: dts: sunxi-h3-h5: add support for the thermal sensor in H3 and H5arch/arm/boot/dts/sunxi-h3-h5.dtsi+9 -00 replies
24/30ARM: dts: sun8i: h3: add support for the thermal sensor in H3arch/arm/boot/dts/sun8i-h3.dtsi+5 -00 replies
25/30ARM: dts: sun8i: h3: add thermal zone to H3arch/arm/boot/dts/sun8i-h3.dtsi arch/arm/boot/dts/sunxi-h3-h5.dtsi+32 -01 reply
26/30ARM: dts: sun8i: h3: enable H3 sid controllerarch/arm/boot/dts/sun8i-h3.dtsi+7 -00 replies
27/30ARM: dts: sun8i: h3: use calibration for thsarch/arm/boot/dts/sun8i-h3.dtsi+9 -09 replies
28/30ARM: dts: sun8i: a83t: add support for the thermal sensor in A83Tarch/arm/boot/dts/sun8i-a83t.dtsi+8 -00 replies
29/30ARM: dts: sun8i: a83t: add thermal zone to A83Tarch/arm/boot/dts/sun8i-a83t.dtsi+103 -00 replies
30/30ARM: sun8i: a83t: full range OPP tables and CPUfreqarch/arm/boot/dts/sun8i-a83t.dtsi+32 -06 replies

Reviews trailers per patch

1 of 30 patches has a Reviewed-by or Acked-by.

PatchChen-Yu TsaiMaxime RipardLee JonesJonathan Cameron
1/30
2/30
3/30
4/30
5/30
6/30
7/30
8/30
9/30
10/30
11/30
12/30
13/30
14/30
15/30R-b A-b A-b A-b
16/30
17/30
18/30
19/30
20/30
21/30
22/30
23/30
24/30
25/30
26/30
27/30
28/30
29/30
30/30

Trailers given in replies are filled; those carried in the patches from earlier versions are outlined with dashes. Scroll the table sideways for all 4 reviewers.

Read the v3 thread

Cover letter [PATCH v3 00/30] IIO-based thermal sensor driver for Allwinner H3 and A83T SoC

Allwiner H3 and A83T SoCs have a thermal sensor, which is a large refactored version of the old Allwinner "GPADC" (although it have already only thermal part left in A33).

This patch tried to add support for the sensor in H3 and A83T based on

This Patchtseries was in the beginning based on Icenowy Zengs v4 patchseries [1]. Since we decided to merge the mfd driver into the GPADC this changed. So only one patch could be reused.

Patches that adds support for H5, A64, A80 and H6 SoCs are allready prepared, and will be upstreamed if this patchseries is applied and the testing is done.

Sorry for delaying this.

Regards,
Philipp

changes since v2:
* mfd driver is now merged into the gpadc driver
* complete rework

changes since v1:
* collecting all acks
* rewording commits/fix typos
* move code in place where it is used
* fix naming conventions of defines
* clarify commits
* update documentation to cover the new nvmem calibraion
* change nvmem calibration

Icenowy Zheng (1):
iio: adc: sun4i-gpadc-iio: rename A33-specified registers to contain

    A33

Philipp Rossak (29):
mfd: Makefile: Remove build option for MFD:sun4i-gpadc
mfd: Kconfig: Remove MFD_SUN4I_GPADC config option
iio: adc: Remove ID table
iio: adc: Kconfig: Update Kconfig to new build options
iio: adc: move SUN4I_GPADC_CHANNEL define to header file
iio: adc: remove ofnode options
iio: adc: remove mfd_probe & sunwi_irq_init function
iio: adc: remove hwmon structure
iio: adc: Threat A33 as thermal sensor and remove non thermal sun4i
channel
iio: adc: rework irq and adc_channel handling
iio: adc: add new compatibles
mfd: Remove old mfd driver & Move sun4i-gpadc.h to iio/adc/
arm: config: Enable SUN4I_GPADC in defconfig
dt-bindings: update the Allwinner GPADC device tree binding for H3 &

    A83T

iio: adc: sun4i-gpadc-iio: rework: readout temp_data
iio: adc: sun4i-gpadc-iio: rework: support clocks and reset
iio: adc: sun4i-gpadc-iio: rework: support multiple sensors
iio: adc: sun4i-gpadc-iio: rework: support nvmem calibration data
iio: adc: sun4i-gpadc-iio: rework: device specific suspend & resume
iio: adc: sun4i-gpadc-iio: add support for H3 thermal sensor
iio: adc: sun4i-gpadc-iio: add support for A83T thermal sensor
ARM: dts: sunxi-h3-h5: add support for the thermal sensor in H3 and H5
ARM: dts: sun8i: h3: add support for the thermal sensor in H3
ARM: dts: sun8i: h3: add thermal zone to H3
ARM: dts: sun8i: h3: enable H3 sid controller
ARM: dts: sun8i: h3: use calibration for ths
ARM: dts: sun8i: a83t: add support for the thermal sensor in A83T
ARM: dts: sun8i: a83t: add thermal zone to A83T
ARM: sun8i: a83t: full range OPP tables and CPUfreq

 .../devicetree/bindings/iio/adc/sun4i-gpadc.txt    |  41 +-
 arch/arm/boot/dts/sun8i-a83t.dtsi                  | 143 +++++
 arch/arm/boot/dts/sun8i-h3.dtsi                    |  52 ++
 arch/arm/boot/dts/sunxi-h3-h5.dtsi                 |  10 +
 arch/arm/configs/sunxi_defconfig                   |   1 +
 drivers/iio/adc/Kconfig                            |  11 +-
 drivers/iio/adc/sun4i-gpadc-iio.c                  | 617 +++++++++++++--------
 drivers/mfd/Kconfig                                |  17 -
 drivers/mfd/Makefile                               |   1 -
 drivers/mfd/sun4i-gpadc.c                          | 181 ------
 include/linux/{mfd => iio/adc}/sun4i-gpadc.h       |  47 +-
 11 files changed, 681 insertions(+), 440 deletions(-)
 delete mode 100644 drivers/mfd/sun4i-gpadc.c
 rename include/linux/{mfd => iio/adc}/sun4i-gpadc.h (72%)
Signature · 1 line
2.11.0