1 # arch/arm/plat-samsung/Kconfig
3 # Copyright 2009 Simtec Electronics
9 depends on PLAT_S3C24XX || ARCH_S3C64XX || PLAT_S5P || ARCH_EXYNOS
11 select GENERIC_IRQ_CHIP
14 Base platform code for all Samsung SoC based systems
18 depends on (ARCH_S5P64X0 || ARCH_S5PC100 || ARCH_S5PV210)
20 select ARCH_REQUIRE_GPIOLIB
25 select S5P_GPIO_DRVSTR
26 select SAMSUNG_CLKSRC if !COMMON_CLK
28 Base platform code for Samsung's S5P series SoC.
32 depends on PM && (PLAT_S3C24XX || ARCH_S3C64XX || ARCH_S5P64X0 || S5P_PM)
35 Base platform power management code for samsung code
38 menu "Samsung Common options"
42 comment "Boot options"
44 config S3C_LOWLEVEL_UART_PORT
45 int "S3C UART to use for low-level messages"
46 depends on ARCH_S3C64XX
49 Choice of which UART port to use for the low-level messages,
50 such as the `Uncompressing...` at start time. The value of
51 this configuration should be between zero and two. The port
52 must have been initialised by the boot-loader before use.
56 depends on !ARCH_MULTIPLATFORM
59 This option enables ATAGS based boot support code for
60 Samsung platforms, including static platform devices, legacy
61 clock, timer and interrupt initialization, etc.
63 Platforms that support only DT based boot need not to select
72 default y if !COMMON_CLK
77 Select the clock code for the clksrc implementation
78 used by newer systems such as the S3C64XX.
81 def_bool (ARCH_S5P64X0 || ARCH_S5PC100 || ARCH_S5PV210)
83 Support common clock part for ARCH_S5P and ARCH_EXYNOS SoCs
85 # options for IRQ support
88 def_bool (ARCH_S5P64X0 || ARCH_S5PC100 || ARCH_S5PV210)
90 Support common interrupt part for ARCH_S5P SoCs
95 Use the external interrupts (other than GPIO interrupts.)
96 Note: Do not choose this for S5P6440 and S5P6450.
101 Common code for the GPIO interrupts (other than external interrupts.)
103 # options for gpio configuration support
105 config S5P_GPIO_DRVSTR
108 Internal configuration to get and set correct GPIO driver strength
111 config SAMSUNG_GPIO_EXTRA
112 int "Number of additional GPIO pins"
113 default 128 if SAMSUNG_GPIO_EXTRA128
114 default 64 if SAMSUNG_GPIO_EXTRA64
117 Use additional GPIO space in addition to the GPIO's the SOC
118 provides. This allows expanding the GPIO space for use with
121 config SAMSUNG_GPIO_EXTRA64
124 config SAMSUNG_GPIO_EXTRA128
127 config S3C_GPIO_SPACE
128 int "Space between gpio banks"
131 Add a number of spare GPIO entries between each bank for debugging
132 purposes. This allows any problems where an counter overflows from
133 one bank to another to be caught, at the expense of using a little
136 config S3C_GPIO_TRACK
139 Internal configuration option to enable the s3c specific gpio
140 chip tracking if the platform requires it.
146 depends on (ARCH_S5P64X0 || ARCH_S5PC100 || ARCH_S5PV210)
151 bool "ADC common driver support"
153 Core support for the ADC block found in the Samsung SoC systems
154 for drivers such as the touchscreen and hwmon to use to share
157 # device definitions to compile in
162 Compile in platform device definitions for HSMMC code
164 config S3C_DEV_HSMMC1
167 Compile in platform device definitions for HSMMC channel 1
169 config S3C_DEV_HSMMC2
172 Compile in platform device definitions for HSMMC channel 2
174 config S3C_DEV_HSMMC3
177 Compile in platform device definitions for HSMMC channel 3
182 Compile in platform device definitions for HWMON
187 Compile in platform device definitions for I2C channel 1
192 Compile in platform device definitions for I2C channel 2
197 Compile in platform device definition for I2C controller 3
202 Compile in platform device definition for I2C controller 4
207 Compile in platform device definition for I2C controller 5
212 Compile in platform device definition for I2C controller 6
217 Compile in platform device definition for I2C controller 7
222 Compile in platform device definition for framebuffer
224 config S3C_DEV_USB_HOST
227 Compile in platform device definition for USB host.
229 config S3C_DEV_USB_HSOTG
232 Compile in platform device definition for USB high-speed OtG
236 default y if ARCH_S3C24XX
238 Complie in platform device definition for Watchdog Timer
243 Compile in platform device definition for NAND controller
245 config S3C_DEV_ONENAND
248 Compile in platform device definition for OneNAND controller
253 Complie in platform device definition for RTC
255 config SAMSUNG_DEV_ADC
258 Compile in platform device definition for ADC controller
260 config SAMSUNG_DEV_IDE
263 Compile in platform device definitions for IDE
265 config S3C64XX_DEV_SPI0
268 Compile in platform device definitions for S3C64XX's type
271 config S3C64XX_DEV_SPI1
274 Compile in platform device definitions for S3C64XX's type
277 config S3C64XX_DEV_SPI2
280 Compile in platform device definitions for S3C64XX's type
283 config SAMSUNG_DEV_TS
286 Common in platform device definitions for touchscreen device
288 config SAMSUNG_DEV_KEYPAD
291 Compile in platform device definitions for keypad
293 config SAMSUNG_DEV_PWM
295 default y if ARCH_S3C24XX
297 Compile in platform device definition for PWM Timer
299 config SAMSUNG_DEV_BACKLIGHT
301 depends on SAMSUNG_DEV_PWM
303 Compile in platform device definition LCD backlight with PWM Timer
308 Compile in platform device definitions for MIPI-CSIS channel 0
313 Compile in platform device definitions for MIPI-CSIS channel 1
318 Compile in platform device definitions for FIMC controller 0
323 Compile in platform device definitions for FIMC controller 1
328 Compile in platform device definitions for FIMC controller 2
333 Compile in platform device definitions for FIMC controller 3
338 Compile in platform device definitions for FIMD controller 0
343 Compile in platform device definitions for G2D device
345 config S5P_DEV_I2C_HDMIPHY
348 Compile in platform device definitions for I2C HDMIPHY controller
353 Compile in platform device definitions for JPEG codec
355 config S5P_DEV_ONENAND
358 Compile in platform device definition for OneNAND controller
363 Compile in platform device definition for TV interface
366 bool "PWM device support"
370 Support for exporting the PWM timer blocks via the pwm device
373 config S3C_SETUP_CAMIF
376 Compile in common setup code for S3C CAMIF devices
383 Internal configuration for S3C DMA core
389 Legacy IRQ power management for S5P platforms
391 config SAMSUNG_PM_GPIO
393 default y if GPIO_SAMSUNG && PM
395 Include legacy GPIO power management code for platforms not using
396 pinctrl-samsung driver.
398 config SAMSUNG_DMADEV
399 bool "Use legacy Samsung DMA abstraction"
400 depends on CPU_S5PV210 || CPU_S5PC100 || ARCH_S5P64X0 || ARCH_S3C64XX
404 Use DMA device engine for PL330 DMAC.
411 Compile in setup memory (init) code for MFC
413 comment "Power management"
415 config SAMSUNG_PM_DEBUG
416 bool "S3C2410 PM Suspend debug"
417 depends on PM && DEBUG_KERNEL && DEBUG_S3C_UART
419 Say Y here if you want verbose debugging from the PM Suspend and
420 Resume code. See <file:Documentation/arm/Samsung-S3C24XX/Suspend.txt>
421 for more information.
423 config S3C_PM_DEBUG_LED_SMDK
424 bool "SMDK LED suspend/resume debugging"
425 depends on PM && (MACH_SMDK6410)
427 Say Y here to enable the use of the SMDK LEDs on the baseboard
428 for debugging of the state of the suspend and resume process.
430 Note, this currently only works for S3C64XX based SMDK boards.
432 config SAMSUNG_PM_CHECK
433 bool "S3C2410 PM Suspend Memory CRC"
437 Enable the PM code's memory area checksum over sleep. This option
438 will generate CRCs of all blocks of memory, and store them before
439 going to sleep. The blocks are then checked on resume for any
442 Note, this can take several seconds depending on memory size
445 See <file:Documentation/arm/Samsung-S3C24XX/Suspend.txt>
447 config SAMSUNG_PM_CHECK_CHUNKSIZE
448 int "S3C2410 PM Suspend CRC Chunksize (KiB)"
449 depends on PM && SAMSUNG_PM_CHECK
452 Set the chunksize in Kilobytes of the CRC for checking memory
453 corruption over suspend and resume. A smaller value will mean that
454 the CRC data block will take more memory, but wil identify any
455 faults with better precision.
457 See <file:Documentation/arm/Samsung-S3C24XX/Suspend.txt>
459 config SAMSUNG_WAKEMASK
463 Compile support for wakeup-mask controls found on the S3C6400
464 and above. This code allows a set of interrupt to wakeup-mask
465 mappings. See <plat/wakeup-mask.h>
467 config SAMSUNG_WDT_RESET
470 Compile support for system restart by triggering watchdog reset.
471 Used on SoCs that do not provide dedicated reset control.
476 Common code for power management support on S5P and newer SoCs
477 Note: Do not select this for S5P6440 and S5P6450.
482 Internal config node to apply common S5P sleep management code.
483 Can be selected by S5P and newer SoCs with similar sleep procedure.
485 config DEBUG_S3C_UART
486 depends on PLAT_SAMSUNG
488 default "0" if DEBUG_S3C_UART0
489 default "1" if DEBUG_S3C_UART1
490 default "2" if DEBUG_S3C_UART2
491 default "3" if DEBUG_S3C_UART3