usb: add two quirky touchscreen
[linux/fpc-iii.git] / arch / arm / plat-samsung / Kconfig
bloba5b5ff6e68d2015e4080112c821fb6d0ac0bf3d6
1 # arch/arm/plat-samsung/Kconfig
3 # Copyright 2009 Simtec Electronics
5 # Licensed under GPLv2
7 config PLAT_SAMSUNG
8         bool
9         depends on PLAT_S3C24XX || ARCH_S3C64XX || PLAT_S5P || ARCH_EXYNOS
10         default y
11         select GENERIC_IRQ_CHIP
12         select NO_IOPORT
13         help
14           Base platform code for all Samsung SoC based systems
16 config PLAT_S5P
17         bool
18         depends on (ARCH_S5P64X0 || ARCH_S5PC100 || ARCH_S5PV210)
19         default y
20         select ARCH_REQUIRE_GPIOLIB
21         select ARM_VIC
22         select NO_IOPORT
23         select PLAT_SAMSUNG
24         select S3C_GPIO_TRACK
25         select S5P_GPIO_DRVSTR
26         select SAMSUNG_CLKSRC if !COMMON_CLK
27         select SAMSUNG_GPIOLIB_4BIT
28         select SAMSUNG_IRQ_VIC_TIMER
29         help
30           Base platform code for Samsung's S5P series SoC.
32 config SAMSUNG_PM
33         bool
34         depends on PM && (PLAT_S3C24XX || ARCH_S3C64XX || ARCH_S5P64X0 || S5P_PM)
35         default y
36         help
37           Base platform power management code for samsung code
39 if PLAT_SAMSUNG
41 # boot configurations
43 comment "Boot options"
45 config S3C_BOOT_ERROR_RESET
46         bool "S3C Reboot on decompression error"
47         help
48           Say y here to use the watchdog to reset the system if the
49           kernel decompressor detects an error during decompression.
51 config S3C_BOOT_UART_FORCE_FIFO
52        bool "Force UART FIFO on during boot process"
53        default y
54        help
55          Say Y here to force the UART FIFOs on during the kernel
56          uncompressor
59 config S3C_LOWLEVEL_UART_PORT
60         int "S3C UART to use for low-level messages"
61         default 0
62         help
63           Choice of which UART port to use for the low-level messages,
64           such as the `Uncompressing...` at start time. The value of
65           this configuration should be between zero and two. The port
66           must have been initialised by the boot-loader before use.
68 config SAMSUNG_ATAGS
69         def_bool n
70         depends on !ARCH_MULTIPLATFORM
71         depends on ATAGS
72         help
73            This option enables ATAGS based boot support code for
74            Samsung platforms, including static platform devices, legacy
75            clock, timer and interrupt initialization, etc.
77            Platforms that support only DT based boot need not to select
78            this option.
80 if SAMSUNG_ATAGS
82 # timer options
84 config SAMSUNG_HRT
85         bool
86         select SAMSUNG_DEV_PWM
87         help
88           Use the High Resolution timer support
90 # clock options
92 config SAMSUNG_CLOCK
93         bool
94         default y if !COMMON_CLK
96 config SAMSUNG_CLKSRC
97         bool
98         help
99           Select the clock code for the clksrc implementation
100           used by newer systems such as the S3C64XX.
102 config S5P_CLOCK
103         def_bool (ARCH_S5P64X0 || ARCH_S5PC100 || ARCH_S5PV210)
104         help
105           Support common clock part for ARCH_S5P and ARCH_EXYNOS SoCs
107 # options for IRQ support
109 config SAMSUNG_IRQ_VIC_TIMER
110        bool
111        help
112          Internal configuration to build the VIC timer interrupt code.
114 config S5P_IRQ
115         def_bool (ARCH_S5P64X0 || ARCH_S5PC100 || ARCH_S5PV210)
116         help
117           Support common interrupt part for ARCH_S5P SoCs
119 config S5P_EXT_INT
120         bool
121         help
122           Use the external interrupts (other than GPIO interrupts.)
123           Note: Do not choose this for S5P6440 and S5P6450.
125 config S5P_GPIO_INT
126         bool
127         help
128           Common code for the GPIO interrupts (other than external interrupts.)
130 # options for gpio configuration support
132 config SAMSUNG_GPIOLIB_4BIT
133         bool
134         help
135           GPIOlib file contains the 4 bit modification functions for gpio
136           configuration. GPIOlib shall be compiled only for S3C64XX and S5P
137           series of processors.
139 config S5P_GPIO_DRVSTR
140         bool
141         help
142           Internal configuration to get and set correct GPIO driver strength
143           helper
145 config SAMSUNG_GPIO_EXTRA
146         int "Number of additional GPIO pins"
147         default 128 if SAMSUNG_GPIO_EXTRA128
148         default 64 if SAMSUNG_GPIO_EXTRA64
149         default 0
150         help
151           Use additional GPIO space in addition to the GPIO's the SOC
152           provides. This allows expanding the GPIO space for use with
153           GPIO expanders.
155 config SAMSUNG_GPIO_EXTRA64
156         bool
158 config SAMSUNG_GPIO_EXTRA128
159         bool
161 config S3C_GPIO_SPACE
162         int "Space between gpio banks"
163         default 0
164         help
165           Add a number of spare GPIO entries between each bank for debugging
166           purposes. This allows any problems where an counter overflows from
167           one bank to another to be caught, at the expense of using a little
168           more memory.
170 config S3C_GPIO_TRACK
171         bool
172         help
173           Internal configuration option to enable the s3c specific gpio
174           chip tracking if the platform requires it.
176 # uart options
178 config S5P_DEV_UART
179         def_bool y
180         depends on (ARCH_S5P64X0 || ARCH_S5PC100 || ARCH_S5PV210)
182 # ADC driver
184 config S3C_ADC
185         bool "ADC common driver support"
186         help
187           Core support for the ADC block found in the Samsung SoC systems
188           for drivers such as the touchscreen and hwmon to use to share
189           this resource.
191 # device definitions to compile in
193 config S3C_DEV_HSMMC
194         bool
195         help
196           Compile in platform device definitions for HSMMC code
198 config S3C_DEV_HSMMC1
199         bool
200         help
201           Compile in platform device definitions for HSMMC channel 1
203 config S3C_DEV_HSMMC2
204         bool
205         help
206           Compile in platform device definitions for HSMMC channel 2
208 config S3C_DEV_HSMMC3
209         bool
210         help
211           Compile in platform device definitions for HSMMC channel 3
213 config S3C_DEV_HWMON
214         bool
215         help
216             Compile in platform device definitions for HWMON
218 config S3C_DEV_I2C1
219         bool
220         help
221           Compile in platform device definitions for I2C channel 1
223 config S3C_DEV_I2C2
224         bool
225         help
226           Compile in platform device definitions for I2C channel 2
228 config S3C_DEV_I2C3
229         bool
230         help
231           Compile in platform device definition for I2C controller 3
233 config S3C_DEV_I2C4
234         bool
235         help
236           Compile in platform device definition for I2C controller 4
238 config S3C_DEV_I2C5
239         bool
240         help
241           Compile in platform device definition for I2C controller 5
243 config S3C_DEV_I2C6
244         bool
245         help
246           Compile in platform device definition for I2C controller 6
248 config S3C_DEV_I2C7
249         bool
250         help
251           Compile in platform device definition for I2C controller 7
253 config S3C_DEV_FB
254         bool
255         help
256           Compile in platform device definition for framebuffer
258 config S3C_DEV_USB_HOST
259         bool
260         help
261           Compile in platform device definition for USB host.
263 config S3C_DEV_USB_HSOTG
264         bool
265         help
266           Compile in platform device definition for USB high-speed OtG
268 config S3C_DEV_WDT
269         bool
270         default y if ARCH_S3C24XX
271         help
272           Complie in platform device definition for Watchdog Timer
274 config S3C_DEV_NAND
275         bool
276         help
277           Compile in platform device definition for NAND controller
279 config S3C_DEV_ONENAND
280         bool
281         help
282           Compile in platform device definition for OneNAND controller
284 config S3C_DEV_RTC
285         bool
286         help
287           Complie in platform device definition for RTC
289 config SAMSUNG_DEV_ADC
290         bool
291         help
292           Compile in platform device definition for ADC controller
294 config SAMSUNG_DEV_IDE
295         bool
296         help
297           Compile in platform device definitions for IDE
299 config S3C64XX_DEV_SPI0
300         bool
301         help
302           Compile in platform device definitions for S3C64XX's type
303           SPI controller 0
305 config S3C64XX_DEV_SPI1
306         bool
307         help
308           Compile in platform device definitions for S3C64XX's type
309           SPI controller 1
311 config S3C64XX_DEV_SPI2
312         bool
313         help
314           Compile in platform device definitions for S3C64XX's type
315           SPI controller 2
317 config SAMSUNG_DEV_TS
318         bool
319         help
320             Common in platform device definitions for touchscreen device
322 config SAMSUNG_DEV_KEYPAD
323         bool
324         help
325           Compile in platform device definitions for keypad
327 config SAMSUNG_DEV_PWM
328         bool
329         default y if ARCH_S3C24XX
330         help
331           Compile in platform device definition for PWM Timer
333 config SAMSUNG_DEV_BACKLIGHT
334         bool
335         depends on SAMSUNG_DEV_PWM
336         help
337           Compile in platform device definition LCD backlight with PWM Timer
339 config S5P_DEV_CSIS0
340         bool
341         help
342           Compile in platform device definitions for MIPI-CSIS channel 0
344 config S5P_DEV_CSIS1
345         bool
346         help
347           Compile in platform device definitions for MIPI-CSIS channel 1
349 config S5P_DEV_FIMC0
350         bool
351         help
352           Compile in platform device definitions for FIMC controller 0
354 config S5P_DEV_FIMC1
355         bool
356         help
357           Compile in platform device definitions for FIMC controller 1
359 config S5P_DEV_FIMC2
360         bool
361         help
362           Compile in platform device definitions for FIMC controller 2
364 config S5P_DEV_FIMC3
365         bool
366         help
367           Compile in platform device definitions for FIMC controller 3
369 config S5P_DEV_FIMD0
370         bool
371         help
372           Compile in platform device definitions for FIMD controller 0
374 config S5P_DEV_G2D
375         bool
376         help
377           Compile in platform device definitions for G2D device
379 config S5P_DEV_I2C_HDMIPHY
380         bool
381         help
382           Compile in platform device definitions for I2C HDMIPHY controller
384 config S5P_DEV_JPEG
385         bool
386         help
387           Compile in platform device definitions for JPEG codec
389 config S5P_DEV_ONENAND
390         bool
391         help
392           Compile in platform device definition for OneNAND controller
394 config S5P_DEV_TV
395         bool
396         help
397           Compile in platform device definition for TV interface
399 config S5P_DEV_USB_EHCI
400         bool
401         help
402           Compile in platform device definition for USB EHCI
404 config S3C24XX_PWM
405         bool "PWM device support"
406         select PWM
407         select PWM_SAMSUNG
408         help
409           Support for exporting the PWM timer blocks via the pwm device
410           system
412 config S5P_SETUP_MIPIPHY
413         bool
414         help
415           Compile in common setup code for MIPI-CSIS and MIPI-DSIM devices
417 config S3C_SETUP_CAMIF
418         bool
419         help
420           Compile in common setup code for S3C CAMIF devices
422 # DMA
424 config S3C_DMA
425         bool
426         help
427           Internal configuration for S3C DMA core
429 config S5P_IRQ_PM
430         bool
431         default y if S5P_PM
432         help
433           Legacy IRQ power management for S5P platforms
435 config SAMSUNG_PM_GPIO
436         bool
437         default y if GPIO_SAMSUNG && PM
438         help
439           Include legacy GPIO power management code for platforms not using
440           pinctrl-samsung driver.
442 endif
444 config SAMSUNG_DMADEV
445         bool
446         select ARM_AMBA
447         select DMADEVICES
448         select PL330_DMA if (ARCH_EXYNOS5 || ARCH_EXYNOS4 || CPU_S5PV210 || CPU_S5PC100 || \
449                                         CPU_S5P6450 || CPU_S5P6440)
450         help
451           Use DMA device engine for PL330 DMAC.
453 config S5P_DEV_MFC
454         bool
455         help
456           Compile in setup memory (init) code for MFC
458 comment "Power management"
460 config SAMSUNG_PM_DEBUG
461         bool "S3C2410 PM Suspend debug"
462         depends on PM
463         select DEBUG_LL
464         help
465           Say Y here if you want verbose debugging from the PM Suspend and
466           Resume code. See <file:Documentation/arm/Samsung-S3C24XX/Suspend.txt>
467           for more information.
469 config S3C_PM_DEBUG_LED_SMDK
470        bool "SMDK LED suspend/resume debugging"
471        depends on PM && (MACH_SMDK6410)
472        help
473          Say Y here to enable the use of the SMDK LEDs on the baseboard
474          for debugging of the state of the suspend and resume process.
476          Note, this currently only works for S3C64XX based SMDK boards.
478 config SAMSUNG_PM_CHECK
479         bool "S3C2410 PM Suspend Memory CRC"
480         depends on PM && CRC32
481         help
482           Enable the PM code's memory area checksum over sleep. This option
483           will generate CRCs of all blocks of memory, and store them before
484           going to sleep. The blocks are then checked on resume for any
485           errors.
487           Note, this can take several seconds depending on memory size
488           and CPU speed.
490           See <file:Documentation/arm/Samsung-S3C24XX/Suspend.txt>
492 config SAMSUNG_PM_CHECK_CHUNKSIZE
493         int "S3C2410 PM Suspend CRC Chunksize (KiB)"
494         depends on PM && SAMSUNG_PM_CHECK
495         default 64
496         help
497           Set the chunksize in Kilobytes of the CRC for checking memory
498           corruption over suspend and resume. A smaller value will mean that
499           the CRC data block will take more memory, but wil identify any
500           faults with better precision.
502           See <file:Documentation/arm/Samsung-S3C24XX/Suspend.txt>
504 config SAMSUNG_WAKEMASK
505         bool
506         depends on PM
507         help
508           Compile support for wakeup-mask controls found on the S3C6400
509           and above. This code allows a set of interrupt to wakeup-mask
510           mappings. See <plat/wakeup-mask.h>
512 config SAMSUNG_WDT_RESET
513         bool
514         help
515           Compile support for system restart by triggering watchdog reset.
516           Used on SoCs that do not provide dedicated reset control.
518 config S5P_PM
519         bool
520         help
521           Common code for power management support on S5P and newer SoCs
522           Note: Do not select this for S5P6440 and S5P6450.
524 config S5P_SLEEP
525         bool
526         help
527           Internal config node to apply common S5P sleep management code.
528           Can be selected by S5P and newer SoCs with similar sleep procedure.
530 config DEBUG_S3C_UART
531         depends on PLAT_SAMSUNG
532         int
533         default "0" if DEBUG_S3C_UART0
534         default "1" if DEBUG_S3C_UART1
535         default "2" if DEBUG_S3C_UART2
536         default "3" if DEBUG_S3C_UART3
538 endif