1 # arch/arm/plat-samsung/Kconfig
3 # Copyright 2009 Simtec Electronics
9 depends on PLAT_S3C24XX || ARCH_S3C64XX || PLAT_S5P
11 select GENERIC_IRQ_CHIP
14 Base platform code for all Samsung SoC based systems
20 comment "Boot options"
22 config S3C_BOOT_WATCHDOG
23 bool "S3C Initialisation watchdog"
24 depends on S3C2410_WATCHDOG
26 Say y to enable the watchdog during the kernel decompression
27 stage. If the kernel fails to uncompress, then the watchdog
28 will trigger a reset and the system should restart.
30 config S3C_BOOT_ERROR_RESET
31 bool "S3C Reboot on decompression error"
33 Say y here to use the watchdog to reset the system if the
34 kernel decompressor detects an error during decompression.
36 config S3C_BOOT_UART_FORCE_FIFO
37 bool "Force UART FIFO on during boot process"
40 Say Y here to force the UART FIFOs on during the kernel
44 config S3C_LOWLEVEL_UART_PORT
45 int "S3C UART to use for low-level messages"
48 Choice of which UART port to use for the low-level messages,
49 such as the `Uncompressing...` at start time. The value of
50 this configuration should be between zero and two. The port
51 must have been initialised by the boot-loader before use.
58 Select the clock code for the clksrc implementation
59 used by newer systems such as the S3C64XX.
61 # options for IRQ support
63 config SAMSUNG_IRQ_VIC_TIMER
66 Internal configuration to build the VIC timer interrupt code.
68 # options for gpio configuration support
70 config SAMSUNG_GPIOLIB_4BIT
73 GPIOlib file contains the 4 bit modification functions for gpio
74 configuration. GPIOlib shall be compiled only for S3C64XX and S5P
77 config S3C_GPIO_CFG_S3C64XX
80 Internal configuration to enable S3C64XX style GPIO configuration
83 config S5P_GPIO_DRVSTR
86 Internal configuration to get and set correct GPIO driver strength
89 config SAMSUNG_GPIO_EXTRA
90 int "Number of additional GPIO pins"
91 default 128 if SAMSUNG_GPIO_EXTRA128
92 default 64 if SAMSUNG_GPIO_EXTRA64
95 Use additional GPIO space in addition to the GPIO's the SOC
96 provides. This allows expanding the GPIO space for use with
99 config SAMSUNG_GPIO_EXTRA64
102 config SAMSUNG_GPIO_EXTRA128
105 config S3C_GPIO_SPACE
106 int "Space between gpio banks"
109 Add a number of spare GPIO entries between each bank for debugging
110 purposes. This allows any problems where an counter overflows from
111 one bank to another to be caught, at the expense of using a little
114 config S3C_GPIO_TRACK
117 Internal configuration option to enable the s3c specific gpio
118 chip tracking if the platform requires it.
123 bool "ADC common driver support"
125 Core support for the ADC block found in the Samsung SoC systems
126 for drivers such as the touchscreen and hwmon to use to share
129 # device definitions to compile in
134 Compile in platform device definitions for HSMMC code
136 config S3C_DEV_HSMMC1
139 Compile in platform device definitions for HSMMC channel 1
141 config S3C_DEV_HSMMC2
144 Compile in platform device definitions for HSMMC channel 2
146 config S3C_DEV_HSMMC3
149 Compile in platform device definitions for HSMMC channel 3
154 Compile in platform device definitions for HWMON
159 Compile in platform device definitions for I2C channel 1
164 Compile in platform device definitions for I2C channel 2
169 Compile in platform device definition for I2C controller 3
174 Compile in platform device definition for I2C controller 4
179 Compile in platform device definition for I2C controller 5
184 Compile in platform device definition for I2C controller 6
189 Compile in platform device definition for I2C controller 7
194 Compile in platform device definition for framebuffer
196 config S3C_DEV_USB_HOST
199 Compile in platform device definition for USB host.
201 config S3C_DEV_USB_HSOTG
204 Compile in platform device definition for USB high-speed OtG
208 default y if ARCH_S3C2410
210 Complie in platform device definition for Watchdog Timer
215 Compile in platform device definition for NAND controller
217 config S3C_DEV_ONENAND
220 Compile in platform device definition for OneNAND controller
225 Complie in platform device definition for RTC
227 config SAMSUNG_DEV_ADC
230 Compile in platform device definition for ADC controller
232 config SAMSUNG_DEV_IDE
235 Compile in platform device definitions for IDE
237 config S3C64XX_DEV_SPI0
240 Compile in platform device definitions for S3C64XX's type
243 config S3C64XX_DEV_SPI1
246 Compile in platform device definitions for S3C64XX's type
249 config S3C64XX_DEV_SPI2
252 Compile in platform device definitions for S3C64XX's type
255 config SAMSUNG_DEV_TS
258 Common in platform device definitions for touchscreen device
260 config SAMSUNG_DEV_KEYPAD
263 Compile in platform device definitions for keypad
265 config SAMSUNG_DEV_PWM
267 default y if ARCH_S3C2410
269 Compile in platform device definition for PWM Timer
271 config SAMSUNG_DEV_BACKLIGHT
273 depends on SAMSUNG_DEV_PWM
275 Compile in platform device definition LCD backlight with PWM Timer
278 bool "PWM device support"
281 Support for exporting the PWM timer blocks via the pwm device
289 Internal configuration for S3C DMA core
291 config SAMSUNG_DMADEV
294 select PL330_DMA if (CPU_EXYNOS4210 || CPU_S5PV210 || CPU_S5PC100 || \
295 CPU_S5P6450 || CPU_S5P6440)
298 Use DMA device engine for PL330 DMAC.
300 comment "Power management"
302 config SAMSUNG_PM_DEBUG
303 bool "S3C2410 PM Suspend debug"
306 Say Y here if you want verbose debugging from the PM Suspend and
307 Resume code. See <file:Documentation/arm/Samsung-S3C24XX/Suspend.txt>
308 for more information.
310 config S3C_PM_DEBUG_LED_SMDK
311 bool "SMDK LED suspend/resume debugging"
312 depends on PM && (MACH_SMDK6410)
314 Say Y here to enable the use of the SMDK LEDs on the baseboard
315 for debugging of the state of the suspend and resume process.
317 Note, this currently only works for S3C64XX based SMDK boards.
319 config SAMSUNG_PM_CHECK
320 bool "S3C2410 PM Suspend Memory CRC"
321 depends on PM && CRC32
323 Enable the PM code's memory area checksum over sleep. This option
324 will generate CRCs of all blocks of memory, and store them before
325 going to sleep. The blocks are then checked on resume for any
328 Note, this can take several seconds depending on memory size
331 See <file:Documentation/arm/Samsung-S3C24XX/Suspend.txt>
333 config SAMSUNG_PM_CHECK_CHUNKSIZE
334 int "S3C2410 PM Suspend CRC Chunksize (KiB)"
335 depends on PM && SAMSUNG_PM_CHECK
338 Set the chunksize in Kilobytes of the CRC for checking memory
339 corruption over suspend and resume. A smaller value will mean that
340 the CRC data block will take more memory, but wil identify any
341 faults with better precision.
343 See <file:Documentation/arm/Samsung-S3C24XX/Suspend.txt>
345 config SAMSUNG_WAKEMASK
349 Compile support for wakeup-mask controls found on the S3C6400
350 and above. This code allows a set of interrupt to wakeup-mask
351 mappings. See <plat/wakeup-mask.h>
353 comment "Power Domain"
356 bool "Samsung Power Domain"
357 depends on PM_RUNTIME
359 Say Y here if you want to control Power Domain by Runtime PM.
361 config DEBUG_S3C_UART
362 depends on PLAT_SAMSUNG
364 default "0" if DEBUG_S3C_UART0
365 default "1" if DEBUG_S3C_UART1
366 default "2" if DEBUG_S3C_UART2