Merge branch 'clksrc/cleanup' into next/multiplatform
[cascardo/linux.git] / arch / arm / mach-exynos / Kconfig
1 # arch/arm/mach-exynos/Kconfig
2 #
3 # Copyright (c) 2010-2011 Samsung Electronics Co., Ltd.
4 #               http://www.samsung.com/
5 #
6 # Licensed under GPLv2
7
8 # Configuration options for the EXYNOS4
9
10 if ARCH_EXYNOS
11
12 menu "SAMSUNG EXYNOS SoCs Support"
13
14 config ARCH_EXYNOS4
15         bool "SAMSUNG EXYNOS4"
16         default y
17         select HAVE_ARM_SCU if SMP
18         select HAVE_SMP
19         select MIGHT_HAVE_CACHE_L2X0
20         help
21           Samsung EXYNOS4 SoCs based systems
22
23 config ARCH_EXYNOS5
24         bool "SAMSUNG EXYNOS5"
25         select HAVE_ARM_SCU if SMP
26         select HAVE_SMP
27         help
28           Samsung EXYNOS5 (Cortex-A15) SoC based systems
29
30 comment "EXYNOS SoCs"
31
32 config CPU_EXYNOS4210
33         bool "SAMSUNG EXYNOS4210"
34         default y
35         depends on ARCH_EXYNOS4
36         select ARM_CPU_SUSPEND if PM
37         select PM_GENERIC_DOMAINS
38         select S5P_PM if PM
39         select S5P_SLEEP if PM
40         select SAMSUNG_DMADEV
41         help
42           Enable EXYNOS4210 CPU support
43
44 config SOC_EXYNOS4212
45         bool "SAMSUNG EXYNOS4212"
46         default y
47         depends on ARCH_EXYNOS4
48         select S5P_PM if PM
49         select S5P_SLEEP if PM
50         select SAMSUNG_DMADEV
51         help
52           Enable EXYNOS4212 SoC support
53
54 config SOC_EXYNOS4412
55         bool "SAMSUNG EXYNOS4412"
56         default y
57         depends on ARCH_EXYNOS4
58         select SAMSUNG_DMADEV
59         help
60           Enable EXYNOS4412 SoC support
61
62 config SOC_EXYNOS5250
63         bool "SAMSUNG EXYNOS5250"
64         default y
65         depends on ARCH_EXYNOS5
66         select S5P_PM if PM
67         select S5P_SLEEP if PM
68         select S5P_DEV_MFC
69         select SAMSUNG_DMADEV
70         help
71           Enable EXYNOS5250 SoC support
72
73 config SOC_EXYNOS5440
74         bool "SAMSUNG EXYNOS5440"
75         default y
76         depends on ARCH_EXYNOS5
77         select ARM_ARCH_TIMER
78         select AUTO_ZRELADDR
79         select PINCTRL
80         select PINCTRL_EXYNOS5440
81         help
82           Enable EXYNOS5440 SoC support
83
84 config EXYNOS4_MCT
85         bool
86         default y
87         help
88           Use MCT (Multi Core Timer) as kernel timers
89
90 config EXYNOS_ATAGS
91         bool "ATAGS based boot for EXYNOS (deprecated)"
92         depends on !ARCH_MULTIPLATFORM
93         depends on ATAGS
94         default y
95         help
96           The EXYNOS platform is moving towards being completely probed
97           through device tree. This enables support for board files using
98           the traditional ATAGS boot format.
99           Note that this option is not available for multiplatform builds.
100
101 if EXYNOS_ATAGS
102
103 config EXYNOS_DEV_DMA
104         bool
105         help
106           Compile in amba device definitions for DMA controller
107
108 config EXYNOS4_DEV_AHCI
109         bool
110         help
111           Compile in platform device definitions for AHCI
112
113 config EXYNOS_DEV_DRM
114         bool
115         help
116           Compile in platform device definitions for core DRM device
117
118 config EXYNOS4_SETUP_FIMD0
119         bool
120         help
121           Common setup code for FIMD0.
122
123 config EXYNOS4_DEV_USB_OHCI
124         bool
125         help
126           Compile in platform device definition for USB OHCI
127
128 config EXYNOS4_SETUP_I2C1
129         bool
130         help
131           Common setup code for i2c bus 1.
132
133 config EXYNOS4_SETUP_I2C2
134         bool
135         help
136           Common setup code for i2c bus 2.
137
138 config EXYNOS4_SETUP_I2C3
139         bool
140         help
141           Common setup code for i2c bus 3.
142
143 config EXYNOS4_SETUP_I2C4
144         bool
145         help
146           Common setup code for i2c bus 4.
147
148 config EXYNOS4_SETUP_I2C5
149         bool
150         help
151           Common setup code for i2c bus 5.
152
153 config EXYNOS4_SETUP_I2C6
154         bool
155         help
156           Common setup code for i2c bus 6.
157
158 config EXYNOS4_SETUP_I2C7
159         bool
160         help
161           Common setup code for i2c bus 7.
162
163 config EXYNOS4_SETUP_KEYPAD
164         bool
165         help
166           Common setup code for keypad.
167
168 config EXYNOS4_SETUP_SDHCI
169         bool
170         select EXYNOS4_SETUP_SDHCI_GPIO
171         help
172           Internal helper functions for EXYNOS4 based SDHCI systems.
173
174 config EXYNOS4_SETUP_SDHCI_GPIO
175         bool
176         help
177           Common setup code for SDHCI gpio.
178
179 config EXYNOS4_SETUP_FIMC
180         bool
181         help
182           Common setup code for the camera interfaces.
183
184 config EXYNOS4_SETUP_USB_PHY
185         bool
186         help
187           Common setup code for USB PHY controller
188
189 config EXYNOS_SETUP_SPI
190         bool
191         help
192           Common setup code for SPI GPIO configurations.
193
194 # machine support
195
196 if ARCH_EXYNOS4
197
198 comment "EXYNOS4210 Boards"
199
200 config MACH_SMDKC210
201         bool "SMDKC210"
202         select MACH_SMDKV310
203         help
204           Machine support for Samsung SMDKC210
205
206 config MACH_SMDKV310
207         bool "SMDKV310"
208         select CPU_EXYNOS4210
209         select EXYNOS4_DEV_AHCI
210         select EXYNOS4_DEV_USB_OHCI
211         select EXYNOS4_SETUP_FIMD0
212         select EXYNOS4_SETUP_I2C1
213         select EXYNOS4_SETUP_KEYPAD
214         select EXYNOS4_SETUP_SDHCI
215         select EXYNOS4_SETUP_USB_PHY
216         select EXYNOS_DEV_DMA
217         select EXYNOS_DEV_DRM
218         select EXYNOS_DEV_SYSMMU
219         select S3C24XX_PWM
220         select S3C_DEV_HSMMC
221         select S3C_DEV_HSMMC1
222         select S3C_DEV_HSMMC2
223         select S3C_DEV_HSMMC3
224         select S3C_DEV_I2C1
225         select S3C_DEV_RTC
226         select S3C_DEV_USB_HSOTG
227         select S3C_DEV_WDT
228         select S5P_DEV_FIMC0
229         select S5P_DEV_FIMC1
230         select S5P_DEV_FIMC2
231         select S5P_DEV_FIMC3
232         select S5P_DEV_FIMD0
233         select S5P_DEV_G2D
234         select S5P_DEV_I2C_HDMIPHY
235         select S5P_DEV_JPEG
236         select S5P_DEV_MFC
237         select S5P_DEV_TV
238         select S5P_DEV_USB_EHCI
239         select SAMSUNG_DEV_BACKLIGHT
240         select SAMSUNG_DEV_KEYPAD
241         select SAMSUNG_DEV_PWM
242         help
243           Machine support for Samsung SMDKV310
244
245 config MACH_ARMLEX4210
246         bool "ARMLEX4210"
247         select CPU_EXYNOS4210
248         select EXYNOS4_DEV_AHCI
249         select EXYNOS4_SETUP_SDHCI
250         select EXYNOS_DEV_DMA
251         select S3C_DEV_HSMMC
252         select S3C_DEV_HSMMC2
253         select S3C_DEV_HSMMC3
254         select S3C_DEV_RTC
255         select S3C_DEV_WDT
256         help
257           Machine support for Samsung ARMLEX4210 based on EXYNOS4210
258
259 config MACH_UNIVERSAL_C210
260         bool "Mobile UNIVERSAL_C210 Board"
261         select CLKSRC_MMIO
262         select CPU_EXYNOS4210
263         select EXYNOS4_SETUP_FIMC
264         select EXYNOS4_SETUP_FIMD0
265         select EXYNOS4_SETUP_I2C1
266         select EXYNOS4_SETUP_I2C3
267         select EXYNOS4_SETUP_I2C5
268         select EXYNOS4_SETUP_SDHCI
269         select EXYNOS4_SETUP_USB_PHY
270         select EXYNOS_DEV_DMA
271         select EXYNOS_DEV_DRM
272         select EXYNOS_DEV_SYSMMU
273         select HAVE_SCHED_CLOCK
274         select S3C_DEV_HSMMC
275         select S3C_DEV_HSMMC2
276         select S3C_DEV_HSMMC3
277         select S3C_DEV_I2C1
278         select S3C_DEV_I2C3
279         select S3C_DEV_I2C5
280         select S3C_DEV_USB_HSOTG
281         select S5P_DEV_CSIS0
282         select S5P_DEV_FIMC0
283         select S5P_DEV_FIMC1
284         select S5P_DEV_FIMC2
285         select S5P_DEV_FIMC3
286         select S5P_DEV_FIMD0
287         select S5P_DEV_G2D
288         select S5P_DEV_I2C_HDMIPHY
289         select S5P_DEV_JPEG
290         select S5P_DEV_MFC
291         select S5P_DEV_ONENAND
292         select S5P_DEV_TV
293         select S5P_GPIO_INT
294         select S5P_HRT
295         select S5P_SETUP_MIPIPHY
296         help
297           Machine support for Samsung Mobile Universal S5PC210 Reference
298           Board.
299
300 config MACH_NURI
301         bool "Mobile NURI Board"
302         select CPU_EXYNOS4210
303         select EXYNOS4_SETUP_FIMC
304         select EXYNOS4_SETUP_FIMD0
305         select EXYNOS4_SETUP_I2C1
306         select EXYNOS4_SETUP_I2C3
307         select EXYNOS4_SETUP_I2C5
308         select EXYNOS4_SETUP_I2C6
309         select EXYNOS4_SETUP_SDHCI
310         select EXYNOS4_SETUP_USB_PHY
311         select EXYNOS_DEV_DMA
312         select EXYNOS_DEV_DRM
313         select S3C_DEV_HSMMC
314         select S3C_DEV_HSMMC2
315         select S3C_DEV_HSMMC3
316         select S3C_DEV_I2C1
317         select S3C_DEV_I2C3
318         select S3C_DEV_I2C5
319         select S3C_DEV_I2C6
320         select S3C_DEV_RTC
321         select S3C_DEV_USB_HSOTG
322         select S3C_DEV_WDT
323         select S5P_DEV_CSIS0
324         select S5P_DEV_FIMC0
325         select S5P_DEV_FIMC1
326         select S5P_DEV_FIMC2
327         select S5P_DEV_FIMC3
328         select S5P_DEV_FIMD0
329         select S5P_DEV_G2D
330         select S5P_DEV_JPEG
331         select S5P_DEV_MFC
332         select S5P_DEV_USB_EHCI
333         select S5P_GPIO_INT
334         select S5P_SETUP_MIPIPHY
335         select SAMSUNG_DEV_ADC
336         select SAMSUNG_DEV_PWM
337         help
338           Machine support for Samsung Mobile NURI Board.
339
340 config MACH_ORIGEN
341         bool "ORIGEN"
342         select CPU_EXYNOS4210
343         select EXYNOS4_DEV_USB_OHCI
344         select EXYNOS4_SETUP_FIMD0
345         select EXYNOS4_SETUP_SDHCI
346         select EXYNOS4_SETUP_USB_PHY
347         select EXYNOS_DEV_DMA
348         select EXYNOS_DEV_DRM
349         select EXYNOS_DEV_SYSMMU
350         select S3C24XX_PWM
351         select S3C_DEV_HSMMC
352         select S3C_DEV_HSMMC2
353         select S3C_DEV_RTC
354         select S3C_DEV_USB_HSOTG
355         select S3C_DEV_WDT
356         select S5P_DEV_FIMC0
357         select S5P_DEV_FIMC1
358         select S5P_DEV_FIMC2
359         select S5P_DEV_FIMC3
360         select S5P_DEV_FIMD0
361         select S5P_DEV_G2D
362         select S5P_DEV_I2C_HDMIPHY
363         select S5P_DEV_JPEG
364         select S5P_DEV_MFC
365         select S5P_DEV_TV
366         select S5P_DEV_USB_EHCI
367         select SAMSUNG_DEV_BACKLIGHT
368         select SAMSUNG_DEV_PWM
369         help
370           Machine support for ORIGEN based on Samsung EXYNOS4210
371
372 comment "EXYNOS4212 Boards"
373
374 config MACH_SMDK4212
375         bool "SMDK4212"
376         select EXYNOS4_SETUP_FIMD0
377         select EXYNOS4_SETUP_I2C1
378         select EXYNOS4_SETUP_I2C3
379         select EXYNOS4_SETUP_I2C7
380         select EXYNOS4_SETUP_KEYPAD
381         select EXYNOS4_SETUP_SDHCI
382         select EXYNOS4_SETUP_USB_PHY
383         select EXYNOS_DEV_DMA
384         select EXYNOS_DEV_DRM
385         select EXYNOS_DEV_SYSMMU
386         select S3C24XX_PWM
387         select S3C_DEV_HSMMC2
388         select S3C_DEV_HSMMC3
389         select S3C_DEV_I2C1
390         select S3C_DEV_I2C3
391         select S3C_DEV_I2C7
392         select S3C_DEV_RTC
393         select S3C_DEV_USB_HSOTG
394         select S3C_DEV_WDT
395         select S5P_DEV_FIMC0
396         select S5P_DEV_FIMC1
397         select S5P_DEV_FIMC2
398         select S5P_DEV_FIMC3
399         select S5P_DEV_FIMD0
400         select S5P_DEV_MFC
401         select SAMSUNG_DEV_BACKLIGHT
402         select SAMSUNG_DEV_KEYPAD
403         select SAMSUNG_DEV_PWM
404         select SOC_EXYNOS4212
405         help
406           Machine support for Samsung SMDK4212
407
408 comment "EXYNOS4412 Boards"
409
410 config MACH_SMDK4412
411         bool "SMDK4412"
412         select MACH_SMDK4212
413         select SOC_EXYNOS4412
414         help
415           Machine support for Samsung SMDK4412
416 endif
417
418 endif
419
420 comment "Flattened Device Tree based board for EXYNOS SoCs"
421
422 config MACH_EXYNOS4_DT
423         bool "Samsung Exynos4 Machine using device tree"
424         depends on ARCH_EXYNOS4
425         select ARM_AMBA
426         select CPU_EXYNOS4210
427         select HAVE_SAMSUNG_KEYPAD if INPUT_KEYBOARD
428         select PINCTRL
429         select PINCTRL_EXYNOS
430         select USE_OF
431         help
432           Machine support for Samsung Exynos4 machine with device tree enabled.
433           Select this if a fdt blob is available for the Exynos4 SoC based board.
434           Note: This is under development and not all peripherals can be supported
435           with this machine file.
436
437 config MACH_EXYNOS5_DT
438         bool "SAMSUNG EXYNOS5 Machine using device tree"
439         default y
440         depends on ARCH_EXYNOS5
441         select ARM_AMBA
442         select USE_OF
443         help
444           Machine support for Samsung EXYNOS5 machine with device tree enabled.
445           Select this if a fdt blob is available for the EXYNOS5 SoC based board.
446
447 if ARCH_EXYNOS4
448
449 comment "Configuration for HSMMC 8-bit bus width"
450
451 config EXYNOS4_SDHCI_CH0_8BIT
452         bool "Channel 0 with 8-bit bus"
453         help
454           Support HSMMC Channel 0 8-bit bus.
455           If selected, Channel 1 is disabled.
456
457 config EXYNOS4_SDHCI_CH2_8BIT
458         bool "Channel 2 with 8-bit bus"
459         help
460           Support HSMMC Channel 2 8-bit bus.
461           If selected, Channel 3 is disabled.
462 endif
463
464 endmenu
465
466 endif