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