2017-12-26 03:54:31 +08:00
|
|
|
# SPDX-License-Identifier: GPL-2.0
|
2010-07-16 11:15:38 +08:00
|
|
|
#
|
2011-02-14 14:05:27 +08:00
|
|
|
# Copyright (c) 2010-2011 Samsung Electronics Co., Ltd.
|
2010-07-16 11:15:38 +08:00
|
|
|
# http://www.samsung.com/
|
|
|
|
|
2016-02-22 18:03:14 +08:00
|
|
|
# Configuration options for the EXYNOS
|
2010-07-16 11:15:38 +08:00
|
|
|
|
2014-06-10 22:06:10 +08: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 11:06:10 +08:00
|
|
|
bool "Samsung EXYNOS"
|
|
|
|
depends on ARCH_MULTI_V7
|
2014-05-26 05:09:57 +08:00
|
|
|
select ARCH_HAS_BANDGAP
|
|
|
|
select ARCH_HAS_HOLES_MEMORYMODEL
|
2016-06-21 18:20:26 +08:00
|
|
|
select ARCH_SUPPORTS_BIG_ENDIAN
|
2014-05-26 05:09:57 +08:00
|
|
|
select ARM_AMBA
|
|
|
|
select ARM_GIC
|
|
|
|
select COMMON_CLK_SAMSUNG
|
2015-08-12 06:41:11 +08:00
|
|
|
select EXYNOS_THERMAL
|
2015-12-18 11:32:16 +08:00
|
|
|
select EXYNOS_PMU
|
2016-04-11 15:42:27 +08:00
|
|
|
select EXYNOS_SROM
|
2016-05-10 22:31:26 +08:00
|
|
|
select EXYNOS_PM_DOMAINS if PM_GENERIC_DOMAINS
|
2016-06-02 20:10:16 +08:00
|
|
|
select GPIOLIB
|
2014-05-26 05:09:57 +08: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 07:44:04 +08:00
|
|
|
select PM_GENERIC_DOMAINS if PM
|
2014-05-26 05:09:57 +08:00
|
|
|
select S5P_DEV_MFC
|
2016-04-11 15:42:26 +08:00
|
|
|
select SAMSUNG_MC
|
2015-12-18 11:32:16 +08:00
|
|
|
select SOC_SAMSUNG
|
2014-05-26 05:09:57 +08:00
|
|
|
select SRAM
|
2015-08-12 06:41:11 +08:00
|
|
|
select THERMAL
|
2016-01-29 22:50:38 +08:00
|
|
|
select THERMAL_OF
|
2014-11-07 08:26:40 +08:00
|
|
|
select MFD_SYSCON
|
2016-04-11 15:42:26 +08:00
|
|
|
select MEMORY
|
2015-11-02 04:51:30 +08:00
|
|
|
select CLKSRC_EXYNOS_MCT
|
2015-11-20 13:17:09 +08:00
|
|
|
select POWER_RESET
|
|
|
|
select POWER_RESET_SYSCON
|
|
|
|
select POWER_RESET_SYSCON_POWEROFF
|
2014-05-26 05:09:57 +08:00
|
|
|
help
|
|
|
|
Support for SAMSUNG EXYNOS SoCs (EXYNOS4/5)
|
|
|
|
|
2011-11-06 12:54:56 +08:00
|
|
|
if ARCH_EXYNOS
|
|
|
|
|
2015-07-30 00:48:17 +08:00
|
|
|
config S5P_DEV_MFC
|
|
|
|
bool
|
|
|
|
help
|
|
|
|
Compile in setup memory (init) code for MFC
|
|
|
|
|
2014-05-26 03:12:26 +08:00
|
|
|
config ARCH_EXYNOS3
|
|
|
|
bool "SAMSUNG EXYNOS3"
|
2014-05-26 04:58:42 +08:00
|
|
|
select ARM_CPU_SUSPEND if PM
|
2014-05-26 03:12:26 +08:00
|
|
|
help
|
2014-09-15 03:24:10 +08:00
|
|
|
Samsung EXYNOS3 (Cortex-A7) SoC based systems
|
2014-05-26 03:12:26 +08:00
|
|
|
|
2011-11-06 12:54:56 +08:00
|
|
|
config ARCH_EXYNOS4
|
|
|
|
bool "SAMSUNG EXYNOS4"
|
2012-03-13 22:44:39 +08:00
|
|
|
default y
|
2014-05-26 04:58:42 +08:00
|
|
|
select ARM_CPU_SUSPEND if PM_SLEEP
|
2013-10-08 06:02:12 +08:00
|
|
|
select CLKSRC_SAMSUNG_PWM if CPU_EXYNOS4210
|
|
|
|
select CPU_EXYNOS4210
|
2013-06-19 00:26:42 +08:00
|
|
|
select GIC_NON_BANKED
|
2011-11-29 23:56:19 +08:00
|
|
|
select MIGHT_HAVE_CACHE_L2X0
|
2011-11-06 12:54:56 +08:00
|
|
|
help
|
2014-05-26 04:58:42 +08:00
|
|
|
Samsung EXYNOS4 (Cortex-A9) SoC based systems
|
2011-11-06 12:54:56 +08:00
|
|
|
|
2012-03-13 22:44:39 +08:00
|
|
|
config ARCH_EXYNOS5
|
|
|
|
bool "SAMSUNG EXYNOS5"
|
2014-05-26 04:58:42 +08:00
|
|
|
default y
|
2012-03-13 22:44:39 +08:00
|
|
|
help
|
2014-05-26 04:58:42 +08:00
|
|
|
Samsung EXYNOS5 (Cortex-A15/A7) SoC based systems
|
2011-11-06 12:54:56 +08:00
|
|
|
|
|
|
|
comment "EXYNOS SoCs"
|
2010-07-16 11:15:38 +08:00
|
|
|
|
2014-05-26 03:12:26 +08:00
|
|
|
config SOC_EXYNOS3250
|
|
|
|
bool "SAMSUNG EXYNOS3250"
|
|
|
|
default y
|
|
|
|
depends on ARCH_EXYNOS3
|
|
|
|
|
2011-02-14 14:05:27 +08:00
|
|
|
config CPU_EXYNOS4210
|
2011-11-06 12:54:56 +08:00
|
|
|
bool "SAMSUNG EXYNOS4210"
|
|
|
|
default y
|
|
|
|
depends on ARCH_EXYNOS4
|
2010-07-16 11:15:38 +08:00
|
|
|
|
2011-10-04 16:08:56 +08:00
|
|
|
config SOC_EXYNOS4412
|
2011-11-06 12:54:56 +08:00
|
|
|
bool "SAMSUNG EXYNOS4412"
|
|
|
|
default y
|
|
|
|
depends on ARCH_EXYNOS4
|
2011-10-04 16:08:56 +08:00
|
|
|
|
2012-03-13 22:44:39 +08:00
|
|
|
config SOC_EXYNOS5250
|
|
|
|
bool "SAMSUNG EXYNOS5250"
|
|
|
|
default y
|
|
|
|
depends on ARCH_EXYNOS5
|
|
|
|
|
2014-05-26 03:28:17 +08:00
|
|
|
config SOC_EXYNOS5260
|
|
|
|
bool "SAMSUNG EXYNOS5260"
|
|
|
|
default y
|
|
|
|
depends on ARCH_EXYNOS5
|
|
|
|
|
2014-05-27 05:54:12 +08:00
|
|
|
config SOC_EXYNOS5410
|
|
|
|
bool "SAMSUNG EXYNOS5410"
|
|
|
|
default y
|
|
|
|
depends on ARCH_EXYNOS5
|
2012-03-13 22:44:39 +08:00
|
|
|
|
2013-06-18 23:29:34 +08:00
|
|
|
config SOC_EXYNOS5420
|
|
|
|
bool "SAMSUNG EXYNOS5420"
|
|
|
|
default y
|
|
|
|
depends on ARCH_EXYNOS5
|
|
|
|
|
2012-11-15 14:48:56 +08:00
|
|
|
config SOC_EXYNOS5440
|
|
|
|
bool "SAMSUNG EXYNOS5440"
|
|
|
|
default y
|
|
|
|
depends on ARCH_EXYNOS5
|
2013-07-16 11:42:59 +08:00
|
|
|
select ARCH_DMA_ADDR_T_64BIT if ARM_LPAE
|
2013-03-20 21:57:38 +08:00
|
|
|
select HAVE_ARM_ARCH_TIMER
|
2012-11-15 14:48:56 +08:00
|
|
|
select AUTO_ZRELADDR
|
2012-12-28 01:19:08 +08:00
|
|
|
select PINCTRL_EXYNOS5440
|
2013-04-08 16:17:37 +08:00
|
|
|
select PM_OPP
|
2012-11-15 14:48:56 +08:00
|
|
|
help
|
|
|
|
Enable EXYNOS5440 SoC support
|
|
|
|
|
2014-05-26 03:16:11 +08:00
|
|
|
config SOC_EXYNOS5800
|
|
|
|
bool "SAMSUNG EXYNOS5800"
|
|
|
|
default y
|
|
|
|
depends on SOC_EXYNOS5420
|
|
|
|
|
2014-05-16 03:26:30 +08:00
|
|
|
config EXYNOS5420_MCPM
|
|
|
|
bool "Exynos5420 Multi-Cluster PM support"
|
|
|
|
depends on MCPM && SOC_EXYNOS5420
|
2015-03-18 20:24:41 +08:00
|
|
|
select ARM_CCI400_PORT_CTRL
|
2014-07-14 20:59:03 +08:00
|
|
|
select ARM_CPU_SUSPEND
|
2014-05-16 03:26:30 +08:00
|
|
|
help
|
|
|
|
This is needed to provide CPU and cluster power management
|
|
|
|
on Exynos5420 implementing big.LITTLE.
|
|
|
|
|
2014-09-25 17:02:45 +08:00
|
|
|
config EXYNOS_CPU_SUSPEND
|
|
|
|
bool
|
|
|
|
select ARM_CPU_SUSPEND
|
|
|
|
default PM_SLEEP || ARM_EXYNOS_CPUIDLE
|
|
|
|
|
2010-07-16 11:15:38 +08:00
|
|
|
endif
|