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