aa1acb0451
This driver is based on the thermal management framework in thermal_sys.c. A thermal zone device is created with the trip points to which cooling devices can be bound, the current cooling device is cpufreq, e.g. CPU frequency is clipped down to cool the CPU, and other cooling devices can be added and bound to the trip points dynamically. The platform specific PRCMU interrupts are used to active thermal update when trip points are reached. Signed-off-by: hongbo.zhang <hongbo.zhang@linaro.com> Reviewed-by: Viresh Kumar <viresh.kumar@linaro.org> Reviewed-by: Francesco Lavra <francescolavra.fl@gmail.com> Signed-off-by: Zhang Rui <rui.zhang@intel.com>
126 lines
3.5 KiB
Plaintext
126 lines
3.5 KiB
Plaintext
#
|
|
# Generic thermal sysfs drivers configuration
|
|
#
|
|
|
|
menuconfig THERMAL
|
|
tristate "Generic Thermal sysfs driver"
|
|
help
|
|
Generic Thermal Sysfs driver offers a generic mechanism for
|
|
thermal management. Usually it's made up of one or more thermal
|
|
zone and cooling device.
|
|
Each thermal zone contains its own temperature, trip points,
|
|
cooling devices.
|
|
All platforms with ACPI thermal support can use this driver.
|
|
If you want this support, you should say Y or M here.
|
|
|
|
if THERMAL
|
|
|
|
config THERMAL_HWMON
|
|
bool
|
|
depends on HWMON=y || HWMON=THERMAL
|
|
default y
|
|
|
|
choice
|
|
prompt "Default Thermal governor"
|
|
default THERMAL_DEFAULT_GOV_STEP_WISE
|
|
help
|
|
This option sets which thermal governor shall be loaded at
|
|
startup. If in doubt, select 'step_wise'.
|
|
|
|
config THERMAL_DEFAULT_GOV_STEP_WISE
|
|
bool "step_wise"
|
|
select STEP_WISE
|
|
help
|
|
Use the step_wise governor as default. This throttles the
|
|
devices one step at a time.
|
|
|
|
config THERMAL_DEFAULT_GOV_FAIR_SHARE
|
|
bool "fair_share"
|
|
select FAIR_SHARE
|
|
help
|
|
Use the fair_share governor as default. This throttles the
|
|
devices based on their 'contribution' to a zone. The
|
|
contribution should be provided through platform data.
|
|
|
|
config THERMAL_DEFAULT_GOV_USER_SPACE
|
|
bool "user_space"
|
|
select USER_SPACE
|
|
help
|
|
Select this if you want to let the user space manage the
|
|
lpatform thermals.
|
|
|
|
endchoice
|
|
|
|
config FAIR_SHARE
|
|
bool "Fair-share thermal governor"
|
|
help
|
|
Enable this to manage platform thermals using fair-share governor.
|
|
|
|
config STEP_WISE
|
|
bool "Step_wise thermal governor"
|
|
help
|
|
Enable this to manage platform thermals using a simple linear
|
|
|
|
config USER_SPACE
|
|
bool "User_space thermal governor"
|
|
help
|
|
Enable this to let the user space manage the platform thermals.
|
|
|
|
config CPU_THERMAL
|
|
bool "generic cpu cooling support"
|
|
depends on CPU_FREQ
|
|
select CPU_FREQ_TABLE
|
|
help
|
|
This implements the generic cpu cooling mechanism through frequency
|
|
reduction, cpu hotplug and any other ways of reducing temperature. An
|
|
ACPI version of this already exists(drivers/acpi/processor_thermal.c).
|
|
This will be useful for platforms using the generic thermal interface
|
|
and not the ACPI interface.
|
|
If you want this support, you should say Y here.
|
|
|
|
config SPEAR_THERMAL
|
|
bool "SPEAr thermal sensor driver"
|
|
depends on PLAT_SPEAR
|
|
depends on OF
|
|
help
|
|
Enable this to plug the SPEAr thermal sensor driver into the Linux
|
|
thermal framework
|
|
|
|
config RCAR_THERMAL
|
|
tristate "Renesas R-Car thermal driver"
|
|
depends on ARCH_SHMOBILE
|
|
help
|
|
Enable this to plug the R-Car thermal sensor driver into the Linux
|
|
thermal framework
|
|
|
|
config EXYNOS_THERMAL
|
|
tristate "Temperature sensor on Samsung EXYNOS"
|
|
depends on (ARCH_EXYNOS4 || ARCH_EXYNOS5)
|
|
depends on CPU_THERMAL
|
|
help
|
|
If you say yes here you get support for TMU (Thermal Managment
|
|
Unit) on SAMSUNG EXYNOS series of SoC.
|
|
|
|
config DB8500_THERMAL
|
|
bool "DB8500 thermal management"
|
|
depends on ARCH_U8500
|
|
default y
|
|
help
|
|
Adds DB8500 thermal management implementation according to the thermal
|
|
management framework. A thermal zone with several trip points will be
|
|
created. Cooling devices can be bound to the trip points to cool this
|
|
thermal zone if trip points reached.
|
|
|
|
config DB8500_CPUFREQ_COOLING
|
|
tristate "DB8500 cpufreq cooling"
|
|
depends on ARCH_U8500
|
|
depends on CPU_THERMAL
|
|
default y
|
|
help
|
|
Adds DB8500 cpufreq cooling devices, and these cooling devices can be
|
|
bound to thermal zone trip points. When a trip point reached, the
|
|
bound cpufreq cooling device turns active to set CPU frequency low to
|
|
cool down the CPU.
|
|
|
|
endif
|