2
0
mirror of https://github.com/edk2-porting/linux-next.git synced 2024-12-25 05:34:00 +08:00
linux-next/drivers/thermal
Krzysztof Kozlowski 9e4249b403 thermal: exynos: Fix first temperature read after registering sensor
Thermal core could not read the temperature after registering the
thermal sensor with thermal_zone_of_sensor_register() because the driver
was not yet initialized.

The call trace looked like:
    exynos_tmu_probe()
        thermal_zone_of_sensor_register()
            of_thermal_set_mode()
                thermal_zone_device_update()
                    exynos_get_temp()
                        if (!data->tmu_read) return -EINVAL;
        exynos_map_dt_data()
            data->tmu_read = ...

This produced an error in dmesg:
thermal thermal_zone0: failed to read out thermal zone (-22)

Register the thermal_zone_device later, after parsing Device Tree and
enabling necessary clocks, but before calling exynos_tmu_initialize()
which uses the registered thermal_zone_device.

Reviewed-by: Alim Akhtar <alim.akhtar@samsung.com>
Tested-by: Alim Akhtar <alim.akhtar@samsung.com>
Acked-by: Lukasz Majewski <l.majewski@samsung.com>
Tested-by: Lukasz Majewski <l.majewski@samsung.com>
Signed-off-by: Krzysztof Kozlowski <k.kozlowski@samsung.com>
Fixes: 3b6a1a805f ("thermal: samsung: core: Exynos TMU rework to use device tree for configuration")
Signed-off-by: Eduardo Valentin <edubezval@gmail.com>
2015-11-04 11:08:30 -08:00
..
int340x_thermal thermal: consistently use int for temperatures 2015-08-03 23:15:50 +08:00
samsung thermal: exynos: Fix first temperature read after registering sensor 2015-11-04 11:08:30 -08:00
st Merge branch 'next' of git://git.kernel.org/pub/scm/linux/kernel/git/rzhang/linux 2015-09-11 16:13:47 -07:00
ti-soc-thermal thermal: ti-soc-thermal: add OMAP36xx support 2015-09-29 14:13:19 -07:00
armada_thermal.c thermal: armada: Fix possible overflow in the Armada 380 thermal sensor formula 2015-10-30 11:33:23 -07:00
clock_cooling.c thermal: introduce clock cooling device 2014-11-20 10:43:16 -04:00
cpu_cooling.c thermal: cpu_cooling: free power table on error or when unregistering 2015-09-13 20:34:05 -07:00
db8500_cpufreq_cooling.c thermal: db8500_cpufreq_cooling: Fix module autoload for OF platform driver 2015-09-13 20:26:19 -07:00
db8500_thermal.c thermal: consistently use int for temperatures 2015-08-03 23:15:50 +08:00
devfreq_cooling.c devfreq_cooling: return on allocation failure 2015-11-04 11:06:29 -08:00
dove_thermal.c thermal: consistently use int for temperatures 2015-08-03 23:15:50 +08:00
fair_share.c thermal: consistently use int for temperatures 2015-08-03 23:15:50 +08:00
gov_bang_bang.c thermal: consistently use int for temperatures 2015-08-03 23:15:50 +08:00
hisi_thermal.c Merge branches 'thermal-core' and 'thermal-intel' of .git into next 2015-09-02 10:08:02 +08:00
imx_thermal.c thermal: underflow bug in imx_set_trip_temp() 2015-10-30 11:35:50 -07:00
intel_pch_thermal.c thermal: fix intel PCH thermal driver mismerge 2015-09-11 20:06:59 -07:00
intel_powerclamp.c Merge branch 'next' of git://git.kernel.org/pub/scm/linux/kernel/git/rzhang/linux 2015-09-11 16:13:47 -07:00
intel_quark_dts_thermal.c thermal: consistently use int for temperatures 2015-08-03 23:15:50 +08:00
intel_soc_dts_iosf.c thermal: consistently use int for temperatures 2015-08-03 23:15:50 +08:00
intel_soc_dts_iosf.h Thermal: Intel SoC: DTS thermal IOSF core 2015-05-01 11:20:42 +08:00
intel_soc_dts_thermal.c Thermal: Intel SoC: DTS thermal use common APIs 2015-05-01 11:20:42 +08:00
Kconfig thermal: Add devfreq cooling 2015-10-30 10:21:01 -07:00
kirkwood_thermal.c thermal: consistently use int for temperatures 2015-08-03 23:15:50 +08:00
Makefile thermal: Add devfreq cooling 2015-10-30 10:21:01 -07:00
of-thermal.c thermal: consistently use int for temperatures 2015-08-03 23:15:50 +08:00
power_allocator.c thermal: power_allocator: exit early if there are no cooling devices 2015-09-20 15:37:16 +08:00
qcom-spmi-temp-alarm.c thermal: consistently use int for temperatures 2015-08-03 23:15:50 +08:00
rcar_thermal.c thermal: consistently use int for temperatures 2015-08-03 23:15:50 +08:00
rockchip_thermal.c thermal: rockchip: support the sleep pinctrl state to avoid glitches in s2r 2015-11-03 09:57:42 -08:00
spear_thermal.c thermal: consistently use int for temperatures 2015-08-03 23:15:50 +08:00
step_wise.c thermal: consistently use int for temperatures 2015-08-03 23:15:50 +08:00
tegra_soctherm.c thermal: consistently use int for temperatures 2015-08-03 23:15:50 +08:00
thermal_core.c thermal: Add a function to get the minimum power 2015-09-14 07:39:46 -07:00
thermal_core.h Merge branch 'linus' of git://git.kernel.org/pub/scm/linux/kernel/git/evalenti/linux-soc-thermal into thermal-soc 2015-06-11 10:55:42 +08:00
thermal_hwmon.c thermal: consistently use int for temperatures 2015-08-03 23:15:50 +08:00
thermal_hwmon.h thermal: hwmon: move hwmon support to single file 2013-09-03 09:09:12 -04:00
user_space.c Thermal: build thermal governors into thermal_sys module 2013-04-14 23:28:43 +08:00
x86_pkg_temp_thermal.c thermal: consistently use int for temperatures 2015-08-03 23:15:50 +08:00