Merge tag 'power-exynos' of git://git.kernel.org/pub/scm/linux/kernel/git/kgene/linux...
[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 11 select GENERIC_IRQ_CHIP
ce816fa8 12 select NO_IOPORT_MAP
cf383678
BD
13 help
14 Base platform code for all Samsung SoC based systems
15
199642bf
KK
16config PLAT_S5P
17 bool
b8529ec1 18 depends on ARCH_S5PV210
199642bf 19 default y
b1b3f49c 20 select ARCH_REQUIRE_GPIOLIB
e245f969 21 select ARM_VIC
ce816fa8 22 select NO_IOPORT_MAP
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
199642bf
KK
27 help
28 Base platform code for Samsung's S5P series SoC.
29
89693016
ADK
30config SAMSUNG_PM
31 bool
070b8b43 32 depends on PM && (PLAT_S3C24XX || ARCH_S3C64XX || S5P_PM)
89693016
ADK
33 default y
34 help
35 Base platform power management code for samsung code
36
cf383678 37if PLAT_SAMSUNG
e509b289 38menu "Samsung Common options"
cf383678 39
89f1fa08
BD
40# boot configurations
41
42comment "Boot options"
43
89f1fa08
BD
44config S3C_LOWLEVEL_UART_PORT
45 int "S3C UART to use for low-level messages"
e509b289 46 depends on ARCH_S3C64XX
89f1fa08
BD
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
cd8dc7ae
TF
54config 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
66if SAMSUNG_ATAGS
67
89f1fa08
BD
68# clock options
69
2aa1ecf7
MB
70config SAMSUNG_CLOCK
71 bool
72 default y if !COMMON_CLK
73
aa9ad6ad
HW
74config SAMSUNG_CLKSRC
75 bool
76 help
77 Select the clock code for the clksrc implementation
78 used by newer systems such as the S3C64XX.
cf383678 79
bf46aaea 80config S5P_CLOCK
b8529ec1 81 def_bool ARCH_S5PV210
bf46aaea
KK
82 help
83 Support common clock part for ARCH_S5P and ARCH_EXYNOS SoCs
84
7162ba03
BD
85# options for IRQ support
86
68ae8998 87config S5P_IRQ
b8529ec1 88 def_bool ARCH_S5PV210
68ae8998 89 help
278c800e 90 Support common interrupt part for ARCH_S5P SoCs
68ae8998
KK
91
92config S5P_EXT_INT
93 bool
94 help
95 Use the external interrupts (other than GPIO interrupts.)
68ae8998
KK
96
97config S5P_GPIO_INT
98 bool
99 help
100 Common code for the GPIO interrupts (other than external interrupts.)
101
4f830db9
BD
102# options for gpio configuration support
103
838c6d49
MS
104config S5P_GPIO_DRVSTR
105 bool
106 help
107 Internal configuration to get and set correct GPIO driver strength
108 helper
109
85841bce
KK
110config SAMSUNG_GPIO_EXTRA
111 int "Number of additional GPIO pins"
4ff13995
MB
112 default 128 if SAMSUNG_GPIO_EXTRA128
113 default 64 if SAMSUNG_GPIO_EXTRA64
85841bce
KK
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
4ff13995
MB
120config SAMSUNG_GPIO_EXTRA64
121 bool
122
123config SAMSUNG_GPIO_EXTRA128
124 bool
125
89f1fa08
BD
126config 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
135config 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
cfe370f8
KK
141# uart options
142
143config S5P_DEV_UART
144 def_bool y
b8529ec1 145 depends on ARCH_S5PV210
cfe370f8 146
3929e1e7
MC
147# ADC driver
148
149config 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
b6a60413
BD
156# device definitions to compile in
157
158config S3C_DEV_HSMMC
159 bool
160 help
161 Compile in platform device definitions for HSMMC code
162
163config S3C_DEV_HSMMC1
164 bool
165 help
166 Compile in platform device definitions for HSMMC channel 1
167
168config S3C_DEV_HSMMC2
169 bool
170 help
171 Compile in platform device definitions for HSMMC channel 2
172
b3c674bc
HL
173config S3C_DEV_HSMMC3
174 bool
175 help
176 Compile in platform device definitions for HSMMC channel 3
177
6cd82ffe
MC
178config S3C_DEV_HWMON
179 bool
180 help
181 Compile in platform device definitions for HWMON
182
b6a60413
BD
183config S3C_DEV_I2C1
184 bool
185 help
186 Compile in platform device definitions for I2C channel 1
187
c8d833bf
MS
188config S3C_DEV_I2C2
189 bool
190 help
191 Compile in platform device definitions for I2C channel 2
192
b7a98255
KP
193config S3C_DEV_I2C3
194 bool
195 help
196 Compile in platform device definition for I2C controller 3
197
198config S3C_DEV_I2C4
199 bool
200 help
201 Compile in platform device definition for I2C controller 4
202
203config S3C_DEV_I2C5
204 bool
205 help
206 Compile in platform device definition for I2C controller 5
207
208config S3C_DEV_I2C6
209 bool
210 help
211 Compile in platform device definition for I2C controller 6
212
213config S3C_DEV_I2C7
214 bool
215 help
216 Compile in platform device definition for I2C controller 7
217
b6a60413
BD
218config S3C_DEV_FB
219 bool
220 help
221 Compile in platform device definition for framebuffer
222
223config S3C_DEV_USB_HOST
224 bool
225 help
226 Compile in platform device definition for USB host.
227
228config S3C_DEV_USB_HSOTG
229 bool
230 help
231 Compile in platform device definition for USB high-speed OtG
232
e1d5c93e
BG
233config S3C_DEV_WDT
234 bool
b130d5c2 235 default y if ARCH_S3C24XX
e1d5c93e
BG
236 help
237 Complie in platform device definition for Watchdog Timer
238
b6a60413
BD
239config S3C_DEV_NAND
240 bool
241 help
242 Compile in platform device definition for NAND controller
243
999304be
MS
244config S3C_DEV_ONENAND
245 bool
246 help
247 Compile in platform device definition for OneNAND controller
248
adc0950c
AD
249config S3C_DEV_RTC
250 bool
251 help
252 Complie in platform device definition for RTC
253
4f7cdc38
NK
254config SAMSUNG_DEV_ADC
255 bool
256 help
257 Compile in platform device definition for ADC controller
258
db90005b
AK
259config SAMSUNG_DEV_IDE
260 bool
261 help
262 Compile in platform device definitions for IDE
263
875a5937 264config S3C64XX_DEV_SPI0
4b4c6625
JB
265 bool
266 help
267 Compile in platform device definitions for S3C64XX's type
875a5937
PV
268 SPI controller 0
269
270config S3C64XX_DEV_SPI1
271 bool
272 help
273 Compile in platform device definitions for S3C64XX's type
274 SPI controller 1
275
276config S3C64XX_DEV_SPI2
277 bool
278 help
279 Compile in platform device definitions for S3C64XX's type
280 SPI controller 2
4b4c6625 281
2b6c02ab 282config SAMSUNG_DEV_TS
909de0d6
MC
283 bool
284 help
2b6c02ab 285 Common in platform device definitions for touchscreen device
909de0d6 286
995c48ad
JS
287config SAMSUNG_DEV_KEYPAD
288 bool
289 help
290 Compile in platform device definitions for keypad
291
2ce30137
BG
292config SAMSUNG_DEV_PWM
293 bool
b130d5c2 294 default y if ARCH_S3C24XX
2ce30137
BG
295 help
296 Compile in platform device definition for PWM Timer
297
f00207b2
BG
298config 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
e033ca9b
KK
304config S5P_DEV_CSIS0
305 bool
306 help
307 Compile in platform device definitions for MIPI-CSIS channel 0
308
309config S5P_DEV_CSIS1
310 bool
311 help
312 Compile in platform device definitions for MIPI-CSIS channel 1
313
314config S5P_DEV_FIMC0
315 bool
316 help
317 Compile in platform device definitions for FIMC controller 0
318
319config S5P_DEV_FIMC1
320 bool
321 help
322 Compile in platform device definitions for FIMC controller 1
323
324config S5P_DEV_FIMC2
325 bool
326 help
327 Compile in platform device definitions for FIMC controller 2
328
329config S5P_DEV_FIMC3
330 bool
331 help
332 Compile in platform device definitions for FIMC controller 3
333
334config S5P_DEV_FIMD0
335 bool
336 help
337 Compile in platform device definitions for FIMD controller 0
338
339config S5P_DEV_G2D
340 bool
341 help
342 Compile in platform device definitions for G2D device
343
344config S5P_DEV_I2C_HDMIPHY
345 bool
346 help
347 Compile in platform device definitions for I2C HDMIPHY controller
348
349config S5P_DEV_JPEG
350 bool
351 help
352 Compile in platform device definitions for JPEG codec
353
e033ca9b
KK
354config S5P_DEV_ONENAND
355 bool
356 help
357 Compile in platform device definition for OneNAND controller
358
359config S5P_DEV_TV
360 bool
361 help
362 Compile in platform device definition for TV interface
363
2ce30137
BG
364config S3C24XX_PWM
365 bool "PWM device support"
35e79061
AB
366 select PWM
367 select PWM_SAMSUNG
2ce30137
BG
368 help
369 Support for exporting the PWM timer blocks via the pwm device
370 system
371
e51d5486
SN
372config S3C_SETUP_CAMIF
373 bool
374 help
375 Compile in common setup code for S3C CAMIF devices
376
89f1fa08
BD
377# DMA
378
379config S3C_DMA
380 bool
381 help
382 Internal configuration for S3C DMA core
383
105dddbf
TF
384config S5P_IRQ_PM
385 bool
386 default y if S5P_PM
387 help
388 Legacy IRQ power management for S5P platforms
389
390config 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
aa0de00e 397config SAMSUNG_DMADEV
27873b05 398 bool "Use legacy Samsung DMA abstraction"
b8529ec1 399 depends on CPU_S5PV210 || ARCH_S3C64XX
aa0de00e 400 select DMADEVICES
27873b05 401 default y
d800edeb 402 help
aa0de00e 403 Use DMA device engine for PL330 DMAC.
d800edeb 404
27873b05
AB
405endif
406
cd8dc7ae
TF
407config S5P_DEV_MFC
408 bool
409 help
410 Compile in setup memory (init) code for MFC
411
8005745d
BD
412comment "Power management"
413
414config SAMSUNG_PM_DEBUG
415 bool "S3C2410 PM Suspend debug"
af960151 416 depends on PM && DEBUG_KERNEL && DEBUG_S3C_UART
8005745d
BD
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
422config 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
431config SAMSUNG_PM_CHECK
432 bool "S3C2410 PM Suspend Memory CRC"
714e3302
AB
433 depends on PM
434 select CRC32
8005745d
BD
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
446config 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
0317e52e
BD
458config 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
a4658e57
TF
466config 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
8eadcf74
KK
472config S5P_PM
473 bool
474 help
475 Common code for power management support on S5P and newer SoCs
8eadcf74
KK
476
477config 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
952aeeb2
WD
483config 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
5fa23dde 489 default "3" if DEBUG_S3C_UART3
952aeeb2 490
e509b289 491endmenu
cf383678 492endif
This page took 0.241534 seconds and 5 git commands to generate.