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