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 config SAMSUNG_IRQ_UART
71 Internal configuration to build the IRQ UART demux code.
73 # options for gpio configuration support
75 config SAMSUNG_GPIOLIB_4BIT
78 GPIOlib file contains the 4 bit modification functions for gpio
79 configuration. GPIOlib shall be compiled only for S3C64XX and S5P
82 config S3C_GPIO_CFG_S3C24XX
85 Internal configuration to enable S3C24XX style GPIO configuration
88 config S3C_GPIO_CFG_S3C64XX
91 Internal configuration to enable S3C64XX style GPIO configuration
94 config S3C_GPIO_PULL_UPDOWN
97 Internal configuration to enable the correct GPIO pull helper
99 config S3C_GPIO_PULL_S3C2443
101 select S3C_GPIO_PULL_UPDOWN
103 Internal configuration to enable the correct GPIO pull helper for S3C2443-style GPIO
105 config S3C_GPIO_PULL_DOWN
108 Internal configuration to enable the correct GPIO pull helper
110 config S3C_GPIO_PULL_UP
113 Internal configuration to enable the correct GPIO pull helper
115 config S5P_GPIO_DRVSTR
118 Internal configuration to get and set correct GPIO driver strength
121 config SAMSUNG_GPIO_EXTRA
122 int "Number of additional GPIO pins"
125 Use additional GPIO space in addition to the GPIO's the SOC
126 provides. This allows expanding the GPIO space for use with
129 config S3C_GPIO_SPACE
130 int "Space between gpio banks"
133 Add a number of spare GPIO entries between each bank for debugging
134 purposes. This allows any problems where an counter overflows from
135 one bank to another to be caught, at the expense of using a little
138 config S3C_GPIO_TRACK
141 Internal configuration option to enable the s3c specific gpio
142 chip tracking if the platform requires it.
147 bool "ADC common driver support"
149 Core support for the ADC block found in the Samsung SoC systems
150 for drivers such as the touchscreen and hwmon to use to share
153 # device definitions to compile in
158 Compile in platform device definitions for HSMMC code
160 config S3C_DEV_HSMMC1
163 Compile in platform device definitions for HSMMC channel 1
165 config S3C_DEV_HSMMC2
168 Compile in platform device definitions for HSMMC channel 2
170 config S3C_DEV_HSMMC3
173 Compile in platform device definitions for HSMMC channel 3
178 Compile in platform device definitions for HWMON
183 Compile in platform device definitions for I2C channel 1
188 Compile in platform device definitions for I2C channel 2
193 Compile in platform device definition for I2C controller 3
198 Compile in platform device definition for I2C controller 4
203 Compile in platform device definition for I2C controller 5
208 Compile in platform device definition for I2C controller 6
213 Compile in platform device definition for I2C controller 7
218 Compile in platform device definition for framebuffer
220 config S3C_DEV_USB_HOST
223 Compile in platform device definition for USB host.
225 config S3C_DEV_USB_HSOTG
228 Compile in platform device definition for USB high-speed OtG
232 default y if ARCH_S3C2410
234 Complie in platform device definition for Watchdog Timer
239 Compile in platform device definition for NAND controller
241 config S3C_DEV_ONENAND
244 Compile in platform device definition for OneNAND controller
249 Complie in platform device definition for RTC
251 config SAMSUNG_DEV_ADC
254 Compile in platform device definition for ADC controller
256 config SAMSUNG_DEV_IDE
259 Compile in platform device definitions for IDE
261 config S3C64XX_DEV_SPI
264 Compile in platform device definitions for S3C64XX's type
267 config SAMSUNG_DEV_TS
270 Common in platform device definitions for touchscreen device
272 config SAMSUNG_DEV_KEYPAD
275 Compile in platform device definitions for keypad
277 config SAMSUNG_DEV_PWM
279 default y if ARCH_S3C2410
281 Compile in platform device definition for PWM Timer
283 config SAMSUNG_DEV_BACKLIGHT
285 depends on SAMSUNG_DEV_PWM
287 Compile in platform device definition LCD backlight with PWM Timer
290 bool "PWM device support"
293 Support for exporting the PWM timer blocks via the pwm device
301 Internal configuration for S3C DMA core
307 S3C DMA API Driver for PL330 DMAC.
309 config SAMSUNG_DMADEV
312 select PL330_DMA if (CPU_EXYNOS4210 || CPU_S5PV210 || CPU_S5PC100 || \
313 CPU_S5P6450 || CPU_S5P6440)
316 Use DMA device engine for PL330 DMAC.
318 comment "Power management"
320 config SAMSUNG_PM_DEBUG
321 bool "S3C2410 PM Suspend debug"
324 Say Y here if you want verbose debugging from the PM Suspend and
325 Resume code. See <file:Documentation/arm/Samsung-S3C24XX/Suspend.txt>
326 for more information.
328 config S3C_PM_DEBUG_LED_SMDK
329 bool "SMDK LED suspend/resume debugging"
330 depends on PM && (MACH_SMDK6410)
332 Say Y here to enable the use of the SMDK LEDs on the baseboard
333 for debugging of the state of the suspend and resume process.
335 Note, this currently only works for S3C64XX based SMDK boards.
337 config SAMSUNG_PM_CHECK
338 bool "S3C2410 PM Suspend Memory CRC"
339 depends on PM && CRC32
341 Enable the PM code's memory area checksum over sleep. This option
342 will generate CRCs of all blocks of memory, and store them before
343 going to sleep. The blocks are then checked on resume for any
346 Note, this can take several seconds depending on memory size
349 See <file:Documentation/arm/Samsung-S3C24XX/Suspend.txt>
351 config SAMSUNG_PM_CHECK_CHUNKSIZE
352 int "S3C2410 PM Suspend CRC Chunksize (KiB)"
353 depends on PM && SAMSUNG_PM_CHECK
356 Set the chunksize in Kilobytes of the CRC for checking memory
357 corruption over suspend and resume. A smaller value will mean that
358 the CRC data block will take more memory, but wil identify any
359 faults with better precision.
361 See <file:Documentation/arm/Samsung-S3C24XX/Suspend.txt>
363 config SAMSUNG_WAKEMASK
367 Compile support for wakeup-mask controls found on the S3C6400
368 and above. This code allows a set of interrupt to wakeup-mask
369 mappings. See <plat/wakeup-mask.h>
371 comment "Power Domain"
374 bool "Samsung Power Domain"
375 depends on PM_RUNTIME
377 Say Y here if you want to control Power Domain by Runtime PM.