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

Philipp Rossak
2018-08-30T15:48:27Z

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%)

--
2.11.0