xref: /linux/arch/arm/mach-s3c/Kconfig.s3c64xx (revision 6a5e69c7ddeacbfcab1ffe501c32e21d7989c0f8)
171b9114dSArnd Bergmann# SPDX-License-Identifier: GPL-2.0
271b9114dSArnd Bergmann#
371b9114dSArnd Bergmann# Copyright 2008 Openmoko, Inc.
471b9114dSArnd Bergmann#	Simtec Electronics, Ben Dooks <ben@simtec.co.uk>
571b9114dSArnd Bergmann
671b9114dSArnd Bergmannmenuconfig ARCH_S3C64XX
7*6a5e69c7SKrzysztof Kozlowski	bool "Samsung S3C64XX (deprecated, see help)"
871b9114dSArnd Bergmann	depends on ARCH_MULTI_V6
971b9114dSArnd Bergmann	select ARM_AMBA
1071b9114dSArnd Bergmann	select ARM_VIC
1171b9114dSArnd Bergmann	select CLKSRC_SAMSUNG_PWM
1271b9114dSArnd Bergmann	select COMMON_CLK_SAMSUNG
1371b9114dSArnd Bergmann	select GPIO_SAMSUNG if ATAGS
1471b9114dSArnd Bergmann	select GPIOLIB
1571b9114dSArnd Bergmann	select HAVE_TCM
1671b9114dSArnd Bergmann	select PLAT_SAMSUNG
1771b9114dSArnd Bergmann	select PM_GENERIC_DOMAINS if PM
1871b9114dSArnd Bergmann	select S3C_DEV_NAND if ATAGS
1971b9114dSArnd Bergmann	select S3C_GPIO_TRACK if ATAGS
2071b9114dSArnd Bergmann	select S3C2410_WATCHDOG
2171b9114dSArnd Bergmann	select SAMSUNG_ATAGS if ATAGS
2271b9114dSArnd Bergmann	select SAMSUNG_WAKEMASK if PM
2371b9114dSArnd Bergmann	select WATCHDOG
2471b9114dSArnd Bergmann	help
2571b9114dSArnd Bergmann	  Samsung S3C64XX series based systems
2671b9114dSArnd Bergmann
27*6a5e69c7SKrzysztof Kozlowski	  The platform is deprecated and scheduled for removal. Please reach to
28*6a5e69c7SKrzysztof Kozlowski	  the maintainers of the platform and linux-samsung-soc@vger.kernel.org if
29*6a5e69c7SKrzysztof Kozlowski	  you still use it.
30*6a5e69c7SKrzysztof Kozlowski	  Without such feedback, the platform will be removed after 2024.
31*6a5e69c7SKrzysztof Kozlowski
3271b9114dSArnd Bergmannif ARCH_S3C64XX
3371b9114dSArnd Bergmann
3471b9114dSArnd Bergmann# Configuration options for the S3C6410 CPU
3571b9114dSArnd Bergmann
3671b9114dSArnd Bergmannconfig CPU_S3C6400
3771b9114dSArnd Bergmann	bool
3871b9114dSArnd Bergmann	help
3971b9114dSArnd Bergmann	  Enable S3C6400 CPU support
4071b9114dSArnd Bergmann
4171b9114dSArnd Bergmannconfig CPU_S3C6410
4271b9114dSArnd Bergmann	bool
4371b9114dSArnd Bergmann	help
4471b9114dSArnd Bergmann	  Enable S3C6410 CPU support
4571b9114dSArnd Bergmann
4671b9114dSArnd Bergmannconfig S3C64XX_PL080
4771b9114dSArnd Bergmann	def_bool DMADEVICES
4871b9114dSArnd Bergmann	select AMBA_PL08X
4971b9114dSArnd Bergmann
5071b9114dSArnd Bergmannconfig S3C64XX_SETUP_SDHCI
5171b9114dSArnd Bergmann	bool
5271b9114dSArnd Bergmann	select S3C64XX_SETUP_SDHCI_GPIO
5371b9114dSArnd Bergmann	help
5471b9114dSArnd Bergmann	  Internal configuration for default SDHCI setup for S3C6400 and
5571b9114dSArnd Bergmann	  S3C6410 SoCs.
5671b9114dSArnd Bergmann
5771b9114dSArnd Bergmannconfig S3C64XX_DEV_ONENAND1
5871b9114dSArnd Bergmann	bool
5971b9114dSArnd Bergmann	help
6071b9114dSArnd Bergmann	  Compile in platform device definition for OneNAND1 controller
6171b9114dSArnd Bergmann
6271b9114dSArnd Bergmannconfig SAMSUNG_DEV_BACKLIGHT
6371b9114dSArnd Bergmann	bool
6471b9114dSArnd Bergmann	depends on SAMSUNG_DEV_PWM
6571b9114dSArnd Bergmann	help
6671b9114dSArnd Bergmann	  Compile in platform device definition LCD backlight with PWM Timer
6771b9114dSArnd Bergmann
6871b9114dSArnd Bergmann# platform specific device setup
6971b9114dSArnd Bergmann
7071b9114dSArnd Bergmannconfig S3C64XX_SETUP_I2C0
7171b9114dSArnd Bergmann	bool
7271b9114dSArnd Bergmann	default y
7371b9114dSArnd Bergmann	help
7471b9114dSArnd Bergmann	  Common setup code for i2c bus 0.
7571b9114dSArnd Bergmann
7671b9114dSArnd Bergmann	  Note, currently since i2c0 is always compiled, this setup helper
7771b9114dSArnd Bergmann	  is always compiled with it.
7871b9114dSArnd Bergmann
7971b9114dSArnd Bergmannconfig S3C64XX_SETUP_I2C1
8071b9114dSArnd Bergmann	bool
8171b9114dSArnd Bergmann	help
8271b9114dSArnd Bergmann	  Common setup code for i2c bus 1.
8371b9114dSArnd Bergmann
8471b9114dSArnd Bergmannconfig S3C64XX_SETUP_IDE
8571b9114dSArnd Bergmann	bool
8671b9114dSArnd Bergmann	help
8771b9114dSArnd Bergmann	  Common setup code for S3C64XX IDE.
8871b9114dSArnd Bergmann
8971b9114dSArnd Bergmannconfig S3C64XX_SETUP_FB_24BPP
9071b9114dSArnd Bergmann	bool
9171b9114dSArnd Bergmann	help
9271b9114dSArnd Bergmann	  Common setup code for S3C64XX with an 24bpp RGB display helper.
9371b9114dSArnd Bergmann
9471b9114dSArnd Bergmannconfig S3C64XX_SETUP_KEYPAD
9571b9114dSArnd Bergmann	bool
9671b9114dSArnd Bergmann	help
9771b9114dSArnd Bergmann	  Common setup code for S3C64XX KEYPAD GPIO configurations
9871b9114dSArnd Bergmann
9971b9114dSArnd Bergmannconfig S3C64XX_SETUP_SDHCI_GPIO
10071b9114dSArnd Bergmann	bool
10171b9114dSArnd Bergmann	help
10271b9114dSArnd Bergmann	  Common setup code for S3C64XX SDHCI GPIO configurations
10371b9114dSArnd Bergmann
10471b9114dSArnd Bergmannconfig S3C64XX_SETUP_SPI
10571b9114dSArnd Bergmann	bool
10671b9114dSArnd Bergmann	help
10771b9114dSArnd Bergmann	 Common setup code for SPI GPIO configurations
10871b9114dSArnd Bergmann
10971b9114dSArnd Bergmannconfig S3C64XX_SETUP_USB_PHY
11071b9114dSArnd Bergmann	bool
11171b9114dSArnd Bergmann	help
11271b9114dSArnd Bergmann	  Common setup code for USB PHY controller
11371b9114dSArnd Bergmann
11471b9114dSArnd Bergmann# S36400 Macchine support
11571b9114dSArnd Bergmann
11671b9114dSArnd Bergmannconfig MACH_SMDK6400
11771b9114dSArnd Bergmann       bool "SMDK6400"
11871b9114dSArnd Bergmann	depends on ATAGS
11971b9114dSArnd Bergmann	select CPU_S3C6400
12071b9114dSArnd Bergmann	select S3C64XX_SETUP_SDHCI
12171b9114dSArnd Bergmann	select S3C_DEV_HSMMC1
12271b9114dSArnd Bergmann	help
12371b9114dSArnd Bergmann	  Machine support for the Samsung SMDK6400
12471b9114dSArnd Bergmann
12571b9114dSArnd Bergmann# S3C6410 machine support
12671b9114dSArnd Bergmann
12771b9114dSArnd Bergmannconfig MACH_ANW6410
12871b9114dSArnd Bergmann	bool "A&W6410"
12971b9114dSArnd Bergmann	depends on ATAGS
13071b9114dSArnd Bergmann	select CPU_S3C6410
13171b9114dSArnd Bergmann	select S3C64XX_SETUP_FB_24BPP
13271b9114dSArnd Bergmann	select S3C_DEV_FB
13371b9114dSArnd Bergmann	help
13471b9114dSArnd Bergmann	  Machine support for the A&W6410
13571b9114dSArnd Bergmann
13671b9114dSArnd Bergmannconfig MACH_MINI6410
13771b9114dSArnd Bergmann	bool "MINI6410"
13871b9114dSArnd Bergmann	depends on ATAGS
13971b9114dSArnd Bergmann	select CPU_S3C6410
14071b9114dSArnd Bergmann	select S3C64XX_SETUP_FB_24BPP
14171b9114dSArnd Bergmann	select S3C64XX_SETUP_SDHCI
14271b9114dSArnd Bergmann	select S3C_DEV_FB
14371b9114dSArnd Bergmann	select S3C_DEV_HSMMC
14471b9114dSArnd Bergmann	select S3C_DEV_HSMMC1
14571b9114dSArnd Bergmann	select S3C_DEV_NAND
14671b9114dSArnd Bergmann	select S3C_DEV_USB_HOST
14771b9114dSArnd Bergmann	select SAMSUNG_DEV_ADC
14871b9114dSArnd Bergmann	select SAMSUNG_DEV_TS
14971b9114dSArnd Bergmann	help
15071b9114dSArnd Bergmann	  Machine support for the FriendlyARM MINI6410
15171b9114dSArnd Bergmann
15271b9114dSArnd Bergmannconfig MACH_REAL6410
15371b9114dSArnd Bergmann	bool "REAL6410"
15471b9114dSArnd Bergmann	depends on ATAGS
15571b9114dSArnd Bergmann	select CPU_S3C6410
15671b9114dSArnd Bergmann	select S3C64XX_SETUP_FB_24BPP
15771b9114dSArnd Bergmann	select S3C64XX_SETUP_SDHCI
15871b9114dSArnd Bergmann	select S3C_DEV_FB
15971b9114dSArnd Bergmann	select S3C_DEV_HSMMC
16071b9114dSArnd Bergmann	select S3C_DEV_HSMMC1
16171b9114dSArnd Bergmann	select S3C_DEV_NAND
16271b9114dSArnd Bergmann	select S3C_DEV_USB_HOST
16371b9114dSArnd Bergmann	select SAMSUNG_DEV_ADC
16471b9114dSArnd Bergmann	select SAMSUNG_DEV_TS
16571b9114dSArnd Bergmann	help
16671b9114dSArnd Bergmann	  Machine support for the CoreWind REAL6410
16771b9114dSArnd Bergmann
16871b9114dSArnd Bergmannconfig MACH_SMDK6410
16971b9114dSArnd Bergmann	bool "SMDK6410"
17071b9114dSArnd Bergmann	depends on ATAGS
17171b9114dSArnd Bergmann	select CPU_S3C6410
17271b9114dSArnd Bergmann	select S3C64XX_SETUP_FB_24BPP
17371b9114dSArnd Bergmann	select S3C64XX_SETUP_I2C1
17471b9114dSArnd Bergmann	select S3C64XX_SETUP_IDE
17571b9114dSArnd Bergmann	select S3C64XX_SETUP_KEYPAD
17671b9114dSArnd Bergmann	select S3C64XX_SETUP_SDHCI
17771b9114dSArnd Bergmann	select S3C64XX_SETUP_USB_PHY
17871b9114dSArnd Bergmann	select S3C_DEV_FB
17971b9114dSArnd Bergmann	select S3C_DEV_HSMMC
18071b9114dSArnd Bergmann	select S3C_DEV_HSMMC1
18171b9114dSArnd Bergmann	select S3C_DEV_I2C1
18271b9114dSArnd Bergmann	select S3C_DEV_RTC
18371b9114dSArnd Bergmann	select S3C_DEV_USB_HOST
18471b9114dSArnd Bergmann	select S3C_DEV_USB_HSOTG
18571b9114dSArnd Bergmann	select S3C_DEV_WDT
18671b9114dSArnd Bergmann	select SAMSUNG_DEV_ADC
18771b9114dSArnd Bergmann	select SAMSUNG_DEV_BACKLIGHT
18871b9114dSArnd Bergmann	select SAMSUNG_DEV_IDE
18971b9114dSArnd Bergmann	select SAMSUNG_DEV_KEYPAD
19071b9114dSArnd Bergmann	select SAMSUNG_DEV_PWM
19171b9114dSArnd Bergmann	select SAMSUNG_DEV_TS
19271b9114dSArnd Bergmann	help
19371b9114dSArnd Bergmann	  Machine support for the Samsung SMDK6410
19471b9114dSArnd Bergmann
19571b9114dSArnd Bergmann# At least some of the SMDK6410s were shipped with the card detect
19671b9114dSArnd Bergmann# for the MMC/SD slots connected to the same input. This means that
19771b9114dSArnd Bergmann# either the boards need to be altered to have channel0 to an alternate
19871b9114dSArnd Bergmann# configuration or that only one slot can be used.
19971b9114dSArnd Bergmann
20071b9114dSArnd Bergmannchoice
20171b9114dSArnd Bergmann	prompt "SMDK6410 MMC/SD slot setup"
20271b9114dSArnd Bergmann	depends on MACH_SMDK6410
20371b9114dSArnd Bergmann
20471b9114dSArnd Bergmannconfig SMDK6410_SD_CH0
20571b9114dSArnd Bergmann	bool "Use channel 0 only"
20671b9114dSArnd Bergmann	depends on MACH_SMDK6410
20771b9114dSArnd Bergmann	help
20871b9114dSArnd Bergmann          Select CON7 (channel 0) as the MMC/SD slot, as
20971b9114dSArnd Bergmann	  at least some SMDK6410 boards come with the
21071b9114dSArnd Bergmann	  resistors fitted so that the card detects for
21171b9114dSArnd Bergmann	  channels 0 and 1 are the same.
21271b9114dSArnd Bergmann
21371b9114dSArnd Bergmannconfig SMDK6410_SD_CH1
21471b9114dSArnd Bergmann	bool "Use channel 1 only"
21571b9114dSArnd Bergmann	depends on MACH_SMDK6410
21671b9114dSArnd Bergmann	help
21771b9114dSArnd Bergmann          Select CON6 (channel 1) as the MMC/SD slot, as
21871b9114dSArnd Bergmann	  at least some SMDK6410 boards come with the
21971b9114dSArnd Bergmann	  resistors fitted so that the card detects for
22071b9114dSArnd Bergmann	  channels 0 and 1 are the same.
22171b9114dSArnd Bergmann
22271b9114dSArnd Bergmannendchoice
22371b9114dSArnd Bergmann
22471b9114dSArnd Bergmannconfig SMDK6410_WM1190_EV1
22571b9114dSArnd Bergmann	bool "Support Wolfson Microelectronics 1190-EV1 PMIC card"
22671b9114dSArnd Bergmann	depends on MACH_SMDK6410
22771b9114dSArnd Bergmann	depends on I2C=y
22871b9114dSArnd Bergmann	select MFD_WM8350_I2C
22971b9114dSArnd Bergmann	select REGULATOR
23071b9114dSArnd Bergmann	select REGULATOR_WM8350
23171b9114dSArnd Bergmann	help
23271b9114dSArnd Bergmann	  The Wolfson Microelectronics 1190-EV1 is a WM835x based PMIC
23371b9114dSArnd Bergmann	  and audio daughtercard for the Samsung SMDK6410 reference
23471b9114dSArnd Bergmann	  platform.  Enabling this option will build support for this
23571b9114dSArnd Bergmann	  module into the kernel.  The presence of the module will be
23671b9114dSArnd Bergmann	  detected at runtime so the resulting kernel can be used
23771b9114dSArnd Bergmann	  with or without the 1190-EV1 fitted.
23871b9114dSArnd Bergmann
23971b9114dSArnd Bergmannconfig SMDK6410_WM1192_EV1
24071b9114dSArnd Bergmann	bool "Support Wolfson Microelectronics 1192-EV1 PMIC card"
24171b9114dSArnd Bergmann	depends on MACH_SMDK6410
24271b9114dSArnd Bergmann	depends on I2C=y
24371b9114dSArnd Bergmann	select MFD_WM831X
24471b9114dSArnd Bergmann	select MFD_WM831X_I2C
24571b9114dSArnd Bergmann	select REGULATOR
24671b9114dSArnd Bergmann	select REGULATOR_WM831X
24771b9114dSArnd Bergmann	help
24871b9114dSArnd Bergmann	  The Wolfson Microelectronics 1192-EV1 is a WM831x based PMIC
24971b9114dSArnd Bergmann	  daughtercard for the Samsung SMDK6410 reference platform.
25071b9114dSArnd Bergmann	  Enabling this option will build support for this module into
25171b9114dSArnd Bergmann	  the kernel.  The presence of the daughtercard will be
25271b9114dSArnd Bergmann	  detected at runtime so the resulting kernel can be used
25371b9114dSArnd Bergmann	  with or without the 1192-EV1 fitted.
25471b9114dSArnd Bergmann
25571b9114dSArnd Bergmannconfig MACH_NCP
25671b9114dSArnd Bergmann	bool "NCP"
25771b9114dSArnd Bergmann	depends on ATAGS
25871b9114dSArnd Bergmann	select CPU_S3C6410
25971b9114dSArnd Bergmann	select S3C64XX_SETUP_I2C1
26071b9114dSArnd Bergmann	select S3C_DEV_HSMMC1
26171b9114dSArnd Bergmann	select S3C_DEV_I2C1
26271b9114dSArnd Bergmann	help
26371b9114dSArnd Bergmann          Machine support for the Samsung NCP
26471b9114dSArnd Bergmann
26571b9114dSArnd Bergmannconfig MACH_HMT
26671b9114dSArnd Bergmann	bool "Airgoo HMT"
26771b9114dSArnd Bergmann	depends on ATAGS
26871b9114dSArnd Bergmann	select CPU_S3C6410
26971b9114dSArnd Bergmann	select S3C64XX_SETUP_FB_24BPP
27071b9114dSArnd Bergmann	select S3C_DEV_FB
27171b9114dSArnd Bergmann	select S3C_DEV_NAND
27271b9114dSArnd Bergmann	select S3C_DEV_USB_HOST
27371b9114dSArnd Bergmann	select SAMSUNG_DEV_PWM
27471b9114dSArnd Bergmann	help
27571b9114dSArnd Bergmann	  Machine support for the Airgoo HMT
27671b9114dSArnd Bergmann
27771b9114dSArnd Bergmannconfig MACH_SMARTQ
27871b9114dSArnd Bergmann	bool
27971b9114dSArnd Bergmann	select CPU_S3C6410
28071b9114dSArnd Bergmann	select S3C64XX_SETUP_FB_24BPP
28171b9114dSArnd Bergmann	select S3C64XX_SETUP_SDHCI
28271b9114dSArnd Bergmann	select S3C64XX_SETUP_USB_PHY
28371b9114dSArnd Bergmann	select S3C_DEV_FB
28471b9114dSArnd Bergmann	select S3C_DEV_HSMMC
28571b9114dSArnd Bergmann	select S3C_DEV_HSMMC1
28671b9114dSArnd Bergmann	select S3C_DEV_HSMMC2
28771b9114dSArnd Bergmann	select S3C_DEV_HWMON
28871b9114dSArnd Bergmann	select S3C_DEV_RTC
28971b9114dSArnd Bergmann	select S3C_DEV_USB_HOST
29071b9114dSArnd Bergmann	select S3C_DEV_USB_HSOTG
29171b9114dSArnd Bergmann	select SAMSUNG_DEV_ADC
29271b9114dSArnd Bergmann	select SAMSUNG_DEV_PWM
29371b9114dSArnd Bergmann	select SAMSUNG_DEV_TS
29471b9114dSArnd Bergmann	help
29571b9114dSArnd Bergmann	    Shared machine support for SmartQ 5/7
29671b9114dSArnd Bergmann
29771b9114dSArnd Bergmannconfig MACH_SMARTQ5
29871b9114dSArnd Bergmann	bool "SmartQ 5"
29971b9114dSArnd Bergmann	depends on ATAGS
30071b9114dSArnd Bergmann	select MACH_SMARTQ
30171b9114dSArnd Bergmann	help
30271b9114dSArnd Bergmann	    Machine support for the SmartQ 5
30371b9114dSArnd Bergmann
30471b9114dSArnd Bergmannconfig MACH_SMARTQ7
30571b9114dSArnd Bergmann	bool "SmartQ 7"
30671b9114dSArnd Bergmann	depends on ATAGS
30771b9114dSArnd Bergmann	select MACH_SMARTQ
30871b9114dSArnd Bergmann	help
30971b9114dSArnd Bergmann	    Machine support for the SmartQ 7
31071b9114dSArnd Bergmann
31171b9114dSArnd Bergmannconfig MACH_WLF_CRAGG_6410
31271b9114dSArnd Bergmann	bool "Wolfson Cragganmore 6410"
31371b9114dSArnd Bergmann	depends on ATAGS
31471b9114dSArnd Bergmann	depends on I2C=y
31571b9114dSArnd Bergmann	select CPU_S3C6410
31671b9114dSArnd Bergmann	select LEDS_GPIO_REGISTER
31771b9114dSArnd Bergmann	select S3C64XX_DEV_SPI0
31871b9114dSArnd Bergmann	select S3C64XX_SETUP_FB_24BPP
31971b9114dSArnd Bergmann	select S3C64XX_SETUP_I2C1
32071b9114dSArnd Bergmann	select S3C64XX_SETUP_IDE
32171b9114dSArnd Bergmann	select S3C64XX_SETUP_KEYPAD
32271b9114dSArnd Bergmann	select S3C64XX_SETUP_SDHCI
32371b9114dSArnd Bergmann	select S3C64XX_SETUP_SPI
32471b9114dSArnd Bergmann	select S3C64XX_SETUP_USB_PHY
32571b9114dSArnd Bergmann	select S3C_DEV_FB
32671b9114dSArnd Bergmann	select S3C_DEV_HSMMC
32771b9114dSArnd Bergmann	select S3C_DEV_HSMMC1
32871b9114dSArnd Bergmann	select S3C_DEV_HSMMC2
32971b9114dSArnd Bergmann	select S3C_DEV_I2C1
33071b9114dSArnd Bergmann	select S3C_DEV_RTC
33171b9114dSArnd Bergmann	select S3C_DEV_USB_HOST
33271b9114dSArnd Bergmann	select S3C_DEV_USB_HSOTG
33371b9114dSArnd Bergmann	select S3C_DEV_WDT
33471b9114dSArnd Bergmann	select SAMSUNG_DEV_ADC
33571b9114dSArnd Bergmann	select SAMSUNG_DEV_KEYPAD
33671b9114dSArnd Bergmann	select SAMSUNG_DEV_PWM
33771b9114dSArnd Bergmann	help
33871b9114dSArnd Bergmann	  Machine support for the Wolfson Cragganmore S3C6410 variant.
33971b9114dSArnd Bergmann
34071b9114dSArnd Bergmannconfig MACH_S3C64XX_DT
34171b9114dSArnd Bergmann	bool "Samsung S3C6400/S3C6410 machine using Device Tree"
34271b9114dSArnd Bergmann	select CPU_S3C6400
34371b9114dSArnd Bergmann	select CPU_S3C6410
34471b9114dSArnd Bergmann	select PINCTRL
34571b9114dSArnd Bergmann	select PINCTRL_S3C64XX
34671b9114dSArnd Bergmann	help
34771b9114dSArnd Bergmann	  Machine support for Samsung S3C6400/S3C6410 machines with Device Tree
34871b9114dSArnd Bergmann	  enabled.
34971b9114dSArnd Bergmann	  Select this if a fdt blob is available for your S3C64XX SoC based
35071b9114dSArnd Bergmann	  board.
35171b9114dSArnd Bergmann	  Note: This is under development and not all peripherals can be
35271b9114dSArnd Bergmann	  supported with this machine file.
35371b9114dSArnd Bergmann
35471b9114dSArnd Bergmannendif
355