2019-05-19 20:07:45 +08:00
|
|
|
# SPDX-License-Identifier: GPL-2.0-only
|
2011-06-02 05:18:22 +08:00
|
|
|
#
|
|
|
|
# ARM CPU Frequency scaling drivers
|
|
|
|
#
|
|
|
|
|
2017-12-14 01:05:35 +08:00
|
|
|
config ACPI_CPPC_CPUFREQ
|
|
|
|
tristate "CPUFreq driver based on the ACPI CPPC spec"
|
|
|
|
depends on ACPI_PROCESSOR
|
|
|
|
select ACPI_CPPC_LIB
|
|
|
|
help
|
|
|
|
This adds a CPUFreq driver which uses CPPC methods
|
|
|
|
as described in the ACPIv5.1 spec. CPPC stands for
|
|
|
|
Collaborative Processor Performance Controls. It
|
|
|
|
is based on an abstract continuous scale of CPU
|
|
|
|
performance values which allows the remote power
|
|
|
|
processor to flexibly optimize for power and
|
|
|
|
performance. CPPC relies on power management firmware
|
|
|
|
support for its operation.
|
|
|
|
|
|
|
|
If in doubt, say N.
|
|
|
|
|
2020-06-23 18:19:40 +08:00
|
|
|
config ACPI_CPPC_CPUFREQ_FIE
|
|
|
|
bool "Frequency Invariance support for CPPC cpufreq driver"
|
|
|
|
depends on ACPI_CPPC_CPUFREQ && GENERIC_ARCH_TOPOLOGY
|
|
|
|
default y
|
|
|
|
help
|
|
|
|
This extends frequency invariance support in the CPPC cpufreq driver,
|
|
|
|
by using CPPC delivered and reference performance counters.
|
|
|
|
|
|
|
|
If in doubt, say N.
|
|
|
|
|
2019-06-13 00:28:15 +08:00
|
|
|
config ARM_ALLWINNER_SUN50I_CPUFREQ_NVMEM
|
|
|
|
tristate "Allwinner nvmem based SUN50I CPUFreq driver"
|
|
|
|
depends on ARCH_SUNXI
|
|
|
|
depends on NVMEM_SUNXI_SID
|
|
|
|
select PM_OPP
|
|
|
|
help
|
|
|
|
This adds the nvmem based CPUFreq driver for Allwinner
|
|
|
|
h6 SoC.
|
|
|
|
|
|
|
|
To compile this driver as a module, choose M here: the
|
|
|
|
module will be called sun50i-cpufreq-nvmem.
|
|
|
|
|
2017-12-14 23:00:05 +08:00
|
|
|
config ARM_ARMADA_37XX_CPUFREQ
|
|
|
|
tristate "Armada 37xx CPUFreq support"
|
2018-04-24 23:45:06 +08:00
|
|
|
depends on ARCH_MVEBU && CPUFREQ_DT
|
2017-12-14 23:00:05 +08:00
|
|
|
help
|
|
|
|
This adds the CPUFreq driver support for Marvell Armada 37xx SoCs.
|
|
|
|
The Armada 37xx PMU supports 4 frequency and VDD levels.
|
|
|
|
|
2019-01-18 22:51:01 +08:00
|
|
|
config ARM_ARMADA_8K_CPUFREQ
|
|
|
|
tristate "Armada 8K CPUFreq driver"
|
|
|
|
depends on ARCH_MVEBU && CPUFREQ_DT
|
2020-06-22 20:01:23 +08:00
|
|
|
select ARMADA_AP_CPU_CLK
|
2019-01-18 22:51:01 +08:00
|
|
|
help
|
|
|
|
This enables the CPUFreq driver support for Marvell
|
|
|
|
Armada8k SOCs.
|
|
|
|
Armada8K device has the AP806 which supports scaling
|
|
|
|
to any full integer divider.
|
|
|
|
|
|
|
|
If in doubt, say N.
|
|
|
|
|
2017-12-14 01:05:35 +08:00
|
|
|
config ARM_SCPI_CPUFREQ
|
|
|
|
tristate "SCPI based CPUfreq driver"
|
2018-02-23 23:54:42 +08:00
|
|
|
depends on ARM_SCPI_PROTOCOL && COMMON_CLK_SCPI
|
2017-12-14 01:05:35 +08:00
|
|
|
help
|
2018-02-23 23:54:42 +08:00
|
|
|
This adds the CPUfreq driver support for ARM platforms using SCPI
|
|
|
|
protocol for CPU power management.
|
2017-12-14 01:05:35 +08:00
|
|
|
|
|
|
|
This driver uses SCPI Message Protocol driver to interact with the
|
|
|
|
firmware providing the CPU DVFS functionality.
|
|
|
|
|
|
|
|
config ARM_VEXPRESS_SPC_CPUFREQ
|
|
|
|
tristate "Versatile Express SPC based CPUfreq driver"
|
2019-10-21 18:20:34 +08:00
|
|
|
depends on ARM_CPU_TOPOLOGY && HAVE_CLK
|
|
|
|
depends on ARCH_VEXPRESS_SPC
|
|
|
|
select PM_OPP
|
2017-12-14 01:05:35 +08:00
|
|
|
help
|
|
|
|
This add the CPUfreq driver support for Versatile Express
|
|
|
|
big.LITTLE platforms using SPC for power management.
|
|
|
|
|
2016-10-28 05:05:35 +08:00
|
|
|
config ARM_BRCMSTB_AVS_CPUFREQ
|
|
|
|
tristate "Broadcom STB AVS CPUfreq driver"
|
|
|
|
depends on ARCH_BRCMSTB || COMPILE_TEST
|
|
|
|
default y
|
|
|
|
help
|
|
|
|
Some Broadcom STB SoCs use a co-processor running proprietary firmware
|
|
|
|
("AVS") to handle voltage and frequency scaling. This driver provides
|
|
|
|
a standard CPUfreq interface to to the firmware.
|
|
|
|
|
|
|
|
Say Y, if you have a Broadcom SoC with AVS support for DFS or DVFS.
|
|
|
|
|
2013-04-04 20:54:09 +08:00
|
|
|
config ARM_HIGHBANK_CPUFREQ
|
|
|
|
tristate "Calxeda Highbank-based"
|
2014-09-09 22:28:03 +08:00
|
|
|
depends on ARCH_HIGHBANK && CPUFREQ_DT && REGULATOR
|
2013-04-04 20:54:09 +08:00
|
|
|
default m
|
|
|
|
help
|
|
|
|
This adds the CPUFreq driver for Calxeda Highbank SoC
|
|
|
|
based boards.
|
|
|
|
|
|
|
|
If in doubt, say N.
|
|
|
|
|
|
|
|
config ARM_IMX6Q_CPUFREQ
|
2013-12-20 10:12:16 +08:00
|
|
|
tristate "Freescale i.MX6 cpufreq support"
|
|
|
|
depends on ARCH_MXC
|
2013-04-04 20:54:09 +08:00
|
|
|
depends on REGULATOR_ANATOP
|
2020-12-04 06:53:32 +08:00
|
|
|
depends on NVMEM_IMX_OCOTP || COMPILE_TEST
|
2014-07-14 05:59:00 +08:00
|
|
|
select PM_OPP
|
2013-04-04 20:54:09 +08:00
|
|
|
help
|
2013-12-20 10:12:16 +08:00
|
|
|
This adds cpufreq driver support for Freescale i.MX6 series SoCs.
|
2013-04-04 20:54:09 +08:00
|
|
|
|
|
|
|
If in doubt, say N.
|
|
|
|
|
2019-05-13 19:01:38 +08:00
|
|
|
config ARM_IMX_CPUFREQ_DT
|
|
|
|
tristate "Freescale i.MX8M cpufreq support"
|
|
|
|
depends on ARCH_MXC && CPUFREQ_DT
|
|
|
|
help
|
|
|
|
This adds cpufreq driver support for Freescale i.MX8M series SoCs,
|
|
|
|
based on cpufreq-dt.
|
|
|
|
|
|
|
|
If in doubt, say N.
|
|
|
|
|
2013-04-04 20:54:09 +08:00
|
|
|
config ARM_KIRKWOOD_CPUFREQ
|
2014-08-31 00:46:12 +08:00
|
|
|
def_bool MACH_KIRKWOOD
|
2013-04-04 20:54:09 +08:00
|
|
|
help
|
|
|
|
This adds the CPUFreq driver for Marvell Kirkwood
|
|
|
|
SoCs.
|
|
|
|
|
2017-07-18 14:01:43 +08:00
|
|
|
config ARM_MEDIATEK_CPUFREQ
|
|
|
|
tristate "CPU Frequency scaling support for MediaTek SoCs"
|
2015-08-19 10:05:06 +08:00
|
|
|
depends on ARCH_MEDIATEK && REGULATOR
|
|
|
|
select PM_OPP
|
|
|
|
help
|
2017-07-18 14:01:43 +08:00
|
|
|
This adds the CPUFreq driver support for MediaTek SoCs.
|
2015-08-19 10:05:06 +08:00
|
|
|
|
2021-09-03 16:39:24 +08:00
|
|
|
config ARM_MEDIATEK_CPUFREQ_HW
|
|
|
|
tristate "MediaTek CPUFreq HW driver"
|
|
|
|
depends on ARCH_MEDIATEK || COMPILE_TEST
|
|
|
|
default m
|
|
|
|
help
|
|
|
|
Support for the CPUFreq HW driver.
|
|
|
|
Some MediaTek chipsets have a HW engine to offload the steps
|
|
|
|
necessary for changing the frequency of the CPUs. Firmware loaded
|
|
|
|
in this engine exposes a programming interface to the OS.
|
|
|
|
The driver implements the cpufreq interface for this HW engine.
|
|
|
|
Say Y if you want to support CPUFreq HW.
|
|
|
|
|
2012-02-16 03:01:11 +08:00
|
|
|
config ARM_OMAP2PLUS_CPUFREQ
|
|
|
|
bool "TI OMAP2+"
|
2012-04-14 04:32:30 +08:00
|
|
|
depends on ARCH_OMAP2PLUS
|
2012-02-16 03:01:11 +08:00
|
|
|
default ARCH_OMAP2PLUS
|
|
|
|
|
2019-07-25 18:41:31 +08:00
|
|
|
config ARM_QCOM_CPUFREQ_NVMEM
|
|
|
|
tristate "Qualcomm nvmem based CPUFreq"
|
2020-03-14 01:52:13 +08:00
|
|
|
depends on ARCH_QCOM
|
2018-05-30 10:39:28 +08:00
|
|
|
depends on QCOM_QFPROM
|
|
|
|
depends on QCOM_SMEM
|
|
|
|
select PM_OPP
|
|
|
|
help
|
|
|
|
This adds the CPUFreq driver for Qualcomm Kryo SoC based boards.
|
|
|
|
|
|
|
|
If in doubt, say N.
|
|
|
|
|
2018-12-14 12:10:24 +08:00
|
|
|
config ARM_QCOM_CPUFREQ_HW
|
|
|
|
tristate "QCOM CPUFreq HW driver"
|
|
|
|
depends on ARCH_QCOM || COMPILE_TEST
|
|
|
|
help
|
|
|
|
Support for the CPUFreq HW driver.
|
|
|
|
Some QCOM chipsets have a HW engine to offload the steps
|
|
|
|
necessary for changing the frequency of the CPUs. Firmware loaded
|
|
|
|
in this engine exposes a programming interface to the OS.
|
|
|
|
The driver implements the cpufreq interface for this HW engine.
|
|
|
|
Say Y if you want to support CPUFreq HW.
|
|
|
|
|
2019-06-13 02:24:56 +08:00
|
|
|
config ARM_RASPBERRYPI_CPUFREQ
|
|
|
|
tristate "Raspberry Pi cpufreq support"
|
|
|
|
depends on CLK_RASPBERRYPI || COMPILE_TEST
|
|
|
|
help
|
|
|
|
This adds the CPUFreq driver for Raspberry Pi
|
|
|
|
|
|
|
|
If in doubt, say N.
|
|
|
|
|
2013-04-04 20:54:15 +08:00
|
|
|
config ARM_S3C_CPUFREQ
|
|
|
|
bool
|
|
|
|
help
|
|
|
|
Internal configuration node for common cpufreq on Samsung SoC
|
|
|
|
|
|
|
|
config ARM_S3C24XX_CPUFREQ
|
|
|
|
bool "CPUfreq driver for Samsung S3C24XX series CPUs (EXPERIMENTAL)"
|
|
|
|
depends on ARCH_S3C24XX
|
|
|
|
select ARM_S3C_CPUFREQ
|
|
|
|
help
|
|
|
|
This enables the CPUfreq driver for the Samsung S3C24XX family
|
|
|
|
of CPUs.
|
|
|
|
|
|
|
|
For details, take a look at <file:Documentation/cpu-freq>.
|
|
|
|
|
|
|
|
If in doubt, say N.
|
|
|
|
|
|
|
|
config ARM_S3C24XX_CPUFREQ_DEBUG
|
|
|
|
bool "Debug CPUfreq Samsung driver core"
|
|
|
|
depends on ARM_S3C24XX_CPUFREQ
|
|
|
|
help
|
|
|
|
Enable s3c_freq_dbg for the Samsung S3C CPUfreq core
|
|
|
|
|
|
|
|
config ARM_S3C24XX_CPUFREQ_IODEBUG
|
|
|
|
bool "Debug CPUfreq Samsung driver IO timing"
|
|
|
|
depends on ARM_S3C24XX_CPUFREQ
|
|
|
|
help
|
|
|
|
Enable s3c_freq_iodbg for the Samsung S3C CPUfreq core
|
|
|
|
|
|
|
|
config ARM_S3C24XX_CPUFREQ_DEBUGFS
|
|
|
|
bool "Export debugfs for CPUFreq"
|
|
|
|
depends on ARM_S3C24XX_CPUFREQ && DEBUG_FS
|
|
|
|
help
|
|
|
|
Export status information via debugfs.
|
|
|
|
|
|
|
|
config ARM_S3C2410_CPUFREQ
|
|
|
|
bool
|
|
|
|
depends on ARM_S3C24XX_CPUFREQ && CPU_S3C2410
|
|
|
|
help
|
|
|
|
CPU Frequency scaling support for S3C2410
|
|
|
|
|
|
|
|
config ARM_S3C2412_CPUFREQ
|
|
|
|
bool
|
|
|
|
depends on ARM_S3C24XX_CPUFREQ && CPU_S3C2412
|
|
|
|
default y
|
|
|
|
select S3C2412_IOTIMING
|
|
|
|
help
|
|
|
|
CPU Frequency scaling support for S3C2412 and S3C2413 SoC CPUs.
|
|
|
|
|
2012-02-16 18:42:32 +08:00
|
|
|
config ARM_S3C2416_CPUFREQ
|
|
|
|
bool "S3C2416 CPU Frequency scaling support"
|
|
|
|
depends on CPU_S3C2416
|
|
|
|
help
|
|
|
|
This adds the CPUFreq driver for the Samsung S3C2416 and
|
|
|
|
S3C2450 SoC. The S3C2416 supports changing the rate of the
|
|
|
|
armdiv clock source and also entering a so called dynamic
|
|
|
|
voltage scaling mode in which it is possible to reduce the
|
2014-04-23 03:40:10 +08:00
|
|
|
core voltage of the CPU.
|
2012-02-16 18:42:32 +08:00
|
|
|
|
|
|
|
If in doubt, say N.
|
|
|
|
|
|
|
|
config ARM_S3C2416_CPUFREQ_VCORESCALE
|
2012-10-03 02:16:53 +08:00
|
|
|
bool "Allow voltage scaling for S3C2416 arm core"
|
|
|
|
depends on ARM_S3C2416_CPUFREQ && REGULATOR
|
2012-02-16 18:42:32 +08:00
|
|
|
help
|
|
|
|
Enable CPU voltage scaling when entering the dvs mode.
|
|
|
|
It uses information gathered through existing hardware and
|
|
|
|
tests but not documented in any datasheet.
|
|
|
|
|
|
|
|
If in doubt, say N.
|
|
|
|
|
2013-04-04 20:54:15 +08:00
|
|
|
config ARM_S3C2440_CPUFREQ
|
|
|
|
bool "S3C2440/S3C2442 CPU Frequency scaling support"
|
|
|
|
depends on ARM_S3C24XX_CPUFREQ && (CPU_S3C2440 || CPU_S3C2442)
|
|
|
|
default y
|
|
|
|
help
|
|
|
|
CPU Frequency scaling support for S3C2440 and S3C2442 SoC CPUs.
|
|
|
|
|
2011-06-07 09:43:01 +08:00
|
|
|
config ARM_S3C64XX_CPUFREQ
|
|
|
|
bool "Samsung S3C64XX"
|
|
|
|
depends on CPU_S3C6410
|
|
|
|
default y
|
|
|
|
help
|
|
|
|
This adds the CPUFreq driver for Samsung S3C6410 SoC.
|
|
|
|
|
|
|
|
If in doubt, say N.
|
|
|
|
|
2011-06-02 05:18:22 +08:00
|
|
|
config ARM_S5PV210_CPUFREQ
|
|
|
|
bool "Samsung S5PV210 and S5PC110"
|
|
|
|
depends on CPU_S5PV210
|
|
|
|
default y
|
|
|
|
help
|
|
|
|
This adds the CPUFreq driver for Samsung S5PV210 and
|
|
|
|
S5PC110 SoCs.
|
|
|
|
|
|
|
|
If in doubt, say N.
|
|
|
|
|
2013-04-04 20:54:16 +08:00
|
|
|
config ARM_SA1100_CPUFREQ
|
|
|
|
bool
|
|
|
|
|
|
|
|
config ARM_SA1110_CPUFREQ
|
|
|
|
bool
|
|
|
|
|
2017-06-18 16:38:11 +08:00
|
|
|
config ARM_SCMI_CPUFREQ
|
|
|
|
tristate "SCMI based CPUfreq driver"
|
|
|
|
depends on ARM_SCMI_PROTOCOL || COMPILE_TEST
|
|
|
|
select PM_OPP
|
|
|
|
help
|
|
|
|
This adds the CPUfreq driver support for ARM platforms using SCMI
|
|
|
|
protocol for CPU power management.
|
|
|
|
|
|
|
|
This driver uses SCMI Message Protocol driver to interact with the
|
|
|
|
firmware providing the CPU DVFS functionality.
|
|
|
|
|
2012-11-27 21:05:26 +08:00
|
|
|
config ARM_SPEAR_CPUFREQ
|
|
|
|
bool "SPEAr CPUFreq support"
|
|
|
|
depends on PLAT_SPEAR
|
|
|
|
default y
|
|
|
|
help
|
|
|
|
This adds the CPUFreq driver support for SPEAr SOCs.
|
2013-06-12 14:35:48 +08:00
|
|
|
|
2015-12-10 17:42:16 +08:00
|
|
|
config ARM_STI_CPUFREQ
|
|
|
|
tristate "STi CPUFreq support"
|
2020-08-31 14:10:13 +08:00
|
|
|
depends on CPUFREQ_DT && SOC_STIH407
|
2015-12-10 17:42:16 +08:00
|
|
|
help
|
|
|
|
This driver uses the generic OPP framework to match the running
|
|
|
|
platform with a predefined set of suitable values. If not provided
|
|
|
|
we will fall-back so safe-values contained in Device Tree. Enable
|
|
|
|
this config option if you wish to add CPUFreq support for STi based
|
|
|
|
SoCs.
|
|
|
|
|
2015-05-13 22:58:47 +08:00
|
|
|
config ARM_TEGRA20_CPUFREQ
|
2020-03-20 03:02:26 +08:00
|
|
|
tristate "Tegra20/30 CPUFreq support"
|
|
|
|
depends on ARCH_TEGRA && CPUFREQ_DT
|
2013-06-12 14:35:48 +08:00
|
|
|
default y
|
|
|
|
help
|
2020-03-20 03:02:26 +08:00
|
|
|
This adds the CPUFreq driver support for Tegra20/30 SOCs.
|
2014-11-24 11:59:26 +08:00
|
|
|
|
2015-05-13 22:58:48 +08:00
|
|
|
config ARM_TEGRA124_CPUFREQ
|
2019-01-04 11:06:53 +08:00
|
|
|
bool "Tegra124 CPUFreq support"
|
|
|
|
depends on ARCH_TEGRA && CPUFREQ_DT
|
2015-05-13 22:58:48 +08:00
|
|
|
default y
|
|
|
|
help
|
|
|
|
This adds the CPUFreq driver support for Tegra124 SOCs.
|
|
|
|
|
2017-04-11 16:09:15 +08:00
|
|
|
config ARM_TEGRA186_CPUFREQ
|
|
|
|
tristate "Tegra186 CPUFreq support"
|
|
|
|
depends on ARCH_TEGRA && TEGRA_BPMP
|
|
|
|
help
|
|
|
|
This adds the CPUFreq driver support for Tegra186 SOCs.
|
|
|
|
|
2020-07-16 16:30:01 +08:00
|
|
|
config ARM_TEGRA194_CPUFREQ
|
|
|
|
tristate "Tegra194 CPUFreq support"
|
|
|
|
depends on ARCH_TEGRA_194_SOC && TEGRA_BPMP
|
|
|
|
default y
|
|
|
|
help
|
|
|
|
This adds CPU frequency driver support for Tegra194 SOCs.
|
|
|
|
|
2017-02-04 01:29:28 +08:00
|
|
|
config ARM_TI_CPUFREQ
|
|
|
|
bool "Texas Instruments CPUFreq support"
|
|
|
|
depends on ARCH_OMAP2PLUS
|
2020-04-15 16:15:59 +08:00
|
|
|
default ARCH_OMAP2PLUS
|
2017-02-04 01:29:28 +08:00
|
|
|
help
|
|
|
|
This driver enables valid OPPs on the running platform based on
|
|
|
|
values contained within the SoC in use. Enable this in order to
|
|
|
|
use the cpufreq-dt driver on all Texas Instruments platforms that
|
|
|
|
provide dt based operating-points-v2 tables with opp-supported-hw
|
|
|
|
data provided. Required for cpufreq support on AM335x, AM437x,
|
|
|
|
DRA7x, and AM57x platforms.
|
|
|
|
|
2014-11-24 11:59:26 +08:00
|
|
|
config ARM_PXA2xx_CPUFREQ
|
|
|
|
tristate "Intel PXA2xx CPUfreq driver"
|
|
|
|
depends on PXA27x || PXA25x
|
|
|
|
help
|
|
|
|
This add the CPUFreq driver support for Intel PXA2xx SOCs.
|
|
|
|
|
|
|
|
If in doubt, say N.
|