Add the rt linux 4.1.3-rt3 as base
[kvmfornfv.git] / kernel / arch / arm / mach-s3c24xx / Kconfig
1 # arch/arm/mach-s3c24xx/Kconfig
2 #
3 # Copyright (c) 2012 Samsung Electronics Co., Ltd.
4 #               http://www.samsung.com/
5 #
6 # Copyright 2007 Simtec Electronics
7 #
8 # Licensed under GPLv2
9
10 if ARCH_S3C24XX
11
12 config PLAT_S3C24XX
13         def_bool y
14         select ARCH_REQUIRE_GPIOLIB
15         select NO_IOPORT_MAP
16         select S3C_DEV_NAND
17         select IRQ_DOMAIN
18         help
19           Base platform code for any Samsung S3C24XX device
20
21
22
23 menu "SAMSUNG S3C24XX SoCs Support"
24
25 comment "S3C24XX SoCs"
26
27 config CPU_S3C2410
28         bool "SAMSUNG S3C2410"
29         default y
30         select CPU_ARM920T
31         select S3C2410_COMMON_CLK
32         select ARM_S3C2410_CPUFREQ if ARM_S3C24XX_CPUFREQ
33         select S3C2410_PM if PM
34         help
35           Support for S3C2410 and S3C2410A family from the S3C24XX line
36           of Samsung Mobile CPUs.
37
38 config CPU_S3C2412
39         bool "SAMSUNG S3C2412"
40         select CPU_ARM926T
41         select S3C2412_COMMON_CLK
42         select S3C2412_PM if PM_SLEEP
43         help
44           Support for the S3C2412 and S3C2413 SoCs from the S3C24XX line
45
46 config CPU_S3C2416
47         bool "SAMSUNG S3C2416/S3C2450"
48         select CPU_ARM926T
49         select S3C2416_PM if PM_SLEEP
50         select S3C2443_COMMON_CLK
51         help
52           Support for the S3C2416 SoC from the S3C24XX line
53
54 config CPU_S3C2440
55         bool "SAMSUNG S3C2440"
56         select CPU_ARM920T
57         select S3C2410_COMMON_CLK
58         select S3C2410_PM if PM_SLEEP
59         help
60           Support for S3C2440 Samsung Mobile CPU based systems.
61
62 config CPU_S3C2442
63         bool "SAMSUNG S3C2442"
64         select CPU_ARM920T
65         select S3C2410_COMMON_CLK
66         select S3C2410_PM if PM_SLEEP
67         help
68           Support for S3C2442 Samsung Mobile CPU based systems.
69
70 config CPU_S3C244X
71         def_bool y
72         depends on CPU_S3C2440 || CPU_S3C2442
73
74 config CPU_S3C2443
75         bool "SAMSUNG S3C2443"
76         select CPU_ARM920T
77         select S3C2443_COMMON_CLK
78         help
79           Support for the S3C2443 SoC from the S3C24XX line
80
81 # common code
82
83 config S3C24XX_SMDK
84         bool
85         help
86           Common machine code for SMDK2410 and SMDK2440
87
88 config S3C24XX_SIMTEC_AUDIO
89         bool
90         depends on (ARCH_BAST || MACH_VR1000 || MACH_OSIRIS || MACH_ANUBIS)
91         default y
92         help
93           Add audio devices for common Simtec S3C24XX boards
94
95 config S3C24XX_SIMTEC_PM
96         bool
97         help
98           Common power management code for systems that are
99           compatible with the Simtec style of power management
100
101 config S3C24XX_SIMTEC_USB
102         bool
103         help
104           USB management code for common Simtec S3C24XX boards
105
106 config S3C24XX_SETUP_TS
107         bool
108         help
109           Compile in platform device definition for Samsung TouchScreen.
110
111 config S3C2410_PM
112         bool
113         help
114           Power Management code common to S3C2410 and better
115
116 config S3C24XX_PLL
117         bool "Support CPUfreq changing of PLL frequency (EXPERIMENTAL)"
118         depends on ARM_S3C24XX_CPUFREQ
119         help
120           Compile in support for changing the PLL frequency from the
121           S3C24XX series CPUfreq driver. The PLL takes time to settle
122           after a frequency change, so by default it is not enabled.
123
124           This also means that the PLL tables for the selected CPU(s) will
125           be built which may increase the size of the kernel image.
126
127 # cpu frequency items common between s3c2410 and s3c2440/s3c2442
128
129 config S3C2410_IOTIMING
130         bool
131         depends on ARM_S3C24XX_CPUFREQ
132         help
133           Internal node to select io timing code that is common to the s3c2410
134           and s3c2440/s3c2442 cpu frequency support.
135
136 config S3C2410_CPUFREQ_UTILS
137        bool
138        depends on ARM_S3C24XX_CPUFREQ
139        help
140          Internal node to select timing code that is common to the s3c2410
141          and s3c2440/s3c244 cpu frequency support.
142
143 # cpu frequency support common to s3c2412, s3c2413 and s3c2442
144
145 config S3C2412_IOTIMING
146         bool
147         depends on ARM_S3C24XX_CPUFREQ && (CPU_S3C2412 || CPU_S3C2443)
148         help
149           Intel node to select io timing code that is common to the s3c2412
150           and the s3c2443.
151
152 # cpu-specific sections
153
154 if CPU_S3C2410
155
156 config S3C2410_PLL
157         bool
158         depends on ARM_S3C2410_CPUFREQ && S3C24XX_PLL
159         default y
160         help
161           Select the PLL table for the S3C2410
162
163 config S3C24XX_SIMTEC_NOR
164         bool
165         help
166           Internal node to specify machine has simtec NOR mapping
167
168 config MACH_BAST_IDE
169         bool
170         select HAVE_PATA_PLATFORM
171         help
172           Internal node for machines with an BAST style IDE
173           interface
174
175 comment "S3C2410 Boards"
176
177 #
178 # The "S3C2410 Boards" list is ordered alphabetically by option text.
179 # (without ARCH_ or MACH_)
180 #
181
182 config MACH_AML_M5900
183         bool "AML M5900 Series"
184         select S3C24XX_SIMTEC_PM if PM
185         select S3C_DEV_USB_HOST
186         help
187           Say Y here if you are using the American Microsystems M5900 Series
188           <http://www.amltd.com>
189
190 config ARCH_BAST
191         bool "Simtec Electronics BAST (EB2410ITX)"
192         select ISA
193         select MACH_BAST_IDE
194         select S3C2410_COMMON_DCLK
195         select S3C2410_IOTIMING if ARM_S3C2410_CPUFREQ
196         select S3C24XX_SIMTEC_NOR
197         select S3C24XX_SIMTEC_PM if PM
198         select S3C24XX_SIMTEC_USB
199         select S3C_DEV_HWMON
200         select S3C_DEV_NAND
201         select S3C_DEV_USB_HOST
202         help
203           Say Y here if you are using the Simtec Electronics EB2410ITX
204           development board (also known as BAST)
205
206 config BAST_PC104_IRQ
207         bool "BAST PC104 IRQ support"
208         depends on ARCH_BAST
209         default y
210         help
211           Say Y here to enable the PC104 IRQ routing on the
212           Simtec BAST (EB2410ITX)
213
214 config ARCH_H1940
215         bool "IPAQ H1940"
216         select PM_H1940 if PM
217         select S3C24XX_SETUP_TS
218         select S3C_DEV_NAND
219         select S3C_DEV_USB_HOST
220         help
221           Say Y here if you are using the HP IPAQ H1940
222
223 config H1940BT
224         tristate "Control the state of H1940 bluetooth chip"
225         depends on ARCH_H1940
226         select RFKILL
227         help
228           This is a simple driver that is able to control
229           the state of built in bluetooth chip on h1940.
230
231 config MACH_N30
232         bool "Acer N30 family"
233         select S3C_DEV_NAND
234         select S3C_DEV_USB_HOST
235         help
236           Say Y here if you want suppt for the Acer N30, Acer N35,
237           Navman PiN570, Yakumo AlphaX or Airis NC05 PDAs.
238
239 config MACH_OTOM
240         bool "NexVision OTOM Board"
241         select S3C_DEV_NAND
242         select S3C_DEV_USB_HOST
243         help
244           Say Y here if you are using the Nex Vision OTOM board
245
246 config MACH_QT2410
247         bool "QT2410"
248         select S3C_DEV_NAND
249         select S3C_DEV_USB_HOST
250         help
251           Say Y here if you are using the Armzone QT2410
252
253 config ARCH_SMDK2410
254         bool "SMDK2410/A9M2410"
255         select S3C24XX_SMDK
256         select S3C_DEV_USB_HOST
257         help
258           Say Y here if you are using the SMDK2410 or the derived module A9M2410
259           <http://www.fsforth.de>
260
261 config MACH_TCT_HAMMER
262         bool "TCT Hammer Board"
263         select S3C_DEV_USB_HOST
264         help
265           Say Y here if you are using the TinCanTools Hammer Board
266           <http://www.tincantools.com>
267
268 config MACH_VR1000
269         bool "Thorcom VR1000"
270         select MACH_BAST_IDE
271         select S3C2410_COMMON_DCLK
272         select S3C24XX_SIMTEC_NOR
273         select S3C24XX_SIMTEC_PM if PM
274         select S3C24XX_SIMTEC_USB
275         select S3C_DEV_USB_HOST
276         help
277           Say Y here if you are using the Thorcom VR1000 board.
278
279 endif   # CPU_S3C2410
280
281 config S3C2412_PM_SLEEP
282         bool
283         help
284           Internal config node to apply sleep for S3C2412 power management.
285           Can be selected by another SoCs such as S3C2416 with similar
286           sleep procedure.
287
288 if CPU_S3C2412
289
290 config CPU_S3C2412_ONLY
291         bool
292         depends on !CPU_S3C2410 && !CPU_S3C2416 && !CPU_S3C2440 && \
293                    !CPU_S3C2442 && !CPU_S3C2443
294         default y
295
296 config S3C2412_PM
297         bool
298         select S3C2412_PM_SLEEP
299         select SAMSUNG_WAKEMASK
300         help
301           Internal config node to apply S3C2412 power management
302
303 comment "S3C2412 Boards"
304
305 #
306 # The "S3C2412 Boards" list is ordered alphabetically by option text.
307 # (without ARCH_ or MACH_)
308 #
309
310 config MACH_JIVE
311         bool "Logitech Jive"
312         select S3C_DEV_NAND
313         select S3C_DEV_USB_HOST
314         help
315           Say Y here if you are using the Logitech Jive.
316
317 config MACH_JIVE_SHOW_BOOTLOADER
318         bool "Allow access to bootloader partitions in MTD"
319         depends on MACH_JIVE
320
321 config MACH_S3C2413
322         bool
323         help
324           Internal node for S3C2413 version of SMDK2413, so that
325           machine_is_s3c2413() will work when MACH_SMDK2413 is
326           selected
327
328 config MACH_SMDK2412
329         bool "SMDK2412"
330         select MACH_SMDK2413
331         help
332           Say Y here if you are using an SMDK2412
333
334           Note, this shares support with SMDK2413, so will automatically
335           select MACH_SMDK2413.
336
337 config MACH_SMDK2413
338         bool "SMDK2413"
339         select MACH_S3C2413
340         select S3C24XX_SMDK
341         select S3C_DEV_NAND
342         select S3C_DEV_USB_HOST
343         help
344           Say Y here if you are using an SMDK2413
345
346 config MACH_VSTMS
347         bool "VMSTMS"
348         select S3C_DEV_NAND
349         select S3C_DEV_USB_HOST
350         help
351           Say Y here if you are using an VSTMS board
352
353 endif   # CPU_S3C2412
354
355 if CPU_S3C2416
356
357 config S3C2416_PM
358         bool
359         select S3C2412_PM_SLEEP
360         select SAMSUNG_WAKEMASK
361         help
362           Internal config node to apply S3C2416 power management
363
364 config S3C2416_SETUP_SDHCI
365         bool
366         select S3C2416_SETUP_SDHCI_GPIO
367         help
368           Internal helper functions for S3C2416 based SDHCI systems
369
370 config S3C2416_SETUP_SDHCI_GPIO
371         bool
372         help
373           Common setup code for SDHCI gpio.
374
375 comment "S3C2416 Boards"
376
377 config MACH_SMDK2416
378         bool "SMDK2416"
379         select S3C2416_SETUP_SDHCI
380         select S3C24XX_SMDK
381         select S3C_DEV_FB
382         select S3C_DEV_HSMMC
383         select S3C_DEV_HSMMC1
384         select S3C_DEV_NAND
385         select S3C_DEV_USB_HOST
386         help
387           Say Y here if you are using an SMDK2416
388
389 config MACH_S3C2416_DT
390         bool "Samsung S3C2416 machine using devicetree"
391         select CLKSRC_OF
392         select USE_OF
393         select PINCTRL
394         select PINCTRL_S3C24XX
395         help
396           Machine support for Samsung S3C2416 machines with device tree enabled.
397           Select this if a fdt blob is available for the S3C2416 SoC based board.
398           Note: This is under development and not all peripherals can be supported
399           with this machine file.
400
401 endif   # CPU_S3C2416
402
403 if CPU_S3C2440
404
405 config S3C2440_XTAL_12000000
406         bool
407         help
408           Indicate that the build needs to support 12MHz system
409           crystal.
410
411 config S3C2440_XTAL_16934400
412         bool
413         help
414           Indicate that the build needs to support 16.9344MHz system
415           crystal.
416
417 config S3C2440_PLL_12000000
418         bool
419         depends on ARM_S3C2440_CPUFREQ && S3C2440_XTAL_12000000
420         default y if S3C24XX_PLL
421         help
422           PLL tables for S3C2440 or S3C2442 CPUs with 12MHz crystals.
423
424 config S3C2440_PLL_16934400
425         bool
426         depends on ARM_S3C2440_CPUFREQ && S3C2440_XTAL_16934400
427         default y if S3C24XX_PLL
428         help
429           PLL tables for S3C2440 or S3C2442 CPUs with 16.934MHz crystals.
430
431 comment "S3C2440 Boards"
432
433 #
434 # The "S3C2440 Boards" list is ordered alphabetically by option text.
435 # (without ARCH_ or MACH_)
436 #
437
438 config MACH_ANUBIS
439         bool "Simtec Electronics ANUBIS"
440         select HAVE_PATA_PLATFORM
441         select S3C2410_COMMON_DCLK
442         select S3C2440_XTAL_12000000
443         select S3C24XX_SIMTEC_PM if PM
444         select S3C_DEV_USB_HOST
445         help
446           Say Y here if you are using the Simtec Electronics ANUBIS
447           development system
448
449 config MACH_AT2440EVB
450         bool "Avantech AT2440EVB development board"
451         select S3C_DEV_NAND
452         select S3C_DEV_USB_HOST
453         help
454           Say Y here if you are using the AT2440EVB development board
455
456 config MACH_MINI2440
457         bool "MINI2440 development board"
458         select EEPROM_AT24 if I2C
459         select LEDS_CLASS
460         select LEDS_TRIGGERS
461         select LEDS_TRIGGER_BACKLIGHT
462         select NEW_LEDS
463         select S3C_DEV_NAND
464         select S3C_DEV_USB_HOST
465         select S3C_SETUP_CAMIF
466         help
467           Say Y here to select support for the MINI2440. Is a 10cm x 10cm board
468           available via various sources. It can come with a 3.5" or 7" touch LCD.
469
470 config MACH_NEXCODER_2440
471         bool "NexVision NEXCODER 2440 Light Board"
472         select S3C2440_XTAL_12000000
473         select S3C_DEV_NAND
474         select S3C_DEV_USB_HOST
475         help
476           Say Y here if you are using the Nex Vision NEXCODER 2440 Light Board
477
478 config MACH_OSIRIS
479         bool "Simtec IM2440D20 (OSIRIS) module"
480         select S3C2410_COMMON_DCLK
481         select S3C2410_IOTIMING if ARM_S3C2440_CPUFREQ
482         select S3C2440_XTAL_12000000
483         select S3C24XX_SIMTEC_PM if PM
484         select S3C_DEV_NAND
485         select S3C_DEV_USB_HOST
486         help
487           Say Y here if you are using the Simtec IM2440D20 module, also
488           known as the Osiris.
489
490 config MACH_OSIRIS_DVS
491         tristate "Simtec IM2440D20 (OSIRIS) Dynamic Voltage Scaling driver"
492         depends on MACH_OSIRIS
493         depends on TPS65010
494         help
495           Say Y/M here if you want to have dynamic voltage scaling support
496           on the Simtec IM2440D20 (OSIRIS) module via the TPS65011.
497
498           The DVS driver alters the voltage supplied to the ARM core
499           depending on the frequency it is running at. The driver itself
500           does not do any of the frequency alteration, which is left up
501           to the cpufreq driver.
502
503 config MACH_RX3715
504         bool "HP iPAQ rx3715"
505         select PM_H1940 if PM
506         select S3C2440_XTAL_16934400
507         select S3C_DEV_NAND
508         help
509           Say Y here if you are using the HP iPAQ rx3715.
510
511 config ARCH_S3C2440
512         bool "SMDK2440"
513         select S3C2440_XTAL_16934400
514         select S3C24XX_SMDK
515         select S3C_DEV_NAND
516         select S3C_DEV_USB_HOST
517         help
518           Say Y here if you are using the SMDK2440.
519
520 config SMDK2440_CPU2440
521         bool "SMDK2440 with S3C2440 CPU module"
522         default y if ARCH_S3C2440
523         select S3C2440_XTAL_16934400
524
525 endif   # CPU_S3C2440
526
527 if CPU_S3C2442
528
529 comment "S3C2442 Boards"
530
531 #
532 # The "S3C2442 Boards" list is ordered alphabetically by option text.
533 # (without ARCH_ or MACH_)
534 #
535
536 config MACH_NEO1973_GTA02
537         bool "Openmoko GTA02 / Freerunner phone"
538         select I2C
539         select MFD_PCF50633
540         select PCF50633_GPIO
541         select POWER_SUPPLY
542         select S3C24XX_PWM
543         select S3C_DEV_USB_HOST
544         help
545            Say Y here if you are using the Openmoko GTA02 / Freerunner GSM Phone
546
547 config MACH_RX1950
548         bool "HP iPAQ rx1950"
549         select I2C
550         select PM_H1940 if PM
551         select S3C2410_COMMON_DCLK
552         select S3C2410_IOTIMING if ARM_S3C2440_CPUFREQ
553         select S3C2440_XTAL_16934400
554         select S3C24XX_PWM
555         select S3C_DEV_NAND
556         help
557            Say Y here if you're using HP iPAQ rx1950
558
559 endif   # CPU_S3C2442
560
561 if CPU_S3C2443 || CPU_S3C2416
562
563 config S3C2443_SETUP_SPI
564         bool
565         help
566           Common setup code for SPI GPIO configurations
567
568 endif   # CPU_S3C2443 || CPU_S3C2416
569
570 if CPU_S3C2443
571
572 comment "S3C2443 Boards"
573
574 config MACH_SMDK2443
575         bool "SMDK2443"
576         select S3C24XX_SMDK
577         select S3C_DEV_HSMMC1
578         help
579           Say Y here if you are using an SMDK2443
580
581 endif   # CPU_S3C2443
582
583 config PM_H1940
584         bool
585         help
586           Internal node for H1940 and related PM
587
588 endmenu # SAMSUNG S3C24XX SoCs Support
589
590 endif   # ARCH_S3C24XX