Merge tag 'omap-for-v4.6/dt-ti81xx-signed' of git://git.kernel.org/pub/scm/linux...
[cascardo/linux.git] / arch / arm / mach-s3c64xx / Kconfig
1 # Copyright 2008 Openmoko, Inc.
2 #       Simtec Electronics, Ben Dooks <ben@simtec.co.uk>
3 #
4 # Licensed under GPLv2
5 menuconfig ARCH_S3C64XX
6         bool "Samsung S3C64XX"
7         depends on ARCH_MULTI_V6
8         select ARCH_REQUIRE_GPIOLIB
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 HAVE_S3C2410_I2C if I2C
15         select HAVE_S3C2410_WATCHDOG if WATCHDOG
16         select HAVE_TCM
17         select PLAT_SAMSUNG
18         select PM_GENERIC_DOMAINS if PM
19         select S3C_DEV_NAND if ATAGS
20         select S3C_GPIO_TRACK if ATAGS
21         select SAMSUNG_ATAGS if ATAGS
22         select SAMSUNG_WAKEMASK if PM
23         select SAMSUNG_WDT_RESET
24         help
25           Samsung S3C64XX series based systems
26
27 if ARCH_S3C64XX
28
29 # Configuration options for the S3C6410 CPU
30
31 config CPU_S3C6400
32         bool
33         help
34           Enable S3C6400 CPU support
35
36 config CPU_S3C6410
37         bool
38         help
39           Enable S3C6410 CPU support
40
41 config S3C64XX_PL080
42         def_bool DMADEVICES
43         select ARM_AMBA
44         select AMBA_PL08X
45
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.
52
53 config S3C64XX_DEV_ONENAND1
54         bool
55         help
56           Compile in platform device definition for OneNAND1 controller
57
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
63
64 # platform specific device setup
65
66 config S3C64XX_SETUP_I2C0
67         bool
68         default y
69         help
70           Common setup code for i2c bus 0.
71
72           Note, currently since i2c0 is always compiled, this setup helper
73           is always compiled with it.
74
75 config S3C64XX_SETUP_I2C1
76         bool
77         help
78           Common setup code for i2c bus 1.
79
80 config S3C64XX_SETUP_IDE
81         bool
82         help
83           Common setup code for S3C64XX IDE.
84
85 config S3C64XX_SETUP_FB_24BPP
86         bool
87         help
88           Common setup code for S3C64XX with an 24bpp RGB display helper.
89
90 config S3C64XX_SETUP_KEYPAD
91         bool
92         help
93           Common setup code for S3C64XX KEYPAD GPIO configurations
94
95 config S3C64XX_SETUP_SDHCI_GPIO
96         bool
97         help
98           Common setup code for S3C64XX SDHCI GPIO configurations
99
100 config S3C64XX_SETUP_SPI
101         bool
102         help
103          Common setup code for SPI GPIO configurations
104
105 config S3C64XX_SETUP_USB_PHY
106         bool
107         help
108           Common setup code for USB PHY controller
109
110 # S36400 Macchine support
111
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
120
121 # S3C6410 machine support
122
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
131
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
147
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
163
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
191
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.
196
197 choice
198         prompt "SMDK6410 MMC/SD slot setup"
199         depends on MACH_SMDK6410
200
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.
209
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.
218
219 endchoice
220
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.
235
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.
251
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
261
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
273
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
293
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
300
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
307
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.
336
337 config MACH_S3C64XX_DT
338         bool "Samsung S3C6400/S3C6410 machine using Device Tree"
339         select CLKSRC_OF
340         select CPU_S3C6400
341         select CPU_S3C6410
342         select PINCTRL
343         select PINCTRL_S3C64XX
344         help
345           Machine support for Samsung S3C6400/S3C6410 machines with Device Tree
346           enabled.
347           Select this if a fdt blob is available for your S3C64XX SoC based
348           board.
349           Note: This is under development and not all peripherals can be
350           supported with this machine file.
351
352 endif