Merge tag 'cleanup2' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc
[linux-2.6.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
6 # temporary until we can eliminate all drivers using it.
7 config PLAT_S3C64XX
8         bool
9         depends on ARCH_S3C64XX
10         select SAMSUNG_WAKEMASK
11         select PM_GENERIC_DOMAINS
12         default y
13         help
14           Base platform code for any Samsung S3C64XX device
15
16
17 # Configuration options for the S3C6410 CPU
18
19 config CPU_S3C6400
20         bool
21         help
22           Enable S3C6400 CPU support
23
24 config CPU_S3C6410
25         bool
26         help
27           Enable S3C6410 CPU support
28
29 config S3C64XX_DMA
30         bool "S3C64XX DMA"
31         select S3C_DMA
32
33 config S3C64XX_SETUP_SDHCI
34         select S3C64XX_SETUP_SDHCI_GPIO
35         bool
36         help
37           Internal configuration for default SDHCI setup for S3C6400 and
38           S3C6410 SoCs.
39
40 config S3C64XX_DEV_ONENAND1
41         bool
42         help
43           Compile in platform device definition for OneNAND1 controller
44
45 # platform specific device setup
46
47 config S3C64XX_SETUP_I2C0
48         bool
49         default y
50         help
51           Common setup code for i2c bus 0.
52
53           Note, currently since i2c0 is always compiled, this setup helper
54           is always compiled with it.
55
56 config S3C64XX_SETUP_I2C1
57         bool
58         help
59           Common setup code for i2c bus 1.
60
61 config S3C64XX_SETUP_IDE
62         bool
63         help
64           Common setup code for S3C64XX IDE.
65
66 config S3C64XX_SETUP_FB_24BPP
67         bool
68         help
69           Common setup code for S3C64XX with an 24bpp RGB display helper.
70
71 config S3C64XX_SETUP_KEYPAD
72         bool
73         help
74           Common setup code for S3C64XX KEYPAD GPIO configurations
75
76 config S3C64XX_SETUP_SDHCI_GPIO
77         bool
78         help
79           Common setup code for S3C64XX SDHCI GPIO configurations
80
81 config S3C64XX_SETUP_SPI
82         bool
83         help
84          Common setup code for SPI GPIO configurations
85
86 # S36400 Macchine support
87
88 config MACH_SMDK6400
89        bool "SMDK6400"
90         select CPU_S3C6400
91         select S3C_DEV_HSMMC
92         select S3C_DEV_NAND
93         select S3C64XX_SETUP_SDHCI
94         help
95           Machine support for the Samsung SMDK6400
96
97 # S3C6410 machine support
98
99 config MACH_ANW6410
100         bool "A&W6410"
101         select CPU_S3C6410
102         select S3C_DEV_FB
103         select S3C64XX_SETUP_FB_24BPP
104         help
105           Machine support for the A&W6410
106
107 config MACH_MINI6410
108         bool "MINI6410"
109         select CPU_S3C6410
110         select S3C_DEV_HSMMC
111         select S3C_DEV_HSMMC1
112         select S3C64XX_SETUP_SDHCI
113         select S3C_DEV_USB_HOST
114         select S3C_DEV_NAND
115         select S3C_DEV_FB
116         select S3C64XX_SETUP_FB_24BPP
117         select SAMSUNG_DEV_ADC
118         select SAMSUNG_DEV_TS
119         help
120           Machine support for the FriendlyARM MINI6410
121
122 config MACH_REAL6410
123         bool "REAL6410"
124         select CPU_S3C6410
125         select S3C_DEV_HSMMC
126         select S3C_DEV_HSMMC1
127         select S3C64XX_SETUP_SDHCI
128         select S3C_DEV_FB
129         select S3C64XX_SETUP_FB_24BPP
130         select S3C_DEV_NAND
131         select SAMSUNG_DEV_ADC
132         select SAMSUNG_DEV_TS
133         select S3C_DEV_USB_HOST
134         help
135           Machine support for the CoreWind REAL6410
136
137 config MACH_SMDK6410
138         bool "SMDK6410"
139         select CPU_S3C6410
140         select SAMSUNG_DEV_ADC
141         select S3C_DEV_HSMMC
142         select S3C_DEV_HSMMC1
143         select S3C_DEV_I2C1
144         select SAMSUNG_DEV_IDE
145         select S3C_DEV_FB
146         select S3C_DEV_RTC
147         select SAMSUNG_DEV_TS
148         select S3C_DEV_USB_HOST
149         select S3C_DEV_USB_HSOTG
150         select S3C_DEV_WDT
151         select SAMSUNG_DEV_BACKLIGHT
152         select SAMSUNG_DEV_KEYPAD
153         select SAMSUNG_DEV_PWM
154         select HAVE_S3C2410_WATCHDOG if WATCHDOG
155         select S3C64XX_SETUP_SDHCI
156         select S3C64XX_SETUP_I2C1
157         select S3C64XX_SETUP_IDE
158         select S3C64XX_SETUP_FB_24BPP
159         select S3C64XX_SETUP_KEYPAD
160         help
161           Machine support for the Samsung SMDK6410
162
163 # At least some of the SMDK6410s were shipped with the card detect
164 # for the MMC/SD slots connected to the same input. This means that
165 # either the boards need to be altered to have channel0 to an alternate
166 # configuration or that only one slot can be used.
167
168 choice
169         prompt "SMDK6410 MMC/SD slot setup"
170         depends on MACH_SMDK6410
171
172 config SMDK6410_SD_CH0
173         bool "Use channel 0 only"
174         depends on MACH_SMDK6410
175         help
176           Select CON7 (channel 0) as the MMC/SD slot, as
177           at least some SMDK6410 boards come with the
178           resistors fitted so that the card detects for
179           channels 0 and 1 are the same.
180
181 config SMDK6410_SD_CH1
182         bool "Use channel 1 only"
183         depends on MACH_SMDK6410
184         help
185           Select CON6 (channel 1) as the MMC/SD slot, as
186           at least some SMDK6410 boards come with the
187           resistors fitted so that the card detects for
188           channels 0 and 1 are the same.
189
190 endchoice
191
192 config SMDK6410_WM1190_EV1
193         bool "Support Wolfson Microelectronics 1190-EV1 PMIC card"
194         depends on MACH_SMDK6410
195         select REGULATOR
196         select REGULATOR_WM8350
197         select S3C24XX_GPIO_EXTRA64
198         select MFD_WM8350_I2C
199         select MFD_WM8350_CONFIG_MODE_0
200         select MFD_WM8350_CONFIG_MODE_3
201         select MFD_WM8352_CONFIG_MODE_0
202         help
203           The Wolfson Microelectronics 1190-EV1 is a WM835x based PMIC
204           and audio daughtercard for the Samsung SMDK6410 reference
205           platform.  Enabling this option will build support for this
206           module into the kernel.  The presence of the module will be
207           detected at runtime so the the resulting kernel can be used
208           with or without the 1190-EV1 fitted.
209
210 config SMDK6410_WM1192_EV1
211         bool "Support Wolfson Microelectronics 1192-EV1 PMIC card"
212         depends on MACH_SMDK6410
213         select REGULATOR
214         select REGULATOR_WM831X
215         select S3C24XX_GPIO_EXTRA64
216         select MFD_WM831X
217         select MFD_WM831X_I2C
218         help
219           The Wolfson Microelectronics 1192-EV1 is a WM831x based PMIC
220           daughtercard for the Samsung SMDK6410 reference platform.
221           Enabling this option will build support for this module into
222           the kernel.  The presence of the daughtercard will be
223           detected at runtime so the the resulting kernel can be used
224           with or without the 1192-EV1 fitted.
225
226 config MACH_NCP
227         bool "NCP"
228         select CPU_S3C6410
229         select S3C_DEV_I2C1
230         select S3C_DEV_HSMMC1
231         select S3C64XX_SETUP_I2C1
232         help
233           Machine support for the Samsung NCP
234
235 config MACH_HMT
236         bool "Airgoo HMT"
237         select CPU_S3C6410
238         select S3C_DEV_FB
239         select S3C_DEV_NAND
240         select S3C_DEV_USB_HOST
241         select S3C64XX_SETUP_FB_24BPP
242         select SAMSUNG_DEV_PWM
243         help
244           Machine support for the Airgoo HMT
245
246 config MACH_SMARTQ
247         bool
248         select CPU_S3C6410
249         select S3C_DEV_HSMMC
250         select S3C_DEV_HSMMC1
251         select S3C_DEV_HSMMC2
252         select S3C_DEV_FB
253         select S3C_DEV_HWMON
254         select S3C_DEV_RTC
255         select S3C_DEV_USB_HSOTG
256         select S3C_DEV_USB_HOST
257         select S3C64XX_SETUP_SDHCI
258         select S3C64XX_SETUP_FB_24BPP
259         select SAMSUNG_DEV_ADC
260         select SAMSUNG_DEV_PWM
261         select SAMSUNG_DEV_TS
262         help
263             Shared machine support for SmartQ 5/7
264
265 config MACH_SMARTQ5
266         bool "SmartQ 5"
267         select MACH_SMARTQ
268         help
269             Machine support for the SmartQ 5
270
271 config MACH_SMARTQ7
272         bool "SmartQ 7"
273         select MACH_SMARTQ
274         help
275             Machine support for the SmartQ 7
276
277 config MACH_WLF_CRAGG_6410
278         bool "Wolfson Cragganmore 6410"
279         select CPU_S3C6410
280         select S3C64XX_SETUP_SDHCI
281         select S3C64XX_SETUP_I2C1
282         select S3C64XX_SETUP_IDE
283         select S3C64XX_SETUP_FB_24BPP
284         select S3C64XX_SETUP_KEYPAD
285         select S3C64XX_SETUP_SPI
286         select SAMSUNG_DEV_ADC
287         select SAMSUNG_DEV_KEYPAD
288         select S3C_DEV_USB_HOST
289         select S3C_DEV_USB_HSOTG
290         select S3C_DEV_HSMMC
291         select S3C_DEV_HSMMC1
292         select S3C_DEV_HSMMC2
293         select S3C_DEV_I2C1
294         select S3C_DEV_WDT
295         select S3C_DEV_RTC
296         select S3C64XX_DEV_SPI0
297         select S3C24XX_GPIO_EXTRA128
298         select I2C
299         help
300           Machine support for the Wolfson Cragganmore S3C6410 variant.