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