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