Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

PM / OPP: Remove ARCH_HAS_OPP

Since the OPP layer is a kernel library which has been converted to be
directly selectable by its callers rather than user selectable and
requiring architectures to enable it explicitly the ARCH_HAS_OPP symbol
has become redundant and can be removed. Do so.

Signed-off-by: Mark Brown <broonie@linaro.org>
Reviewed-by: Viresh Kumar <viresh.kumar@linaro.org>
Acked-by: Nishanth Menon <nm@ti.com>
Acked-by: Rob Herring <robh@kernel.org>
Acked-by: Shawn Guo <shawn.guo@freescale.com>
Acked-by: Simon Horman <horms+renesas@verge.net.au>
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>

authored by

Mark Brown and committed by
Rafael J. Wysocki
78c5e0bb 9a3c4145

-15
-3
Documentation/power/opp.txt
··· 51 51 SoC framework -> modifies on required cases certain OPPs -> OPP layer 52 52 -> queries to search/retrieve information -> 53 53 54 - Architectures that provide a SoC framework for OPP should select ARCH_HAS_OPP 55 - to make the OPP layer available. 56 - 57 54 OPP layer expects each domain to be represented by a unique device pointer. SoC 58 55 framework registers a set of initial OPPs per device with the OPP layer. This 59 56 list is expected to be an optimally small number typically around 5 per device.
-1
arch/arm/mach-exynos/Kconfig
··· 100 100 default y 101 101 depends on ARCH_EXYNOS5 102 102 select ARCH_DMA_ADDR_T_64BIT if ARM_LPAE 103 - select ARCH_HAS_OPP 104 103 select HAVE_ARM_ARCH_TIMER 105 104 select AUTO_ZRELADDR 106 105 select MIGHT_HAVE_PCI
-1
arch/arm/mach-highbank/Kconfig
··· 2 2 bool "Calxeda ECX-1000/2000 (Highbank/Midway)" if ARCH_MULTI_V7 3 3 select ARCH_DMA_ADDR_T_64BIT if ARM_LPAE 4 4 select ARCH_HAS_HOLES_MEMORYMODEL 5 - select ARCH_HAS_OPP 6 5 select ARCH_SUPPORTS_BIG_ENDIAN 7 6 select ARM_AMBA 8 7 select ARM_ERRATA_764369 if SMP
-1
arch/arm/mach-imx/Kconfig
··· 1 1 menuconfig ARCH_MXC 2 2 bool "Freescale i.MX family" if ARCH_MULTI_V4_V5 || ARCH_MULTI_V6_V7 3 - select ARCH_HAS_OPP 4 3 select ARCH_REQUIRE_GPIOLIB 5 4 select ARM_CPU_SUSPEND if PM 6 5 select CLKSRC_MMIO
-1
arch/arm/mach-omap2/Kconfig
··· 15 15 bool "TI OMAP3" 16 16 depends on ARCH_MULTI_V7 17 17 select ARCH_OMAP2PLUS 18 - select ARCH_HAS_OPP 19 18 select ARM_CPU_SUSPEND if PM 20 19 select OMAP_INTERCONNECT 21 20 select PM_OPP if PM
-2
arch/arm/mach-shmobile/Kconfig
··· 85 85 select CPU_V7 86 86 select SH_CLK_CPG 87 87 select RENESAS_IRQC 88 - select ARCH_HAS_OPP 89 88 select SYS_SUPPORTS_SH_CMT 90 89 select SYS_SUPPORTS_SH_TMU 91 90 ··· 262 263 config MACH_KZM9G 263 264 bool "KZM-A9-GT board" 264 265 depends on ARCH_SH73A0 265 - select ARCH_HAS_OPP 266 266 select ARCH_REQUIRE_GPIOLIB 267 267 select REGULATOR_FIXED_VOLTAGE if REGULATOR 268 268 select SND_SOC_AK4642 if SND_SIMPLE_CARD
-1
arch/arm/mach-vexpress/Kconfig
··· 64 64 65 65 config ARCH_VEXPRESS_SPC 66 66 bool "Versatile Express Serial Power Controller (SPC)" 67 - select ARCH_HAS_OPP 68 67 select PM_OPP 69 68 help 70 69 The TC2 (A15x2 A7x3) versatile express core tile integrates a logic
-1
arch/arm/mach-zynq/Kconfig
··· 1 1 config ARCH_ZYNQ 2 2 bool "Xilinx Zynq ARM Cortex A9 Platform" if ARCH_MULTI_V7 3 - select ARCH_HAS_OPP 4 3 select ARCH_SUPPORTS_BIG_ENDIAN 5 4 select ARM_AMBA 6 5 select ARM_GIC
-1
drivers/devfreq/Kconfig
··· 68 68 config ARM_EXYNOS4_BUS_DEVFREQ 69 69 bool "ARM Exynos4210/4212/4412 Memory Bus DEVFREQ Driver" 70 70 depends on (CPU_EXYNOS4210 || SOC_EXYNOS4212 || SOC_EXYNOS4412) && !ARCH_MULTIPLATFORM 71 - select ARCH_HAS_OPP 72 71 select DEVFREQ_GOV_SIMPLE_ONDEMAND 73 72 select PM_OPP 74 73 help
-3
kernel/power/Kconfig
··· 253 253 anything, try disabling/enabling this option (or disabling/enabling 254 254 APM in your BIOS). 255 255 256 - config ARCH_HAS_OPP 257 - bool 258 - 259 256 config PM_OPP 260 257 bool 261 258 ---help---