Hello Rui, Please pull from git://git.kernel.org/pub/scm/linux/kernel/git/evalenti/linux-soc-thermal.git fixes to receive Thermal-SoC Management fixes for v3.19-rc2 with top-most 503ccc3fec4a56cdcfedc507cd1ea0d85e1fbfa2: thermal: cpu_cooling: return ERR_PTR() for !CPU_THERMAL or !THERMAL_OF (2014-12-17 09:00:04 -0400) on top of 88910638717dd195cff1dd1ea74772b159632bba: Merge tag 'staging-3.18-rc7' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/staging (2014-11-28 16:08:09 -0800) Specifics: - The content of this git pull was supposed to be part of v3.19-rc1, but it missed the merge window for different reasons. Thus, attempting to rc2 now. Good thing is that people had found a couple of issues in linux-next, and the pull includes additional fixes too. - In this pull, I am including a series of fixes that was supposed to make 3.18, but I decided to send them for v3.19. I left for v3.19 because the required changes modified a couple of APIs. Therefore, the redesign had to be done properly. The major fix here is to have proper sequencing between cpufreq layer and cpu cooling registration. A take away of this fix is an improvement in the thermal drivers code. Thermal drivers that require cpu cooling do not need to check for cpufreq layer. The requirement now is to propagate the error code, if any, while registering cpu cooling device. Thanks to Viresh for implementing the required CPUfreq changes. - While in the subject, Viresh took the opportunity to review the cpu cooling code from a cpufreq layer user perspective, which resulted in several cleanups. - On top of Viresh's work, a couple of minor fixes were sent and included in this pull request. - The content in this pull depends on CPUfreq refactoring done by Viresh, which is part of the pull sent by Rafael J. W.: https://lkml.org/lkml/2014/12/8/704 - This pull also contains the material I had sent you previously: http://www.spinics.net/lists/linux-acpi/msg54562.html Thus, just pull this one and ignore the #3 above. BR, ---------------------------------------------------------------- Abhilash Kesavan (1): drivers: thermal: Remove ARCH_HAS_BANDGAP dependency for samsung Dan Carpenter (1): thermal: cpu_cooling: small memory leak on error Eduardo Valentin (3): thermal: cpu_cooling: check for the readiness of cpufreq layer thermal: db8500: Do not print error message in the EPROBE_DEFER case thermal: ti-soc-thermal: Do not print error message in the EPROBE_DEFER case Fabio Estevam (1): thermal: imx: Do not print error message in the EPROBE_DEFER case Javi Merino (1): thermal: cpu_cooling: return ERR_PTR() for !CPU_THERMAL or !THERMAL_OF Lukasz Majewski (1): thermal:core:fix: Check return code of the ->get_max_state() callback Punit Agrawal (1): thermal: Fix cdev registration with THERMAL_NO_LIMIT on 64bit Viresh Kumar (25): thermal: db8500: pass cpu_present_mask to cpufreq_cooling_register() thermal: imx: pass cpu_present_mask to cpufreq_cooling_register() thermal: exynos: pass cpu_present_mask to cpufreq_cooling_register() thermal: cpu_cooling: random comment fixups thermal: cpu_cooling: fix doc comment over struct cpufreq_cooling_device thermal: cpu_cooling: Add comment to clarify relation between cooling state and frequency thermal: cpu_cooling: Pass variable instead of its type to sizeof() thermal: cpu_cooling: no need to set cpufreq_state to zero thermal: cpu_cooling: no need to set cpufreq_dev to NULL thermal: cpu_cooling: no need to initialze 'ret' thermal: cpu_cooling: propagate error returned by idr_alloc() thermal: cpu_cooling: Don't match min/max frequencies for all CPUs on cooling register thermal: cpu_cooling: don't iterate over all allowed_cpus to update cpufreq policy thermal: cpu_cooling: Don't check is_cpufreq_valid() thermal: cpu_cooling: do error handling at the bottom in __cpufreq_cooling_register() thermal: cpu_cooling: initialize 'cpufreq_val' on registration thermal: cpu_cooling: Merge cpufreq_apply_cooling() into cpufreq_set_cur_state() thermal: cpu_cooling: remove unnecessary wrapper get_cpu_frequency() thermal: cpu_cooling: find max level during device registration thermal: cpu_cooling: get_property() doesn't need to support GET_MAXL anymore thermal: cpu_cooling: use cpufreq_dev_list instead of cpufreq_dev_count thermal: cpu_cooling: Pass 'cpufreq_dev' to get_property() thermal: cpu_cooling: Store frequencies in descending order thermal: cpu_cooling: Use cpufreq_dev->freq_table for finding level/freq thermal: cpu_cooling: update copyright tags drivers/thermal/cpu_cooling.c | 359 ++++++++------------- drivers/thermal/db8500_cpufreq_cooling.c | 20 +- drivers/thermal/imx_thermal.c | 15 +- drivers/thermal/samsung/Kconfig | 2 +- drivers/thermal/samsung/exynos_thermal_common.c | 12 +- drivers/thermal/samsung/exynos_tmu.c | 5 +- drivers/thermal/thermal_core.c | 6 +- drivers/thermal/ti-soc-thermal/ti-thermal-common.c | 17 +- include/dt-bindings/thermal/thermal.h | 2 +- include/linux/cpu_cooling.h | 6 +- include/linux/thermal.h | 2 +- 11 files changed, 177 insertions(+), 269 deletions(-)
Attachment:
signature.asc
Description: Digital signature