[GIT PULL] Thermal control updates for v5.16-rc1

From: Rafael J. Wysocki
Date: Tue Nov 02 2021 - 15:55:10 EST

Hi Linus,

Please pull from the tag

git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm.git \

with top-most commit 46e9f92f31e67385fab8b49c030635415f36b362

Merge branches 'thermal-int340x', 'thermal-powerclamp' and 'thermal-docs'

on top of commit 3906fe9bb7f1a2c8667ae54e967dc8690824f4ea

Linux 5.15-rc7

to receive thermal control updates for 5.16-rc1.

These extend the thermal trip point crossing notifications sent via
netlink to contain the temperature causing the trip point to be
crossed, deprecate the user space thermal governor, add new DT
bindings to drivers, move ABI documentation to Documentation/ABI,
fix assorted issues and clean up code.


- Constify a variable in thermal MMIO driver (Rikard Falkeborn).

- Add the current temperature in the netlink message when crossing a
trip point in order to prevent useless back and forth reading from
userspace (Daniel Lezcano).

- Add support for the 'HC' variant on PM8998 PMIC in order to support
VADC channels on recent QCom boards (Bjorn Andersson).

- Add support for calibration values from hardware when they are
fused (Niklas Söderlund).

- Fix NULL pointer dereference in the thermal_release callback when
an error occurs in the thermal_zone_device_register() (Yuanzheng

- Fix use-after-free in __thermal_cooling_device_register() in the
error path (Ziyang Xuan).

- Fix compilation of the LMh driver when CONFIG_QCOM_SCM is not set
(Jackie Liu).

- Add timeout when reading a register that can block forever in
certain circumstances in the tsens driver (Ansuel Smith).

- Add DT binding for the reset lines and use them in the rockchip
sensor driver (Johan Jonker).

- Add new uniphier NX1 SoC temperature sensor (Kunihiko Hayashi).

- Save and restore the TCC value in the int340x driver (Antoine

- Deprecate the writability of the cooling device state sysfs file
and the user space governor (Daniel Lezcano).

- Delete bogus length check in int340x (Dan Carpenter).

- Use bitmap_zalloc/bitmap_free when applicable in intel_powerclamp
(Christophe JAILLET).

- Move thermal ABI documentation to Documentation/ABI (Mauro Carvalho



Ansuel Smith (1):
thermal/drivers/tsens: Add timeout to get_temp_tsens_valid

Antoine Tenart (1):
thermal/drivers/int340x: Improve the tcc offset saving for suspend/resume

Bjorn Andersson (2):
dt-bindings: thermal: qcom: add HC variant of adc-thermal monitor bindings
thermal/drivers/qcom/spmi-adc-tm5: Add support for HC variant

Christophe JAILLET (1):
thermal: intel_powerclamp: Use bitmap_zalloc/bitmap_free when applicable

Dan Carpenter (1):
thermal: int340x: delete bogus length check

Daniel Lezcano (3):
thermal/drivers/netlink: Add the temperature when crossing a trip point
thermal/core: Make the userspace governor deprecated
thermal/core: Deprecate changing cooling device state from userspace

Jackie Liu (1):
thermal/drivers/qcom/lmh: make QCOM_LMH depends on QCOM_SCM

Johan Jonker (3):
dt-bindings: thermal: allow more resets for tsadc node in
dt-bindings: thermal: remove redundant comments from rockchip-thermal.yaml
thermal/drivers/rockchip_thermal: Allow more resets for tsadc node

Kunihiko Hayashi (2):
dt-bindings: thermal: uniphier: Add binding for NX1 SoC
thermal/drivers/uniphier: Add compatible string for NX1 SoC

Mauro Carvalho Chehab (1):
thermal: Move ABI documentation to Documentation/ABI

Niklas Söderlund (2):
thermal: rcar_gen3_thermal: Store thcode and ptat in priv data
thermal: rcar_gen3_thermal: Read calibration from hardware

Rikard Falkeborn (1):
thermal/drivers/thermal_mmio: Constify static struct thermal_mmio_ops

Yuanzheng Song (1):
thermal/core: Fix null pointer dereference in thermal_release()

Ziyang Xuan (1):
thermal/core: fix a UAF bug in __thermal_cooling_device_register()


Documentation/ABI/testing/sysfs-class-thermal | 259 +++++++++++++++++++++
.../bindings/thermal/qcom-spmi-adc-tm-hc.yaml | 149 ++++++++++++
.../bindings/thermal/rockchip-thermal.yaml | 23 +-
.../thermal/socionext,uniphier-thermal.yaml | 1 +
Documentation/driver-api/thermal/sysfs-api.rst | 225 +-----------------
drivers/thermal/gov_user_space.c | 9 +
.../intel/int340x_thermal/int3400_thermal.c | 9 +-
.../intel/int340x_thermal/int3401_thermal.c | 8 +-
.../int340x_thermal/processor_thermal_device.c | 36 ++-
.../int340x_thermal/processor_thermal_device.h | 1 +
.../int340x_thermal/processor_thermal_device_pci.c | 18 +-
.../processor_thermal_device_pci_legacy.c | 8 +-
drivers/thermal/intel/intel_powerclamp.c | 8 +-
drivers/thermal/qcom/Kconfig | 2 +-
drivers/thermal/qcom/qcom-spmi-adc-tm5.c | 41 +++-
drivers/thermal/qcom/tsens.c | 29 ++-
drivers/thermal/rcar_gen3_thermal.c | 113 ++++++---
drivers/thermal/rockchip_thermal.c | 2 +-
drivers/thermal/thermal_core.c | 22 +-
drivers/thermal/thermal_mmio.c | 2 +-
drivers/thermal/thermal_netlink.c | 11 +-
drivers/thermal/thermal_netlink.h | 8 +-
drivers/thermal/thermal_sysfs.c | 3 +
drivers/thermal/uniphier_thermal.c | 4 +
25 files changed, 679 insertions(+), 314 deletions(-)