linux-stable/drivers/thermal
Srinivas Pandruvada 7b145802ba thermal: int340x: Mode setting with new OS handshake
With the new OS handshake introduced by commit: "c7ff29763989 ("thermal:
int340x: Update OS policy capability handshake")", the "enabled" thermal
zone mode doesn't work in the same way as previously.

The "enabled" mode fails with -EINVAL when the new handshake is used.

To address this issue, when the new OS UUID mask is set:

 - When the mode is "enabled", return 0 as the firmware already has the
   latest policy mask.

 - When the mode is "disabled", update the firmware with the UUID mask
   of zero.

This way, the firmware can take over the thermal control.

Also reset the OS UUID mask, which allows user space to update with new
set of policies.

Fixes: c7ff297639 ("thermal: int340x: Update OS policy capability handshake")
Signed-off-by: Srinivas Pandruvada <srinivas.pandruvada@linux.intel.com>
[ rjw: Changelog edits, removed unneeded parens ]
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
2022-05-11 20:08:15 +02:00
..
broadcom thermal/drivers/brcmstb_thermal: Interrupt is optional 2022-03-08 21:26:09 +01:00
intel thermal: int340x: Mode setting with new OS handshake 2022-05-11 20:08:15 +02:00
qcom thermal/drivers/qcom/lmh: Add support for sm8150 2022-03-08 21:26:09 +01:00
samsung thermal/drivers/exynos: Fix an error code in exynos_tmu_probe() 2021-08-14 12:40:35 +02:00
st thermal/drivers/st: Use devm_platform_get_and_ioremap_resource() 2021-06-14 19:01:15 +02:00
tegra thermal: tegra-bpmp: Handle errors in BPMP response 2022-03-08 21:26:09 +01:00
ti-soc-thermal thermal/drivers/ti-soc-thermal: Remove unused function ti_thermal_get_temp() 2022-03-08 21:26:09 +01:00
amlogic_thermal.c thermal: amlogic: Omit superfluous error message in amlogic_thermal_probe() 2021-03-10 12:52:55 +01:00
armada_thermal.c
cpufreq_cooling.c thermal: cpufreq_cooling: Use new thermal pressure update function 2021-11-23 15:10:26 +05:30
cpuidle_cooling.c thermal/drivers/cpuidle_cooling: Fix use after error 2021-04-15 13:21:26 +02:00
da9062-thermal.c thermal/core: Remove ms based delay fields 2021-01-19 22:23:49 +01:00
db8500_thermal.c
devfreq_cooling.c thermal/drivers/devfreq_cooling: use HZ macros 2021-09-08 11:50:25 -07:00
dove_thermal.c
gov_bang_bang.c
gov_fair_share.c thermal/core/fair share: Use the lockless __thermal_cdev_update() function 2021-04-22 23:51:32 +02:00
gov_power_allocator.c thermal/core/power allocator: Use the lockless __thermal_cdev_update() function 2021-04-22 23:51:32 +02:00
gov_step_wise.c thermal/core: Remove the 'forced_passive' option 2021-01-19 22:22:45 +01:00
gov_user_space.c thermal/governor: Remove deprecated information 2022-04-22 16:47:40 +02:00
hisi_thermal.c thermal/drivers/hisi: Remove redundant dev_err call in hisi_thermal_probe() 2021-04-20 09:18:57 +02:00
imx8mm_thermal.c thermal/drivers/imx8mm: Enable ADC when enabling monitor 2021-12-02 11:12:24 +01:00
imx_sc_thermal.c thermal/drivers/imx_sc: Add missing of_node_put for loop iteration 2021-06-14 22:41:00 +02:00
imx_thermal.c thermal/drivers/imx: Implement runtime PM support 2021-11-30 15:42:28 +01:00
k3_bandgap.c
Kconfig thermal/governor: Remove deprecated information 2022-04-22 16:47:40 +02:00
khadas_mcu_fan.c thermal/core: Make cooling device state change private 2021-01-19 22:31:10 +01:00
kirkwood_thermal.c
Makefile thermal/drivers: Add TSU driver for RZ/G2L 2021-11-30 17:27:56 +01:00
max77620_thermal.c
mtk_thermal.c thermal/drivers/mediatek: Add sensors-support 2021-07-04 18:28:04 +02:00
qoriq_thermal.c
rcar_gen3_thermal.c thermal: rcar_gen3_thermal: Read calibration from hardware 2021-10-15 09:15:52 +02:00
rcar_thermal.c
rockchip_thermal.c thermal/drivers/rockchip_thermal: Allow more resets for tsadc node 2021-10-17 00:15:09 +02:00
rzg2l_thermal.c thermal/drivers/rz2gl: Add error check for reset_control_deassert() 2021-12-09 15:58:09 +01:00
spear_thermal.c
sprd_thermal.c thermal/drivers/sprd: Add missing of_node_put for loop iteration 2021-06-14 22:42:09 +02:00
sun8i_thermal.c thermal: Fix couple of spellos in the file sun8i_thermal.c 2021-03-10 12:54:58 +01:00
thermal-generic-adc.c
thermal_core.c thermal: core: Reset previous low and high trip during thermal zone init 2021-11-16 20:29:27 +01:00
thermal_core.h thermal/core: Create a helper __thermal_cdev_update() without a lock 2021-04-22 14:10:28 +02:00
thermal_helpers.c thermal/core: Create a helper __thermal_cdev_update() without a lock 2021-04-22 14:10:28 +02:00
thermal_hwmon.c
thermal_hwmon.h
thermal_mmio.c thermal/drivers/thermal_mmio: Constify static struct thermal_mmio_ops 2021-10-07 15:18:31 +02:00
thermal_netlink.c Merge branch 'thermal-hfi' 2022-03-18 19:00:26 +01:00
thermal_netlink.h thermal: netlink: Fix parameter type of thermal_genl_cpu_capability_event() stub 2022-02-07 20:45:42 +01:00
thermal_of.c thermal: Fix NULL pointer dereferences in of_thermal_ functions 2021-11-05 17:35:56 +01:00
thermal_sysfs.c Revert "thermal/core: Deprecate changing cooling device state from userspace" 2022-04-22 16:47:40 +02:00
uniphier_thermal.c thermal/drivers/uniphier: Add compatible string for NX1 SoC 2021-10-18 14:00:13 +02:00