Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 5c4a6083 authored by Linus Torvalds's avatar Linus Torvalds
Browse files
Pull thermal management updates from Zhang Rui:

 - Add locking for cooling device sysfs attribute in case the cooling
   device state is changed by userspace and thermal framework
   simultaneously. (Thara Gopinath)

 - Fix a problem that passive cooling is reset improperly after system
   suspend/resume. (Wei Wang)

 - Cleanup the driver/thermal/ directory by moving intel and qcom
   platform specific drivers to platform specific sub-directories. (Amit
   Kucheria)

 - Some trivial cleanups. (Lukasz Luba, Wolfram Sang)

* 'next' of git://git.kernel.org/pub/scm/linux/kernel/git/rzhang/linux:
  thermal/intel: fixup for Kconfig string parsing tightening up
  drivers: thermal: Move QCOM_SPMI_TEMP_ALARM into the qcom subdir
  drivers: thermal: Move various drivers for intel platforms into a subdir
  thermal: Fix locking in cooling device sysfs update cur_state
  Thermal: do not clear passive state during system sleep
  thermal: zx2967_thermal: simplify getting .driver_data
  thermal: st: st_thermal: simplify getting .driver_data
  thermal: spear_thermal: simplify getting .driver_data
  thermal: rockchip_thermal: simplify getting .driver_data
  thermal: int340x_thermal: int3400_thermal: simplify getting .driver_data
  thermal: remove unused function parameter
parents c2802302 24ef9ec8
Loading
Loading
Loading
Loading
+5 −89
Original line number Diff line number Diff line
@@ -326,84 +326,6 @@ config DA9062_THERMAL
	  zone.
	  Compatible with the DA9062 and DA9061 PMICs.

config INTEL_POWERCLAMP
	tristate "Intel PowerClamp idle injection driver"
	depends on THERMAL
	depends on X86
	depends on CPU_SUP_INTEL
	help
	  Enable this to enable Intel PowerClamp idle injection driver. This
	  enforce idle time which results in more package C-state residency. The
	  user interface is exposed via generic thermal framework.

config X86_PKG_TEMP_THERMAL
	tristate "X86 package temperature thermal driver"
	depends on X86_THERMAL_VECTOR
	select THERMAL_GOV_USER_SPACE
	select THERMAL_WRITABLE_TRIPS
	default m
	help
	  Enable this to register CPU digital sensor for package temperature as
	  thermal zone. Each package will have its own thermal zone. There are
	  two trip points which can be set by user to get notifications via thermal
	  notification methods.

config INTEL_SOC_DTS_IOSF_CORE
	tristate
	depends on X86 && PCI
	select IOSF_MBI
	help
	  This is becoming a common feature for Intel SoCs to expose the additional
	  digital temperature sensors (DTSs) using side band interface (IOSF). This
	  implements the common set of helper functions to register, get temperature
	  and get/set thresholds on DTSs.

config INTEL_SOC_DTS_THERMAL
	tristate "Intel SoCs DTS thermal driver"
	depends on X86 && PCI && ACPI
	select INTEL_SOC_DTS_IOSF_CORE
	select THERMAL_WRITABLE_TRIPS
	help
	  Enable this to register Intel SoCs (e.g. Bay Trail) platform digital
	  temperature sensor (DTS). These SoCs have two additional DTSs in
	  addition to DTSs on CPU cores. Each DTS will be registered as a
	  thermal zone. There are two trip points. One of the trip point can
	  be set by user mode programs to get notifications via Linux thermal
	  notification methods.The other trip is a critical trip point, which
	  was set by the driver based on the TJ MAX temperature.

config INTEL_QUARK_DTS_THERMAL
	tristate "Intel Quark DTS thermal driver"
	depends on X86_INTEL_QUARK
	help
	  Enable this to register Intel Quark SoC (e.g. X1000) platform digital
	  temperature sensor (DTS). For X1000 SoC, it has one on-die DTS.
	  The DTS will be registered as a thermal zone. There are two trip points:
	  hot & critical. The critical trip point default value is set by
	  underlying BIOS/Firmware.

menu "ACPI INT340X thermal drivers"
source "drivers/thermal/int340x_thermal/Kconfig"
endmenu

