blob: 313eb26cfa62cb6e953ef865ba260e6e5ee23393 [file] [log] [blame]
Ben Dookscf383672009-11-10 00:14:58 +00001# arch/arm/plat-samsung/Kconfig
2#
3# Copyright 2009 Simtec Electronics
4#
5# Licensed under GPLv2
6
7config PLAT_SAMSUNG
8 bool
Kukjin Kim2d4a3b72010-08-13 14:38:52 +09009 depends on PLAT_S3C24XX || ARCH_S3C64XX || PLAT_S5P
Ben Dooksae5fa352010-01-29 09:02:19 +000010 select NO_IOPORT
Mark Brown878ccdc2011-05-19 23:10:13 +010011 select GENERIC_IRQ_CHIP
Ben Dookscf383672009-11-10 00:14:58 +000012 default y
13 help
14 Base platform code for all Samsung SoC based systems
15
16if PLAT_SAMSUNG
17
Ben Dooks89f1fa02010-01-29 09:02:17 +000018# boot configurations
19
20comment "Boot options"
21
22config S3C_BOOT_WATCHDOG
23 bool "S3C Initialisation watchdog"
24 depends on S3C2410_WATCHDOG
25 help
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.
29
30config S3C_BOOT_ERROR_RESET
31 bool "S3C Reboot on decompression error"
32 help
33 Say y here to use the watchdog to reset the system if the
34 kernel decompressor detects an error during decompression.
35
36config S3C_BOOT_UART_FORCE_FIFO
37 bool "Force UART FIFO on during boot process"
38 default y
39 help
40 Say Y here to force the UART FIFOs on during the kernel
41 uncompressor
42
43
44config S3C_LOWLEVEL_UART_PORT
45 int "S3C UART to use for low-level messages"
46 default 0
47 help
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.
52
53# clock options
54
Harald Welteaa9ad6a2009-12-01 01:24:34 +000055config SAMSUNG_CLKSRC
56 bool
57 help
58 Select the clock code for the clksrc implementation
59 used by newer systems such as the S3C64XX.
Ben Dookscf383672009-11-10 00:14:58 +000060
Ben Dooks7162ba02010-01-06 10:14:51 +090061# options for IRQ support
62
63config SAMSUNG_IRQ_VIC_TIMER
64 bool
65 help
66 Internal configuration to build the VIC timer interrupt code.
67
Ben Dooks4f830db2010-01-06 02:28:20 +090068# options for gpio configuration support
69
Kukjin Kim1f323cf2010-01-19 15:30:54 +090070config SAMSUNG_GPIOLIB_4BIT
71 bool
72 help
73 GPIOlib file contains the 4 bit modification functions for gpio
74 configuration. GPIOlib shall be compiled only for S3C64XX and S5P
75 series of processors.
76
Ben Dooks4f830db2010-01-06 02:28:20 +090077config S3C_GPIO_CFG_S3C64XX
78 bool
79 help
80 Internal configuration to enable S3C64XX style GPIO configuration
81 functions.
82
Marek Szyprowski838c6d42010-05-18 12:23:36 +020083config S5P_GPIO_DRVSTR
84 bool
85 help
86 Internal configuration to get and set correct GPIO driver strength
87 helper
88
Kukjin Kim85841bc2010-01-11 12:21:51 +090089config SAMSUNG_GPIO_EXTRA
90 int "Number of additional GPIO pins"
91 default 0
92 help
93 Use additional GPIO space in addition to the GPIO's the SOC
94 provides. This allows expanding the GPIO space for use with
95 GPIO expanders.
96
Ben Dooks89f1fa02010-01-29 09:02:17 +000097config S3C_GPIO_SPACE
98 int "Space between gpio banks"
99 default 0
100 help
101 Add a number of spare GPIO entries between each bank for debugging
102 purposes. This allows any problems where an counter overflows from
103 one bank to another to be caught, at the expense of using a little
104 more memory.
105
106config S3C_GPIO_TRACK
107 bool
108 help
109 Internal configuration option to enable the s3c specific gpio
110 chip tracking if the platform requires it.
111
Maurus Cuelenaere3929e1e2010-01-14 00:30:31 +0100112# ADC driver
113
114config S3C_ADC
115 bool "ADC common driver support"
116 help
117 Core support for the ADC block found in the Samsung SoC systems
118 for drivers such as the touchscreen and hwmon to use to share
119 this resource.
120
Ben Dooksb6a60412010-01-06 02:45:09 +0900121# device definitions to compile in
122
123config S3C_DEV_HSMMC
124 bool
125 help
126 Compile in platform device definitions for HSMMC code
127
128config S3C_DEV_HSMMC1
129 bool
130 help
131 Compile in platform device definitions for HSMMC channel 1
132
133config S3C_DEV_HSMMC2
134 bool
135 help
136 Compile in platform device definitions for HSMMC channel 2
137
Hyuk Leeb3c674b2010-06-10 15:22:16 +0900138config S3C_DEV_HSMMC3
139 bool
140 help
141 Compile in platform device definitions for HSMMC channel 3
142
Maurus Cuelenaere6cd82ff2010-05-04 13:12:32 +0200143config S3C_DEV_HWMON
144 bool
145 help
146 Compile in platform device definitions for HWMON
147
Ben Dooksb6a60412010-01-06 02:45:09 +0900148config S3C_DEV_I2C1
149 bool
150 help
151 Compile in platform device definitions for I2C channel 1
152
Marek Szyprowskic8d833b2010-05-20 08:13:06 +0200153config S3C_DEV_I2C2
154 bool
155 help
156 Compile in platform device definitions for I2C channel 2
157
Kyungmin Parkb7a98252010-10-12 07:49:24 +0900158config S3C_DEV_I2C3
159 bool
160 help
161 Compile in platform device definition for I2C controller 3
162
163config S3C_DEV_I2C4
164 bool
165 help
166 Compile in platform device definition for I2C controller 4
167
168config S3C_DEV_I2C5
169 bool
170 help
171 Compile in platform device definition for I2C controller 5
172
173config S3C_DEV_I2C6
174 bool
175 help
176 Compile in platform device definition for I2C controller 6
177
178config S3C_DEV_I2C7
179 bool
180 help
181 Compile in platform device definition for I2C controller 7
182
Ben Dooksb6a60412010-01-06 02:45:09 +0900183config S3C_DEV_FB
184 bool
185 help
186 Compile in platform device definition for framebuffer
187
188config S3C_DEV_USB_HOST
189 bool
190 help
191 Compile in platform device definition for USB host.
192
193config S3C_DEV_USB_HSOTG
194 bool
195 help
196 Compile in platform device definition for USB high-speed OtG
197
Banajit Goswamie1d5c932010-05-19 15:42:29 +0900198config S3C_DEV_WDT
199 bool
200 default y if ARCH_S3C2410
201 help
202 Complie in platform device definition for Watchdog Timer
203
Ben Dooksb6a60412010-01-06 02:45:09 +0900204config S3C_DEV_NAND
205 bool
206 help
207 Compile in platform device definition for NAND controller
208
Marek Szyprowski999304b2010-05-20 08:59:05 +0200209config S3C_DEV_ONENAND
210 bool
211 help
212 Compile in platform device definition for OneNAND controller
213
Atul Dahiyaadc0950c2010-05-18 14:58:56 +0900214config S3C_DEV_RTC
215 bool
216 help
217 Complie in platform device definition for RTC
218
Naveen Krishna4f7cdc32010-05-13 22:06:36 +0900219config SAMSUNG_DEV_ADC
220 bool
221 help
222 Compile in platform device definition for ADC controller
223
Abhilash Kesavandb900052010-06-08 16:38:20 +0900224config SAMSUNG_DEV_IDE
225 bool
226 help
227 Compile in platform device definitions for IDE
228
Jassi Brar4b4c6622010-01-28 17:14:49 +0900229config S3C64XX_DEV_SPI
230 bool
231 help
232 Compile in platform device definitions for S3C64XX's type
233 SPI controllers.
234
Ben Dooks2b6c02a2010-05-19 14:36:28 +0900235config SAMSUNG_DEV_TS
Maurus Cuelenaere909de0d2010-05-04 13:12:44 +0200236 bool
237 help
Ben Dooks2b6c02a2010-05-19 14:36:28 +0900238 Common in platform device definitions for touchscreen device
Maurus Cuelenaere909de0d2010-05-04 13:12:44 +0200239
Joonyoung Shim995c48a2010-08-06 19:26:10 +0900240config SAMSUNG_DEV_KEYPAD
241 bool
242 help
243 Compile in platform device definitions for keypad
244
Banajit Goswami2ce30132011-02-28 22:24:51 +0530245config SAMSUNG_DEV_PWM
246 bool
247 default y if ARCH_S3C2410
248 help
249 Compile in platform device definition for PWM Timer
250
Banajit Goswamif00207b2011-07-20 23:44:21 +0900251config SAMSUNG_DEV_BACKLIGHT
252 bool
253 depends on SAMSUNG_DEV_PWM
254 help
255 Compile in platform device definition LCD backlight with PWM Timer
256
Banajit Goswami2ce30132011-02-28 22:24:51 +0530257config S3C24XX_PWM
258 bool "PWM device support"
259 select HAVE_PWM
260 help
261 Support for exporting the PWM timer blocks via the pwm device
262 system
263
Ben Dooks89f1fa02010-01-29 09:02:17 +0000264# DMA
265
266config S3C_DMA
267 bool
268 help
269 Internal configuration for S3C DMA core
270
Boojin Kimaa0de002011-09-02 09:44:34 +0900271config SAMSUNG_DMADEV
Jassi Brard800ede2010-05-18 11:59:06 +0900272 bool
Boojin Kimaa0de002011-09-02 09:44:34 +0900273 select DMADEVICES
274 select PL330_DMA if (CPU_EXYNOS4210 || CPU_S5PV210 || CPU_S5PC100 || \
275 CPU_S5P6450 || CPU_S5P6440)
276 select ARM_AMBA
Jassi Brard800ede2010-05-18 11:59:06 +0900277 help
Boojin Kimaa0de002011-09-02 09:44:34 +0900278 Use DMA device engine for PL330 DMAC.
Jassi Brard800ede2010-05-18 11:59:06 +0900279
Ben Dooks80057452010-01-20 12:29:25 +0900280comment "Power management"
281
282config SAMSUNG_PM_DEBUG
283 bool "S3C2410 PM Suspend debug"
284 depends on PM
285 help
286 Say Y here if you want verbose debugging from the PM Suspend and
287 Resume code. See <file:Documentation/arm/Samsung-S3C24XX/Suspend.txt>
288 for more information.
289
290config S3C_PM_DEBUG_LED_SMDK
291 bool "SMDK LED suspend/resume debugging"
292 depends on PM && (MACH_SMDK6410)
293 help
294 Say Y here to enable the use of the SMDK LEDs on the baseboard
295 for debugging of the state of the suspend and resume process.
296
297 Note, this currently only works for S3C64XX based SMDK boards.
298
299config SAMSUNG_PM_CHECK
300 bool "S3C2410 PM Suspend Memory CRC"
301 depends on PM && CRC32
302 help
303 Enable the PM code's memory area checksum over sleep. This option
304 will generate CRCs of all blocks of memory, and store them before
305 going to sleep. The blocks are then checked on resume for any
306 errors.
307
308 Note, this can take several seconds depending on memory size
309 and CPU speed.
310
311 See <file:Documentation/arm/Samsung-S3C24XX/Suspend.txt>
312
313config SAMSUNG_PM_CHECK_CHUNKSIZE
314 int "S3C2410 PM Suspend CRC Chunksize (KiB)"
315 depends on PM && SAMSUNG_PM_CHECK
316 default 64
317 help
318 Set the chunksize in Kilobytes of the CRC for checking memory
319 corruption over suspend and resume. A smaller value will mean that
320 the CRC data block will take more memory, but wil identify any
321 faults with better precision.
322
323 See <file:Documentation/arm/Samsung-S3C24XX/Suspend.txt>
324
Ben Dooks0317e522010-05-20 14:05:33 +0900325config SAMSUNG_WAKEMASK
326 bool
327 depends on PM
328 help
329 Compile support for wakeup-mask controls found on the S3C6400
330 and above. This code allows a set of interrupt to wakeup-mask
331 mappings. See <plat/wakeup-mask.h>
332
Changhwan Yound9305962010-12-03 17:14:57 +0900333comment "Power Domain"
334
335config SAMSUNG_PD
336 bool "Samsung Power Domain"
337 depends on PM_RUNTIME
338 help
339 Say Y here if you want to control Power Domain by Runtime PM.
340
Will Deacon952aeeb2011-08-16 22:28:54 +0100341config DEBUG_S3C_UART
342 depends on PLAT_SAMSUNG
343 int
344 default "0" if DEBUG_S3C_UART0
345 default "1" if DEBUG_S3C_UART1
346 default "2" if DEBUG_S3C_UART2
347
Ben Dookscf383672009-11-10 00:14:58 +0000348endif