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