config INTEL_BXT_PMIC_THERMAL
	tristate "Intel Broxton PMIC thermal driver"
	depends on X86 && INTEL_SOC_PMIC_BXTWC && REGMAP
	help
	  Select this driver for Intel Broxton PMIC with ADC channels monitoring
	  system temperature measurements and alerts.
	  This driver is used for monitoring the ADC channels of PMIC and handles
	  the alert trip point interrupts and notifies the thermal framework with
	  the trip point and temperature details of the zone.

config INTEL_PCH_THERMAL
	tristate "Intel PCH Thermal Reporting Driver"
	depends on X86 && PCI
	help
	  Enable this to support thermal reporting on certain intel PCHs.
	  Thermal reporting device will provide temperature reading,
	  programmable trip points and other information.

config MTK_THERMAL
	tristate "Temperature sensor driver for mediatek SoCs"
	depends on ARCH_MEDIATEK || COMPILE_TEST
@@ -415,6 +337,11 @@ config MTK_THERMAL
	  Enable this option if you want to have support for thermal management
	  controller present in Mediatek SoCs

menu "Intel thermal drivers"
depends on X86 || X86_INTEL_QUARK || COMPILE_TEST
source "drivers/thermal/intel/Kconfig"
endmenu

menu "Broadcom thermal drivers"
depends on ARCH_BCM || ARCH_BRCMSTB || ARCH_BCM2835 || COMPILE_TEST
source "drivers/thermal/broadcom/Kconfig"
@@ -447,17 +374,6 @@ config TANGO_THERMAL

source "drivers/thermal/tegra/Kconfig"

config QCOM_SPMI_TEMP_ALARM
	tristate "Qualcomm SPMI PMIC Temperature Alarm"
	depends on OF && SPMI && IIO
	select REGMAP_SPMI
	help
	  This enables a thermal sysfs driver for Qualcomm plug-and-play (QPNP)
	  PMIC devices. It shows up in sysfs as a thermal sensor with multiple
	  trip points. The temperature reported by the thermal sensor reflects the
	  real time die temperature if an ADC is present or an estimate of the
	  temperature based upon the over temperature stage value.

config GENERIC_ADC_THERMAL
	tristate "Generic ADC based thermal sensor"
	depends on IIO
+1 −9
Original line number Diff line number Diff line
@@ -29,7 +29,6 @@ thermal_sys-$(CONFIG_DEVFREQ_THERMAL) += devfreq_cooling.o

# platform thermal drivers
obj-y				+= broadcom/
obj-$(CONFIG_QCOM_SPMI_TEMP_ALARM)	+= qcom-spmi-temp-alarm.o
obj-$(CONFIG_SPEAR_THERMAL)	+= spear_thermal.o
obj-$(CONFIG_ROCKCHIP_THERMAL)	+= rockchip_thermal.o
obj-$(CONFIG_RCAR_THERMAL)	+= rcar_thermal.o
@@ -44,15 +43,8 @@ obj-$(CONFIG_IMX_THERMAL) += imx_thermal.o
obj-$(CONFIG_MAX77620_THERMAL)	+= max77620_thermal.o
obj-$(CONFIG_QORIQ_THERMAL)	+= qoriq_thermal.o
obj-$(CONFIG_DA9062_THERMAL)	+= da9062-thermal.o
obj-$(CONFIG_INTEL_POWERCLAMP)	+= intel_powerclamp.o
obj-$(CONFIG_X86_PKG_TEMP_THERMAL)	+= x86_pkg_temp_thermal.o
obj-$(CONFIG_INTEL_SOC_DTS_IOSF_CORE)	+= intel_soc_dts_iosf.o
obj-$(CONFIG_INTEL_SOC_DTS_THERMAL)	+= intel_soc_dts_thermal.o
obj-$(CONFIG_INTEL_QUARK_DTS_THERMAL)	+= intel_quark_dts_thermal.o
obj-y				+= intel/
obj-$(CONFIG_TI_SOC_THERMAL)	+= ti-soc-thermal/
obj-$(CONFIG_INT340X_THERMAL)  += int340x_thermal/
obj-$(CONFIG_INTEL_BXT_PMIC_THERMAL) += intel_bxt_pmic_thermal.o
obj-$(CONFIG_INTEL_PCH_THERMAL)	+= intel_pch_thermal.o
obj-y				+= st/
obj-$(CONFIG_QCOM_TSENS)	+= qcom/
obj-y				+= tegra/
+77 −0
Original line number Diff line number Diff line
config INTEL_POWERCLAMP
	tristate "Intel PowerClamp idle injection driver"
	depends on THERMAL
	depends on X86
	depends on CPU_SUP_INTEL
	help
	  Enable this to enable Intel PowerClamp idle injection driver. This
	  enforce idle time which results in more package C-state residency. The
	  user interface is exposed via generic thermal framework.

