1# SPDX-License-Identifier: GPL-2.0
2#
3# Copyright 2009 Simtec Electronics
4
5source "arch/arm/mach-s3c/Kconfig.s3c64xx"
6
7config PLAT_SAMSUNG
8	def_bool ARCH_S3C64XX
9	select GENERIC_IRQ_CHIP
10	select NO_IOPORT_MAP
11	select SOC_SAMSUNG
12	help
13	  Base platform code for all Samsung SoC based systems
14
15config SAMSUNG_PM
16	def_bool ARCH_S3C64XX
17	depends on PM
18	help
19	  Base platform power management code for samsung code
20
21if PLAT_SAMSUNG
22menu "Samsung Common options"
23
24# boot configurations
25
26comment "Boot options"
27
28config S3C_LOWLEVEL_UART_PORT
29	int "S3C UART to use for low-level messages"
30	depends on ARCH_S3C64XX
31	default 0
32	help
33	  Choice of which UART port to use for the low-level messages,
34	  such as the `Uncompressing...` at start time. The value of
35	  this configuration should be between zero and two. The port
36	  must have been initialised by the boot-loader before use.
37
38config SAMSUNG_ATAGS
39	def_bool n
40	depends on ATAGS
41	help
42	  This option enables ATAGS based boot support code for
43	  Samsung platforms, including static platform devices, legacy
44	  clock, timer and interrupt initialization, etc.
45
46	  Platforms that support only DT based boot need not to select
47	  this option.
48
49if SAMSUNG_ATAGS
50
51config S3C_GPIO_SPACE
52	int "Space between gpio banks"
53	default 0
54	help
55	  Add a number of spare GPIO entries between each bank for debugging
56	  purposes. This allows any problems where an counter overflows from
57	  one bank to another to be caught, at the expense of using a little
58	  more memory.
59
60config S3C_GPIO_TRACK
61	bool
62	help
63	  Internal configuration option to enable the s3c specific gpio
64	  chip tracking if the platform requires it.
65
66# device definitions to compile in
67
68config S3C_DEV_HSMMC
69	bool
70	help
71	  Compile in platform device definitions for HSMMC code
72
73config S3C_DEV_HSMMC1
74	bool
75	help
76	  Compile in platform device definitions for HSMMC channel 1
77
78config S3C_DEV_HSMMC2
79	bool
80	help
81	  Compile in platform device definitions for HSMMC channel 2
82
83config S3C_DEV_HSMMC3
84	bool
85	help
86	  Compile in platform device definitions for HSMMC channel 3
87
88config S3C_DEV_I2C1
89	bool
90	help
91	  Compile in platform device definitions for I2C channel 1
92
93config S3C_DEV_FB
94	bool
95	help
96	  Compile in platform device definition for framebuffer
97
98config S3C_DEV_USB_HOST
99	bool
100	help
101	  Compile in platform device definition for USB host.
102
103config S3C_DEV_USB_HSOTG
104	bool
105	help
106	  Compile in platform device definition for USB high-speed OtG
107
108config S3C64XX_DEV_SPI0
109	bool
110	help
111	  Compile in platform device definitions for S3C64XX's type
112	  SPI controller 0
113
114config SAMSUNG_DEV_KEYPAD
115	bool
116	help
117	  Compile in platform device definitions for keypad
118
119config SAMSUNG_DEV_PWM
120	bool
121	help
122	  Compile in platform device definition for PWM Timer
123
124config GPIO_SAMSUNG
125	def_bool y
126
127config SAMSUNG_PM_GPIO
128	bool
129	default y if GPIO_SAMSUNG && PM
130	help
131	  Include legacy GPIO power management code for platforms not using
132	  pinctrl-samsung driver.
133endif
134
135config SAMSUNG_WAKEMASK
136	bool
137	depends on PM
138	help
139	  Compile support for wakeup-mask controls found on the S3C6400
140	  and above. This code allows a set of interrupt to wakeup-mask
141	  mappings. See <plat/wakeup-mask.h>
142
143endmenu
144endif
145