Linux 5.7.6
[linux/fpc-iii.git] / arch / arm / mach-s3c64xx / Kconfig
blobac3e3563487fc6f9de75272419a2d0be323ad42a
1 # SPDX-License-Identifier: GPL-2.0
3 # Copyright 2008 Openmoko, Inc.
4 #       Simtec Electronics, Ben Dooks <ben@simtec.co.uk>
6 menuconfig ARCH_S3C64XX
7         bool "Samsung S3C64XX"
8         depends on ARCH_MULTI_V6
9         select ARM_AMBA
10         select ARM_VIC
11         select CLKSRC_SAMSUNG_PWM
12         select COMMON_CLK_SAMSUNG
13         select GPIO_SAMSUNG if ATAGS
14         select GPIOLIB
15         select HAVE_S3C2410_I2C if I2C
16         select HAVE_S3C2410_WATCHDOG if WATCHDOG
17         select HAVE_TCM
18         select PLAT_SAMSUNG
19         select PM_GENERIC_DOMAINS if PM
20         select S3C_DEV_NAND if ATAGS
21         select S3C_GPIO_TRACK if ATAGS
22         select SAMSUNG_ATAGS if ATAGS
23         select SAMSUNG_WAKEMASK if PM
24         select SAMSUNG_WDT_RESET
25         help
26           Samsung S3C64XX series based systems
28 if ARCH_S3C64XX
30 # Configuration options for the S3C6410 CPU
32 config CPU_S3C6400
33         bool
34         help
35           Enable S3C6400 CPU support
37 config CPU_S3C6410
38         bool
39         help
40           Enable S3C6410 CPU support
42 config S3C64XX_PL080
43         def_bool DMADEVICES
44         select AMBA_PL08X
46 config S3C64XX_SETUP_SDHCI
47         bool
48         select S3C64XX_SETUP_SDHCI_GPIO
49         help
50           Internal configuration for default SDHCI setup for S3C6400 and
51           S3C6410 SoCs.
53 config S3C64XX_DEV_ONENAND1
54         bool
55         help
56           Compile in platform device definition for OneNAND1 controller
58 config SAMSUNG_DEV_BACKLIGHT
59         bool
60         depends on SAMSUNG_DEV_PWM
61         help
62           Compile in platform device definition LCD backlight with PWM Timer
64 # platform specific device setup
66 config S3C64XX_SETUP_I2C0
67         bool
68         default y
69         help
70           Common setup code for i2c bus 0.
72           Note, currently since i2c0 is always compiled, this setup helper
73           is always compiled with it.
75 config S3C64XX_SETUP_I2C1
76         bool
77         help
78           Common setup code for i2c bus 1.
80 config S3C64XX_SETUP_IDE
81         bool
82         help
83           Common setup code for S3C64XX IDE.
85 config S3C64XX_SETUP_FB_24BPP
86         bool
87         help
88           Common setup code for S3C64XX with an 24bpp RGB display helper.
90 config S3C64XX_SETUP_KEYPAD
91         bool
92         help
93           Common setup code for S3C64XX KEYPAD GPIO configurations
95 config S3C64XX_SETUP_SDHCI_GPIO
96         bool
97         help
98           Common setup code for S3C64XX SDHCI GPIO configurations
100 config S3C64XX_SETUP_SPI
101         bool
102         help
103          Common setup code for SPI GPIO configurations
105 config S3C64XX_SETUP_USB_PHY
106         bool
107         help
108           Common setup code for USB PHY controller
110 # S36400 Macchine support
112 config MACH_SMDK6400
113        bool "SMDK6400"
114         depends on ATAGS
115         select CPU_S3C6400
116         select S3C64XX_SETUP_SDHCI
117         select S3C_DEV_HSMMC1
118         help
119           Machine support for the Samsung SMDK6400
121 # S3C6410 machine support
123 config MACH_ANW6410
124         bool "A&W6410"
125         depends on ATAGS
126         select CPU_S3C6410
127         select S3C64XX_SETUP_FB_24BPP
128         select S3C_DEV_FB
129         help
130           Machine support for the A&W6410
132 config MACH_MINI6410
133         bool "MINI6410"
134         depends on ATAGS
135         select CPU_S3C6410
136         select S3C64XX_SETUP_FB_24BPP
137         select S3C64XX_SETUP_SDHCI
138         select S3C_DEV_FB
139         select S3C_DEV_HSMMC
140         select S3C_DEV_HSMMC1
141         select S3C_DEV_NAND
142         select S3C_DEV_USB_HOST
143         select SAMSUNG_DEV_ADC
144         select SAMSUNG_DEV_TS
145         help
146           Machine support for the FriendlyARM MINI6410
148 config MACH_REAL6410
149         bool "REAL6410"
150         depends on ATAGS
151         select CPU_S3C6410
152         select S3C64XX_SETUP_FB_24BPP
153         select S3C64XX_SETUP_SDHCI
154         select S3C_DEV_FB
155         select S3C_DEV_HSMMC
156         select S3C_DEV_HSMMC1
157         select S3C_DEV_NAND
158         select S3C_DEV_USB_HOST
159         select SAMSUNG_DEV_ADC
160         select SAMSUNG_DEV_TS
161         help
162           Machine support for the CoreWind REAL6410
164 config MACH_SMDK6410
165         bool "SMDK6410"
166         depends on ATAGS
167         select CPU_S3C6410
168         select HAVE_S3C2410_WATCHDOG if WATCHDOG
169         select S3C64XX_SETUP_FB_24BPP
170         select S3C64XX_SETUP_I2C1
171         select S3C64XX_SETUP_IDE
172         select S3C64XX_SETUP_KEYPAD
173         select S3C64XX_SETUP_SDHCI
174         select S3C64XX_SETUP_USB_PHY
175         select S3C_DEV_FB
176         select S3C_DEV_HSMMC
177         select S3C_DEV_HSMMC1
178         select S3C_DEV_I2C1
179         select S3C_DEV_RTC
180         select S3C_DEV_USB_HOST
181         select S3C_DEV_USB_HSOTG
182         select S3C_DEV_WDT
183         select SAMSUNG_DEV_ADC
184         select SAMSUNG_DEV_BACKLIGHT
185         select SAMSUNG_DEV_IDE
186         select SAMSUNG_DEV_KEYPAD
187         select SAMSUNG_DEV_PWM
188         select SAMSUNG_DEV_TS
189         help
190           Machine support for the Samsung SMDK6410
192 # At least some of the SMDK6410s were shipped with the card detect
193 # for the MMC/SD slots connected to the same input. This means that
194 # either the boards need to be altered to have channel0 to an alternate
195 # configuration or that only one slot can be used.
197 choice
198         prompt "SMDK6410 MMC/SD slot setup"
199         depends on MACH_SMDK6410
201 config SMDK6410_SD_CH0
202         bool "Use channel 0 only"
203         depends on MACH_SMDK6410
204         help
205           Select CON7 (channel 0) as the MMC/SD slot, as
206           at least some SMDK6410 boards come with the
207           resistors fitted so that the card detects for
208           channels 0 and 1 are the same.
210 config SMDK6410_SD_CH1
211         bool "Use channel 1 only"
212         depends on MACH_SMDK6410
213         help
214           Select CON6 (channel 1) as the MMC/SD slot, as
215           at least some SMDK6410 boards come with the
216           resistors fitted so that the card detects for
217           channels 0 and 1 are the same.
219 endchoice
221 config SMDK6410_WM1190_EV1
222         bool "Support Wolfson Microelectronics 1190-EV1 PMIC card"
223         depends on MACH_SMDK6410
224         depends on I2C=y
225         select MFD_WM8350_I2C
226         select REGULATOR
227         select REGULATOR_WM8350
228         help
229           The Wolfson Microelectronics 1190-EV1 is a WM835x based PMIC
230           and audio daughtercard for the Samsung SMDK6410 reference
231           platform.  Enabling this option will build support for this
232           module into the kernel.  The presence of the module will be
233           detected at runtime so the resulting kernel can be used
234           with or without the 1190-EV1 fitted.
236 config SMDK6410_WM1192_EV1
237         bool "Support Wolfson Microelectronics 1192-EV1 PMIC card"
238         depends on MACH_SMDK6410
239         depends on I2C=y
240         select MFD_WM831X
241         select MFD_WM831X_I2C
242         select REGULATOR
243         select REGULATOR_WM831X
244         help
245           The Wolfson Microelectronics 1192-EV1 is a WM831x based PMIC
246           daughtercard for the Samsung SMDK6410 reference platform.
247           Enabling this option will build support for this module into
248           the kernel.  The presence of the daughtercard will be
249           detected at runtime so the resulting kernel can be used
250           with or without the 1192-EV1 fitted.
252 config MACH_NCP
253         bool "NCP"
254         depends on ATAGS
255         select CPU_S3C6410
256         select S3C64XX_SETUP_I2C1
257         select S3C_DEV_HSMMC1
258         select S3C_DEV_I2C1
259         help
260           Machine support for the Samsung NCP
262 config MACH_HMT
263         bool "Airgoo HMT"
264         depends on ATAGS
265         select CPU_S3C6410
266         select S3C64XX_SETUP_FB_24BPP
267         select S3C_DEV_FB
268         select S3C_DEV_NAND
269         select S3C_DEV_USB_HOST
270         select SAMSUNG_DEV_PWM
271         help
272           Machine support for the Airgoo HMT
274 config MACH_SMARTQ
275         bool
276         select CPU_S3C6410
277         select S3C64XX_SETUP_FB_24BPP
278         select S3C64XX_SETUP_SDHCI
279         select S3C64XX_SETUP_USB_PHY
280         select S3C_DEV_FB
281         select S3C_DEV_HSMMC
282         select S3C_DEV_HSMMC1
283         select S3C_DEV_HSMMC2
284         select S3C_DEV_HWMON
285         select S3C_DEV_RTC
286         select S3C_DEV_USB_HOST
287         select S3C_DEV_USB_HSOTG
288         select SAMSUNG_DEV_ADC
289         select SAMSUNG_DEV_PWM
290         select SAMSUNG_DEV_TS
291         help
292             Shared machine support for SmartQ 5/7
294 config MACH_SMARTQ5
295         bool "SmartQ 5"
296         depends on ATAGS
297         select MACH_SMARTQ
298         help
299             Machine support for the SmartQ 5
301 config MACH_SMARTQ7
302         bool "SmartQ 7"
303         depends on ATAGS
304         select MACH_SMARTQ
305         help
306             Machine support for the SmartQ 7
308 config MACH_WLF_CRAGG_6410
309         bool "Wolfson Cragganmore 6410"
310         depends on ATAGS
311         depends on I2C=y
312         select CPU_S3C6410
313         select LEDS_GPIO_REGISTER
314         select S3C64XX_DEV_SPI0
315         select S3C64XX_SETUP_FB_24BPP
316         select S3C64XX_SETUP_I2C1
317         select S3C64XX_SETUP_IDE
318         select S3C64XX_SETUP_KEYPAD
319         select S3C64XX_SETUP_SDHCI
320         select S3C64XX_SETUP_SPI
321         select S3C64XX_SETUP_USB_PHY
322         select S3C_DEV_FB
323         select S3C_DEV_HSMMC
324         select S3C_DEV_HSMMC1
325         select S3C_DEV_HSMMC2
326         select S3C_DEV_I2C1
327         select S3C_DEV_RTC
328         select S3C_DEV_USB_HOST
329         select S3C_DEV_USB_HSOTG
330         select S3C_DEV_WDT
331         select SAMSUNG_DEV_ADC
332         select SAMSUNG_DEV_KEYPAD
333         select SAMSUNG_DEV_PWM
334         help
335           Machine support for the Wolfson Cragganmore S3C6410 variant.
337 config MACH_S3C64XX_DT
338         bool "Samsung S3C6400/S3C6410 machine using Device Tree"
339         select CPU_S3C6400
340         select CPU_S3C6410
341         select PINCTRL
342         select PINCTRL_S3C64XX
343         help
344           Machine support for Samsung S3C6400/S3C6410 machines with Device Tree
345           enabled.
346           Select this if a fdt blob is available for your S3C64XX SoC based
347           board.
348           Note: This is under development and not all peripherals can be
349           supported with this machine file.
351 endif