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