2011-11-06 13:54:56 +09:00
# arch/arm/mach-exynos/Kconfig
2010-07-16 12:15:38 +09:00
#
2011-02-14 15:05:27 +09:00
# Copyright (c) 2010-2011 Samsung Electronics Co., Ltd.
2010-07-16 12:15:38 +09:00
# http://www.samsung.com/
#
# Licensed under GPLv2
2016-02-22 15:33:14 +05:30
# Configuration options for the EXYNOS
2010-07-16 12:15:38 +09:00
2014-06-10 09:06:10 -05:00
menuconfig ARCH_EXYNOS
ARM: use "depends on" for SoC configs instead of "if" after prompt
Many ARM sub-architectures use prompts followed by "if" conditional,
but it is wrong.
Please notice the difference between
config ARCH_FOO
bool "Foo SoCs" if ARCH_MULTI_V7
and
config ARCH_FOO
bool "Foo SoCs"
depends on ARCH_MULTI_V7
These two are *not* equivalent!
In the former statement, it is not ARCH_FOO, but its prompt that
depends on ARCH_MULTI_V7. So, it is completely valid that ARCH_FOO
is selected by another, but ARCH_MULTI_V7 is still disabled. As it is
not unmet dependency, Kconfig never warns. This is probably not what
you want.
The former should be used only when you need to do so, and you really
understand what you are doing. (In most cases, it should be wrong!)
For enabling/disabling sub-architectures, the latter is always correct.
As a good side effect, this commit fixes some entries over 80 columns
(mach-imx, mach-integrator, mach-mbevu).
[Arnd: I note that there is not really a bug here, according to
the discussion that followed, but I can see value in being consistent
and in making the lines shorter]
Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
Acked-by: Maxime Ripard <maxime.ripard@free-electrons.com>
Acked-by: Nicolas Ferre <nicolas.ferre@atmel.com>
Acked-by: Heiko Stuebner <heiko@sntech.de>
Acked-by: Patrice Chotard <patrice.chotard@st.com>
Acked-by: Liviu Dudau <Liviu.Dudau@arm.com>
Acked-by: Krzysztof Kozlowski <k.kozlowski@samsung.com>
Acked-by: Jun Nie <jun.nie@linaro.org>
Acked-by: Matthias Brugger <matthias.bgg@gmail.com>
Acked-by: Simon Horman <horms+renesas@verge.net.au>
Acked-by: Gregory CLEMENT <gregory.clement@free-electrons.com>
Acked-by: Shawn Guo <shawnguo@kernel.org>
Acked-by: Sebastian Hesselbarth <sebastian.hesselbarth@gmail.com>
Acked-by: Thierry Reding <treding@nvidia.com>
Acked-by: Krzysztof Halasa <khc@piap.pl>
Acked-by: Maxime Coquelin <maxime.coquelin@st.com>
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2015-11-16 12:06:10 +09:00
bool "Samsung EXYNOS"
depends on ARCH_MULTI_V7
2014-05-26 06:09:57 +09:00
select ARCH_HAS_BANDGAP
select ARCH_HAS_HOLES_MEMORYMODEL
2016-06-21 11:20:26 +01:00
select ARCH_SUPPORTS_BIG_ENDIAN
2014-05-26 06:09:57 +09:00
select ARM_AMBA
select ARM_GIC
select COMMON_CLK_SAMSUNG
2015-08-12 07:41:11 +09:00
select EXYNOS_THERMAL
2015-12-18 09:02:16 +05:30
select EXYNOS_PMU
2016-04-11 13:12:27 +05:30
select EXYNOS_SROM
2016-05-10 16:31:26 +02:00
select EXYNOS_PM_DOMAINS if PM_GENERIC_DOMAINS
2016-06-02 14:10:16 +02:00
select GPIOLIB
2014-05-26 06:09:57 +09:00
select HAVE_ARM_SCU if SMP
select HAVE_S3C2410_I2C if I2C
select HAVE_S3C2410_WATCHDOG if WATCHDOG
select HAVE_S3C_RTC if RTC_CLASS
select PINCTRL
select PINCTRL_EXYNOS
2014-12-13 00:44:04 +01:00
select PM_GENERIC_DOMAINS if PM
2014-05-26 06:09:57 +09:00
select S5P_DEV_MFC
2016-04-11 13:12:26 +05:30
select SAMSUNG_MC
2015-12-18 09:02:16 +05:30
select SOC_SAMSUNG
2014-05-26 06:09:57 +09:00
select SRAM
2015-08-12 07:41:11 +09:00
select THERMAL
2016-01-29 15:50:38 +01:00
select THERMAL_OF
2014-11-07 09:26:40 +09:00
select MFD_SYSCON
2016-04-11 13:12:26 +05:30
select MEMORY
2015-11-01 21:51:30 +01:00
select CLKSRC_EXYNOS_MCT
2015-11-20 10:47:09 +05:30
select POWER_RESET
select POWER_RESET_SYSCON
select POWER_RESET_SYSCON_POWEROFF
2014-05-26 06:09:57 +09:00
help
Support for SAMSUNG EXYNOS SoCs (EXYNOS4/5)
2011-11-06 13:54:56 +09:00
if ARCH_EXYNOS
2015-07-30 01:48:17 +09:00
config S5P_DEV_MFC
bool
help
Compile in setup memory (init) code for MFC
2014-05-26 04:12:26 +09:00
config ARCH_EXYNOS3
bool "SAMSUNG EXYNOS3"
2014-05-26 05:58:42 +09:00
select ARM_CPU_SUSPEND if PM
2014-05-26 04:12:26 +09:00
help
2014-09-14 20:24:10 +01:00
Samsung EXYNOS3 (Cortex-A7) SoC based systems
2014-05-26 04:12:26 +09:00
2011-11-06 13:54:56 +09:00
config ARCH_EXYNOS4
bool "SAMSUNG EXYNOS4"
2012-03-13 07:44:39 -07:00
default y
2014-05-26 05:58:42 +09:00
select ARM_CPU_SUSPEND if PM_SLEEP
2013-10-08 07:02:12 +09:00
select CLKSRC_SAMSUNG_PWM if CPU_EXYNOS4210
select CPU_EXYNOS4210
2013-06-19 01:26:42 +09:00
select GIC_NON_BANKED
2011-11-29 15:56:19 +00:00
select MIGHT_HAVE_CACHE_L2X0
2011-11-06 13:54:56 +09:00
help
2014-05-26 05:58:42 +09:00
Samsung EXYNOS4 (Cortex-A9) SoC based systems
2011-11-06 13:54:56 +09:00
2012-03-13 07:44:39 -07:00
config ARCH_EXYNOS5
bool "SAMSUNG EXYNOS5"
2014-05-26 05:58:42 +09:00
default y
2012-03-13 07:44:39 -07:00
help
2014-05-26 05:58:42 +09:00
Samsung EXYNOS5 (Cortex-A15/A7) SoC based systems
2011-11-06 13:54:56 +09:00
comment "EXYNOS SoCs"
2010-07-16 12:15:38 +09:00
2014-05-26 04:12:26 +09:00
config SOC_EXYNOS3250
bool "SAMSUNG EXYNOS3250"
default y
depends on ARCH_EXYNOS3
2011-02-14 15:05:27 +09:00
config CPU_EXYNOS4210
2011-11-06 13:54:56 +09:00
bool "SAMSUNG EXYNOS4210"
default y
depends on ARCH_EXYNOS4
2010-07-16 12:15:38 +09:00
2011-08-24 17:25:09 +09:00
config SOC_EXYNOS4212
2011-11-06 13:54:56 +09:00
bool "SAMSUNG EXYNOS4212"
default y
depends on ARCH_EXYNOS4
2011-08-24 17:25:09 +09:00
2011-10-04 17:08:56 +09:00
config SOC_EXYNOS4412
2011-11-06 13:54:56 +09:00
bool "SAMSUNG EXYNOS4412"
default y
depends on ARCH_EXYNOS4
2011-10-04 17:08:56 +09:00
2014-11-07 08:20:09 +09:00
config SOC_EXYNOS4415
bool "SAMSUNG EXYNOS4415"
default y
depends on ARCH_EXYNOS4
2012-03-13 07:44:39 -07:00
config SOC_EXYNOS5250
bool "SAMSUNG EXYNOS5250"
default y
depends on ARCH_EXYNOS5
2014-05-26 04:28:17 +09:00
config SOC_EXYNOS5260
bool "SAMSUNG EXYNOS5260"
default y
depends on ARCH_EXYNOS5
2014-05-27 06:54:12 +09:00
config SOC_EXYNOS5410
bool "SAMSUNG EXYNOS5410"
default y
depends on ARCH_EXYNOS5
2012-03-13 07:44:39 -07:00
2013-06-19 00:29:34 +09:00
config SOC_EXYNOS5420
bool "SAMSUNG EXYNOS5420"
default y
depends on ARCH_EXYNOS5
2012-11-15 15:48:56 +09:00
config SOC_EXYNOS5440
bool "SAMSUNG EXYNOS5440"
default y
depends on ARCH_EXYNOS5
2013-07-16 12:42:59 +09:00
select ARCH_DMA_ADDR_T_64BIT if ARM_LPAE
2013-03-20 13:57:38 +00:00
select HAVE_ARM_ARCH_TIMER
2012-11-15 15:48:56 +09:00
select AUTO_ZRELADDR
2012-12-27 09:19:08 -08:00
select PINCTRL_EXYNOS5440
2013-04-08 08:17:37 +00:00
select PM_OPP
2012-11-15 15:48:56 +09:00
help
Enable EXYNOS5440 SoC support
2014-05-26 04:16:11 +09:00
config SOC_EXYNOS5800
bool "SAMSUNG EXYNOS5800"
default y
depends on SOC_EXYNOS5420
2014-05-16 04:26:30 +09:00
config EXYNOS5420_MCPM
bool "Exynos5420 Multi-Cluster PM support"
depends on MCPM && SOC_EXYNOS5420
2015-03-18 12:24:41 +00:00
select ARM_CCI400_PORT_CTRL
2014-07-14 13:59:03 +01:00
select ARM_CPU_SUSPEND
2014-05-16 04:26:30 +09:00
help
This is needed to provide CPU and cluster power management
on Exynos5420 implementing big.LITTLE.
2014-09-25 18:02:45 +09:00
config EXYNOS_CPU_SUSPEND
bool
select ARM_CPU_SUSPEND
default PM_SLEEP || ARM_EXYNOS_CPUIDLE
2010-07-16 12:15:38 +09:00
endif