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