Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs
[linux/fpc-iii.git] / arch / arm / mach-s3c24xx / Kconfig
blobd876431d64c09c7d3f0ad1025a425e8d757a81be
1 # arch/arm/mach-s3c24xx/Kconfig
3 # Copyright (c) 2012 Samsung Electronics Co., Ltd.
4 #               http://www.samsung.com/
6 # Copyright 2007 Simtec Electronics
8 # Licensed under GPLv2
10 if ARCH_S3C24XX
12 config PLAT_S3C24XX
13         def_bool y
14         select ARCH_REQUIRE_GPIOLIB
15         select NO_IOPORT
16         select S3C_DEV_NAND
17         select IRQ_DOMAIN
18         help
19           Base platform code for any Samsung S3C24XX device
21 menu "SAMSUNG S3C24XX SoCs Support"
23 comment "S3C24XX SoCs"
25 config CPU_S3C2410
26         bool "SAMSUNG S3C2410"
27         default y
28         select CPU_ARM920T
29         select CPU_LLSERIAL_S3C2410
30         select S3C2410_CLOCK
31         select S3C2410_DMA if S3C24XX_DMA
32         select ARM_S3C2410_CPUFREQ if ARM_S3C24XX_CPUFREQ
33         select S3C2410_PM if PM
34         select SAMSUNG_WDT_RESET
35         help
36           Support for S3C2410 and S3C2410A family from the S3C24XX line
37           of Samsung Mobile CPUs.
39 config CPU_S3C2412
40         bool "SAMSUNG S3C2412"
41         select CPU_ARM926T
42         select CPU_LLSERIAL_S3C2440
43         select S3C2412_DMA if S3C24XX_DMA
44         select S3C2412_PM if PM
45         help
46           Support for the S3C2412 and S3C2413 SoCs from the S3C24XX line
48 config CPU_S3C2416
49         bool "SAMSUNG S3C2416/S3C2450"
50         select CPU_ARM926T
51         select CPU_LLSERIAL_S3C2440
52         select S3C2416_PM if PM
53         select S3C2443_COMMON
54         select S3C2443_DMA if S3C24XX_DMA
55         select SAMSUNG_CLKSRC
56         help
57           Support for the S3C2416 SoC from the S3C24XX line
59 config CPU_S3C2440
60         bool "SAMSUNG S3C2440"
61         select CPU_ARM920T
62         select CPU_LLSERIAL_S3C2440
63         select S3C2410_CLOCK
64         select S3C2410_PM if PM
65         select S3C2440_DMA if S3C24XX_DMA
66         help
67           Support for S3C2440 Samsung Mobile CPU based systems.
69 config CPU_S3C2442
70         bool "SAMSUNG S3C2442"
71         select CPU_ARM920T
72         select CPU_LLSERIAL_S3C2440
73         select S3C2410_CLOCK
74         select S3C2410_DMA if S3C24XX_DMA
75         select S3C2410_PM if PM
76         help
77           Support for S3C2442 Samsung Mobile CPU based systems.
79 config CPU_S3C244X
80         def_bool y
81         depends on CPU_S3C2440 || CPU_S3C2442
82         select SAMSUNG_WDT_RESET
84 config CPU_S3C2443
85         bool "SAMSUNG S3C2443"
86         select CPU_ARM920T
87         select CPU_LLSERIAL_S3C2440
88         select S3C2443_COMMON
89         select S3C2443_DMA if S3C24XX_DMA
90         select SAMSUNG_CLKSRC
91         help
92           Support for the S3C2443 SoC from the S3C24XX line
94 # common code
96 config S3C2410_CLOCK
97         bool
98         help
99           Clock code for the S3C2410, and similar processors which
100           is currently includes the S3C2410, S3C2440, S3C2442.
102 config S3C24XX_DCLK
103         bool
104         help
105           Clock code for supporting DCLK/CLKOUT on S3C24XX architectures
107 config S3C24XX_SMDK
108         bool
109         help
110           Common machine code for SMDK2410 and SMDK2440
112 config S3C24XX_SIMTEC_AUDIO
113         bool
114         depends on (ARCH_BAST || MACH_VR1000 || MACH_OSIRIS || MACH_ANUBIS)
115         default y
116         help
117           Add audio devices for common Simtec S3C24XX boards
119 config S3C24XX_SIMTEC_PM
120         bool
121         help
122           Common power management code for systems that are
123           compatible with the Simtec style of power management
125 config S3C24XX_SIMTEC_USB
126         bool
127         help
128           USB management code for common Simtec S3C24XX boards
130 config S3C24XX_SETUP_TS
131         bool
132         help
133           Compile in platform device definition for Samsung TouchScreen.
135 config S3C24XX_DMA
136         bool "S3C2410 DMA support"
137         select S3C_DMA
138         help
139           S3C2410 DMA support. This is needed for drivers like sound which
140           use the S3C2410's DMA system to move data to and from the
141           peripheral blocks.
143 config S3C2410_DMA_DEBUG
144         bool "S3C2410 DMA support debug"
145         depends on S3C2410_DMA
146         help
147           Enable debugging output for the DMA code. This option sends info
148           to the kernel log, at priority KERN_DEBUG.
150 config S3C2410_DMA
151         bool
152         depends on S3C24XX_DMA && (CPU_S3C2410 || CPU_S3C2442)
153         help
154           DMA device selection for S3C2410 and compatible CPUs
156 config S3C2410_PM
157         bool
158         help
159           Power Management code common to S3C2410 and better
161 # low-level serial option nodes
163 config CPU_LLSERIAL_S3C2410_ONLY
164         bool
165         default y if CPU_LLSERIAL_S3C2410 && !CPU_LLSERIAL_S3C2440
167 config CPU_LLSERIAL_S3C2440_ONLY
168         bool
169         default y if CPU_LLSERIAL_S3C2440 && !CPU_LLSERIAL_S3C2410
171 config CPU_LLSERIAL_S3C2410
172         bool
173         help
174           Selected if there is an S3C2410 (or register compatible) serial
175           low-level implementation needed
177 config CPU_LLSERIAL_S3C2440
178         bool
179         help
180           Selected if there is an S3C2440 (or register compatible) serial
181           low-level implementation needed
183 config S3C24XX_PLL
184         bool "Support CPUfreq changing of PLL frequency (EXPERIMENTAL)"
185         depends on ARM_S3C24XX_CPUFREQ
186         help
187           Compile in support for changing the PLL frequency from the
188           S3C24XX series CPUfreq driver. The PLL takes time to settle
189           after a frequency change, so by default it is not enabled.
191           This also means that the PLL tables for the selected CPU(s) will
192           be built which may increase the size of the kernel image.
194 # cpu frequency items common between s3c2410 and s3c2440/s3c2442
196 config S3C2410_IOTIMING
197         bool
198         depends on ARM_S3C24XX_CPUFREQ
199         help
200           Internal node to select io timing code that is common to the s3c2410
201           and s3c2440/s3c2442 cpu frequency support.
203 config S3C2410_CPUFREQ_UTILS
204        bool
205        depends on ARM_S3C24XX_CPUFREQ
206        help
207          Internal node to select timing code that is common to the s3c2410
208          and s3c2440/s3c244 cpu frequency support.
210 # cpu frequency support common to s3c2412, s3c2413 and s3c2442
212 config S3C2412_IOTIMING
213         bool
214         depends on ARM_S3C24XX_CPUFREQ && (CPU_S3C2412 || CPU_S3C2443)
215         help
216           Intel node to select io timing code that is common to the s3c2412
217           and the s3c2443.
219 # cpu-specific sections
221 if CPU_S3C2410
223 config S3C2410_PLL
224         bool
225         depends on ARM_S3C2410_CPUFREQ && S3C24XX_PLL
226         default y
227         help
228           Select the PLL table for the S3C2410
230 config S3C24XX_SIMTEC_NOR
231         bool
232         help
233           Internal node to specify machine has simtec NOR mapping
235 config MACH_BAST_IDE
236         bool
237         select HAVE_PATA_PLATFORM
238         help
239           Internal node for machines with an BAST style IDE
240           interface
242 comment "S3C2410 Boards"
245 # The "S3C2410 Boards" list is ordered alphabetically by option text.
246 # (without ARCH_ or MACH_)
249 config MACH_AML_M5900
250         bool "AML M5900 Series"
251         select S3C24XX_SIMTEC_PM if PM
252         select S3C_DEV_USB_HOST
253         help
254           Say Y here if you are using the American Microsystems M5900 Series
255           <http://www.amltd.com>
257 config ARCH_BAST
258         bool "Simtec Electronics BAST (EB2410ITX)"
259         select ISA
260         select MACH_BAST_IDE
261         select S3C2410_IOTIMING if ARM_S3C2410_CPUFREQ
262         select S3C24XX_DCLK
263         select S3C24XX_SIMTEC_NOR
264         select S3C24XX_SIMTEC_PM if PM
265         select S3C24XX_SIMTEC_USB
266         select S3C_DEV_HWMON
267         select S3C_DEV_NAND
268         select S3C_DEV_USB_HOST
269         help
270           Say Y here if you are using the Simtec Electronics EB2410ITX
271           development board (also known as BAST)
273 config BAST_PC104_IRQ
274         bool "BAST PC104 IRQ support"
275         depends on ARCH_BAST
276         default y
277         help
278           Say Y here to enable the PC104 IRQ routing on the
279           Simtec BAST (EB2410ITX)
281 config ARCH_H1940
282         bool "IPAQ H1940"
283         select PM_H1940 if PM
284         select S3C24XX_SETUP_TS
285         select S3C_DEV_NAND
286         select S3C_DEV_USB_HOST
287         help
288           Say Y here if you are using the HP IPAQ H1940
290 config H1940BT
291         tristate "Control the state of H1940 bluetooth chip"
292         depends on ARCH_H1940
293         select RFKILL
294         help
295           This is a simple driver that is able to control
296           the state of built in bluetooth chip on h1940.
298 config PM_H1940
299         bool
300         help
301           Internal node for H1940 and related PM
303 config MACH_N30
304         bool "Acer N30 family"
305         select S3C_DEV_NAND
306         select S3C_DEV_USB_HOST
307         help
308           Say Y here if you want suppt for the Acer N30, Acer N35,
309           Navman PiN570, Yakumo AlphaX or Airis NC05 PDAs.
311 config MACH_OTOM
312         bool "NexVision OTOM Board"
313         select S3C_DEV_NAND
314         select S3C_DEV_USB_HOST
315         help
316           Say Y here if you are using the Nex Vision OTOM board
318 config MACH_QT2410
319         bool "QT2410"
320         select S3C_DEV_NAND
321         select S3C_DEV_USB_HOST
322         help
323           Say Y here if you are using the Armzone QT2410
325 config ARCH_SMDK2410
326         bool "SMDK2410/A9M2410"
327         select S3C24XX_SMDK
328         select S3C_DEV_USB_HOST
329         help
330           Say Y here if you are using the SMDK2410 or the derived module A9M2410
331           <http://www.fsforth.de>
333 config MACH_TCT_HAMMER
334         bool "TCT Hammer Board"
335         select S3C_DEV_USB_HOST
336         help
337           Say Y here if you are using the TinCanTools Hammer Board
338           <http://www.tincantools.com>
340 config MACH_VR1000
341         bool "Thorcom VR1000"
342         select MACH_BAST_IDE
343         select S3C24XX_DCLK
344         select S3C24XX_SIMTEC_NOR
345         select S3C24XX_SIMTEC_PM if PM
346         select S3C24XX_SIMTEC_USB
347         select S3C_DEV_USB_HOST
348         help
349           Say Y here if you are using the Thorcom VR1000 board.
351 endif   # CPU_S3C2410
353 config S3C2412_PM_SLEEP
354         bool
355         help
356           Internal config node to apply sleep for S3C2412 power management.
357           Can be selected by another SoCs such as S3C2416 with similar
358           sleep procedure.
360 if CPU_S3C2412
362 config CPU_S3C2412_ONLY
363         bool
364         depends on !CPU_S3C2410 && !CPU_S3C2416 && !CPU_S3C2440 && \
365                    !CPU_S3C2442 && !CPU_S3C2443
366         default y
368 config S3C2412_DMA
369         bool
370         help
371           Internal config node for S3C2412 DMA support
373 config S3C2412_PM
374         bool
375         select S3C2412_PM_SLEEP
376         select SAMSUNG_WAKEMASK
377         help
378           Internal config node to apply S3C2412 power management
380 comment "S3C2412 Boards"
383 # The "S3C2412 Boards" list is ordered alphabetically by option text.
384 # (without ARCH_ or MACH_)
387 config MACH_JIVE
388         bool "Logitech Jive"
389         select S3C_DEV_NAND
390         select S3C_DEV_USB_HOST
391         help
392           Say Y here if you are using the Logitech Jive.
394 config MACH_JIVE_SHOW_BOOTLOADER
395         bool "Allow access to bootloader partitions in MTD"
396         depends on MACH_JIVE
398 config MACH_S3C2413
399         bool
400         help
401           Internal node for S3C2413 version of SMDK2413, so that
402           machine_is_s3c2413() will work when MACH_SMDK2413 is
403           selected
405 config MACH_SMDK2412
406         bool "SMDK2412"
407         select MACH_SMDK2413
408         help
409           Say Y here if you are using an SMDK2412
411           Note, this shares support with SMDK2413, so will automatically
412           select MACH_SMDK2413.
414 config MACH_SMDK2413
415         bool "SMDK2413"
416         select MACH_S3C2413
417         select S3C24XX_SMDK
418         select S3C_DEV_NAND
419         select S3C_DEV_USB_HOST
420         help
421           Say Y here if you are using an SMDK2413
423 config MACH_VSTMS
424         bool "VMSTMS"
425         select S3C_DEV_NAND
426         select S3C_DEV_USB_HOST
427         help
428           Say Y here if you are using an VSTMS board
430 endif   # CPU_S3C2412
432 if CPU_S3C2416
434 config S3C2416_PM
435         bool
436         select S3C2412_PM_SLEEP
437         help
438           Internal config node to apply S3C2416 power management
440 config S3C2416_SETUP_SDHCI
441         bool
442         select S3C2416_SETUP_SDHCI_GPIO
443         help
444           Internal helper functions for S3C2416 based SDHCI systems
446 config S3C2416_SETUP_SDHCI_GPIO
447         bool
448         help
449           Common setup code for SDHCI gpio.
451 comment "S3C2416 Boards"
453 config MACH_SMDK2416
454         bool "SMDK2416"
455         select S3C2416_SETUP_SDHCI
456         select S3C24XX_SMDK
457         select S3C_DEV_FB
458         select S3C_DEV_HSMMC
459         select S3C_DEV_HSMMC1
460         select S3C_DEV_NAND
461         select S3C_DEV_USB_HOST
462         help
463           Say Y here if you are using an SMDK2416
465 config MACH_S3C2416_DT
466         bool "Samsung S3C2416 machine using devicetree"
467         select CLKSRC_OF
468         select USE_OF
469         select PINCTRL
470         select PINCTRL_S3C24XX
471         help
472           Machine support for Samsung S3C2416 machines with device tree enabled.
473           Select this if a fdt blob is available for the S3C2416 SoC based board.
474           Note: This is under development and not all peripherals can be supported
475           with this machine file.
477 endif   # CPU_S3C2416
479 if CPU_S3C2440
481 config S3C2440_DMA
482         bool
483         help
484           Support for S3C2440 specific DMA code5A
486 config S3C2440_XTAL_12000000
487         bool
488         help
489           Indicate that the build needs to support 12MHz system
490           crystal.
492 config S3C2440_XTAL_16934400
493         bool
494         help
495           Indicate that the build needs to support 16.9344MHz system
496           crystal.
498 config S3C2440_PLL_12000000
499         bool
500         depends on ARM_S3C2440_CPUFREQ && S3C2440_XTAL_12000000
501         default y if S3C24XX_PLL
502         help
503           PLL tables for S3C2440 or S3C2442 CPUs with 12MHz crystals.
505 config S3C2440_PLL_16934400
506         bool
507         depends on ARM_S3C2440_CPUFREQ && S3C2440_XTAL_16934400
508         default y if S3C24XX_PLL
509         help
510           PLL tables for S3C2440 or S3C2442 CPUs with 16.934MHz crystals.
512 comment "S3C2440 Boards"
515 # The "S3C2440 Boards" list is ordered alphabetically by option text.
516 # (without ARCH_ or MACH_)
519 config MACH_ANUBIS
520         bool "Simtec Electronics ANUBIS"
521         select HAVE_PATA_PLATFORM
522         select S3C2440_XTAL_12000000
523         select S3C24XX_DCLK
524         select S3C24XX_GPIO_EXTRA64
525         select S3C24XX_SIMTEC_PM if PM
526         select S3C_DEV_USB_HOST
527         help
528           Say Y here if you are using the Simtec Electronics ANUBIS
529           development system
531 config MACH_AT2440EVB
532         bool "Avantech AT2440EVB development board"
533         select S3C_DEV_NAND
534         select S3C_DEV_USB_HOST
535         help
536           Say Y here if you are using the AT2440EVB development board
538 config MACH_MINI2440
539         bool "MINI2440 development board"
540         select EEPROM_AT24
541         select LEDS_CLASS
542         select LEDS_TRIGGERS
543         select LEDS_TRIGGER_BACKLIGHT
544         select NEW_LEDS
545         select S3C_DEV_NAND
546         select S3C_DEV_USB_HOST
547         select S3C_SETUP_CAMIF
548         help
549           Say Y here to select support for the MINI2440. Is a 10cm x 10cm board
550           available via various sources. It can come with a 3.5" or 7" touch LCD.
552 config MACH_NEXCODER_2440
553         bool "NexVision NEXCODER 2440 Light Board"
554         select S3C2440_XTAL_12000000
555         select S3C_DEV_NAND
556         select S3C_DEV_USB_HOST
557         help
558           Say Y here if you are using the Nex Vision NEXCODER 2440 Light Board
560 config MACH_OSIRIS
561         bool "Simtec IM2440D20 (OSIRIS) module"
562         select S3C2410_IOTIMING if ARM_S3C2440_CPUFREQ
563         select S3C2440_XTAL_12000000
564         select S3C24XX_DCLK
565         select S3C24XX_GPIO_EXTRA128
566         select S3C24XX_SIMTEC_PM if PM
567         select S3C_DEV_NAND
568         select S3C_DEV_USB_HOST
569         help
570           Say Y here if you are using the Simtec IM2440D20 module, also
571           known as the Osiris.
573 config MACH_OSIRIS_DVS
574         tristate "Simtec IM2440D20 (OSIRIS) Dynamic Voltage Scaling driver"
575         depends on MACH_OSIRIS
576         select TPS65010
577         help
578           Say Y/M here if you want to have dynamic voltage scaling support
579           on the Simtec IM2440D20 (OSIRIS) module via the TPS65011.
581           The DVS driver alters the voltage supplied to the ARM core
582           depending on the frequency it is running at. The driver itself
583           does not do any of the frequency alteration, which is left up
584           to the cpufreq driver.
586 config MACH_RX3715
587         bool "HP iPAQ rx3715"
588         select PM_H1940 if PM
589         select S3C2440_XTAL_16934400
590         select S3C_DEV_NAND
591         help
592           Say Y here if you are using the HP iPAQ rx3715.
594 config ARCH_S3C2440
595         bool "SMDK2440"
596         select S3C2440_XTAL_16934400
597         select S3C24XX_SMDK
598         select S3C_DEV_NAND
599         select S3C_DEV_USB_HOST
600         help
601           Say Y here if you are using the SMDK2440.
603 config SMDK2440_CPU2440
604         bool "SMDK2440 with S3C2440 CPU module"
605         default y if ARCH_S3C2440
606         select S3C2440_XTAL_16934400
608 endif   # CPU_S3C2440
610 if CPU_S3C2442
612 comment "S3C2442 Boards"
615 # The "S3C2442 Boards" list is ordered alphabetically by option text.
616 # (without ARCH_ or MACH_)
619 config MACH_NEO1973_GTA02
620         bool "Openmoko GTA02 / Freerunner phone"
621         select I2C
622         select MFD_PCF50633
623         select PCF50633_GPIO
624         select POWER_SUPPLY
625         select S3C24XX_PWM
626         select S3C_DEV_USB_HOST
627         help
628            Say Y here if you are using the Openmoko GTA02 / Freerunner GSM Phone
630 config MACH_RX1950
631         bool "HP iPAQ rx1950"
632         select I2C
633         select PM_H1940 if PM
634         select S3C2410_IOTIMING if ARM_S3C2440_CPUFREQ
635         select S3C2440_XTAL_16934400
636         select S3C24XX_DCLK
637         select S3C24XX_PWM
638         select S3C_DEV_NAND
639         help
640            Say Y here if you're using HP iPAQ rx1950
642 endif   # CPU_S3C2442
644 if CPU_S3C2443 || CPU_S3C2416
646 config S3C2443_COMMON
647         bool
648         help
649           Common code for the S3C2443 and similar processors, which includes
650           the S3C2416 and S3C2450.
652 config S3C2443_DMA
653         bool
654         help
655           Internal config node for S3C2443 DMA support
657 config S3C2443_SETUP_SPI
658         bool
659         help
660           Common setup code for SPI GPIO configurations
662 endif   # CPU_S3C2443 || CPU_S3C2416
664 if CPU_S3C2443
666 comment "S3C2443 Boards"
668 config MACH_SMDK2443
669         bool "SMDK2443"
670         select S3C24XX_SMDK
671         select S3C_DEV_HSMMC1
672         help
673           Say Y here if you are using an SMDK2443
675 endif   # CPU_S3C2443
677 endmenu # SAMSUNG S3C24XX SoCs Support
679 endif   # ARCH_S3C24XX