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