config X86_PKG_TEMP_THERMAL
	tristate "X86 package temperature thermal driver"
	depends on X86_THERMAL_VECTOR
	select THERMAL_GOV_USER_SPACE
	select THERMAL_WRITABLE_TRIPS
	default m
	help
	  Enable this to register CPU digital sensor for package temperature as
	  thermal zone. Each package will have its own thermal zone. There are
	  two trip points which can be set by user to get notifications via thermal
	  notification methods.

config INTEL_SOC_DTS_IOSF_CORE
	tristate
	depends on X86 && PCI
	select IOSF_MBI
	help
	  This is becoming a common feature for Intel SoCs to expose the additional
	  digital temperature sensors (DTSs) using side band interface (IOSF). This
	  implements the common set of helper functions to register, get temperature
	  and get/set thresholds on DTSs.

config INTEL_SOC_DTS_THERMAL
	tristate "Intel SoCs DTS thermal driver"
	depends on X86 && PCI && ACPI
	select INTEL_SOC_DTS_IOSF_CORE
	select THERMAL_WRITABLE_TRIPS
	help
	  Enable this to register Intel SoCs (e.g. Bay Trail) platform digital
	  temperature sensor (DTS). These SoCs have two additional DTSs in
	  addition to DTSs on CPU cores. Each DTS will be registered as a
	  thermal zone. There are two trip points. One of the trip point can
	  be set by user mode programs to get notifications via Linux thermal
	  notification methods.The other trip is a critical trip point, which
	  was set by the driver based on the TJ MAX temperature.

config INTEL_QUARK_DTS_THERMAL
	tristate "Intel Quark DTS thermal driver"
	depends on X86_INTEL_QUARK
	help
	  Enable this to register Intel Quark SoC (e.g. X1000) platform digital
	  temperature sensor (DTS). For X1000 SoC, it has one on-die DTS.
	  The DTS will be registered as a thermal zone. There are two trip points:
	  hot & critical. The critical trip point default value is set by
	  underlying BIOS/Firmware.

menu "ACPI INT340X thermal drivers"
source "drivers/thermal/intel/int340x_thermal/Kconfig"
endmenu

config INTEL_BXT_PMIC_THERMAL
	tristate "Intel Broxton PMIC thermal driver"
	depends on X86 && INTEL_SOC_PMIC_BXTWC && REGMAP
	help
	  Select this driver for Intel Broxton PMIC with ADC channels monitoring
	  system temperature measurements and alerts.
	  This driver is used for monitoring the ADC channels of PMIC and handles
	  the alert trip point interrupts and notifies the thermal framework with
	  the trip point and temperature details of the zone.

config INTEL_PCH_THERMAL
	tristate "Intel PCH Thermal Reporting Driver"
	depends on X86 && PCI
	help
	  Enable this to support thermal reporting on certain intel PCHs.
	  Thermal reporting device will provide temperature reading,
	  programmable trip points and other information.
+12 −0
Original line number Diff line number Diff line
# SPDX-License-Identifier: GPL-2.0
#
# Makefile for various Intel thermal drivers.

obj-$(CONFIG_INTEL_POWERCLAMP)	+= intel_powerclamp.o
obj-$(CONFIG_X86_PKG_TEMP_THERMAL)	+= x86_pkg_temp_thermal.o
obj-$(CONFIG_INTEL_SOC_DTS_IOSF_CORE)	+= intel_soc_dts_iosf.o
obj-$(CONFIG_INTEL_SOC_DTS_THERMAL)	+= intel_soc_dts_thermal.o
obj-$(CONFIG_INTEL_QUARK_DTS_THERMAL)	+= intel_quark_dts_thermal.o
obj-$(CONFIG_INT340X_THERMAL)  += int340x_thermal/
obj-$(CONFIG_INTEL_BXT_PMIC_THERMAL) += intel_bxt_pmic_thermal.o
obj-$(CONFIG_INTEL_PCH_THERMAL)	+= intel_pch_thermal.o
Loading