]> Pileus Git - ~andy/linux/blob - arch/arm/plat-samsung/Kconfig
Merge branch 'for-chris' of git://git.jan-o-sch.net/btrfs-unstable into for-linus
[~andy/linux] / 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         select NO_IOPORT
11         select GENERIC_IRQ_CHIP
12         default y
13         help
14           Base platform code for all Samsung SoC based systems
15
16 if PLAT_SAMSUNG
17
18 # boot configurations
19
20 comment "Boot options"
21
22 config S3C_BOOT_WATCHDOG
23         bool "S3C Initialisation watchdog"
24         depends on S3C2410_WATCHDOG
25         help
26           Say y to enable the watchdog during the kernel decompression
27           stage. If the kernel fails to uncompress, then the watchdog
28           will trigger a reset and the system should restart.
29
30 config S3C_BOOT_ERROR_RESET
31         bool "S3C Reboot on decompression error"
32         help
33           Say y here to use the watchdog to reset the system if the
34           kernel decompressor detects an error during decompression.
35
36 config S3C_BOOT_UART_FORCE_FIFO
37        bool "Force UART FIFO on during boot process"
38        default y
39        help
40          Say Y here to force the UART FIFOs on during the kernel
41          uncompressor
42
43
44 config S3C_LOWLEVEL_UART_PORT
45         int "S3C UART to use for low-level messages"
46         default 0
47         help
48           Choice of which UART port to use for the low-level messages,
49           such as the `Uncompressing...` at start time. The value of
50           this configuration should be between zero and two. The port
51           must have been initialised by the boot-loader before use.
52
53 # clock options
54
55 config SAMSUNG_CLKSRC
56         bool
57         help
58           Select the clock code for the clksrc implementation
59           used by newer systems such as the S3C64XX.
60
61 # options for IRQ support
62
63 config SAMSUNG_IRQ_VIC_TIMER
64        bool
65        help
66          Internal configuration to build the VIC timer interrupt code.
67
68 # options for gpio configuration support
69
70 config SAMSUNG_GPIOLIB_4BIT
71         bool
72         help
73           GPIOlib file contains the 4 bit modification functions for gpio
74           configuration. GPIOlib shall be compiled only for S3C64XX and S5P
75           series of processors.
76
77 config S3C_GPIO_CFG_S3C64XX
78         bool
79         help
80           Internal configuration to enable S3C64XX style GPIO configuration
81           functions.
82
83 config S5P_GPIO_DRVSTR
84         bool
85         help
86           Internal configuration to get and set correct GPIO driver strength
87           helper
88
89 config SAMSUNG_GPIO_EXTRA
90         int "Number of additional GPIO pins"
91         default 128 if SAMSUNG_GPIO_EXTRA128
92         default 64 if SAMSUNG_GPIO_EXTRA64
93         default 0
94         help
95           Use additional GPIO space in addition to the GPIO's the SOC
96           provides. This allows expanding the GPIO space for use with
97           GPIO expanders.
98
99 config SAMSUNG_GPIO_EXTRA64
100         bool
101
102 config SAMSUNG_GPIO_EXTRA128
103         bool
104
105 config S3C_GPIO_SPACE
106         int "Space between gpio banks"
107         default 0
108         help
109           Add a number of spare GPIO entries between each bank for debugging
110           purposes. This allows any problems where an counter overflows from
111           one bank to another to be caught, at the expense of using a little
112           more memory.
113
114 config S3C_GPIO_TRACK
115         bool
116         help
117           Internal configuration option to enable the s3c specific gpio
118           chip tracking if the platform requires it.
119
120 # ADC driver
121
122 config S3C_ADC
123         bool "ADC common driver support"
124         help
125           Core support for the ADC block found in the Samsung SoC systems
126           for drivers such as the touchscreen and hwmon to use to share
127           this resource.
128
129 # device definitions to compile in
130
131 config S3C_DEV_HSMMC
132         bool
133         help
134           Compile in platform device definitions for HSMMC code
135
136 config S3C_DEV_HSMMC1
137         bool
138         help
139           Compile in platform device definitions for HSMMC channel 1
140
141 config S3C_DEV_HSMMC2
142         bool
143         help
144           Compile in platform device definitions for HSMMC channel 2
145
146 config S3C_DEV_HSMMC3
147         bool
148         help
149           Compile in platform device definitions for HSMMC channel 3
150
151 config S3C_DEV_HWMON
152         bool
153         help
154             Compile in platform device definitions for HWMON
155
156 config S3C_DEV_I2C1
157         bool
158         help
159           Compile in platform device definitions for I2C channel 1
160
161 config S3C_DEV_I2C2
162         bool
163         help
164           Compile in platform device definitions for I2C channel 2
165
166 config S3C_DEV_I2C3
167         bool
168         help
169           Compile in platform device definition for I2C controller 3
170
171 config S3C_DEV_I2C4
172         bool
173         help
174           Compile in platform device definition for I2C controller 4
175
176 config S3C_DEV_I2C5
177         bool
178         help
179           Compile in platform device definition for I2C controller 5
180
181 config S3C_DEV_I2C6
182         bool
183         help
184           Compile in platform device definition for I2C controller 6
185
186 config S3C_DEV_I2C7
187         bool
188         help
189           Compile in platform device definition for I2C controller 7
190
191 config S3C_DEV_FB
192         bool
193         help
194           Compile in platform device definition for framebuffer
195
196 config S3C_DEV_USB_HOST
197         bool
198         help
199           Compile in platform device definition for USB host.
200
201 config S3C_DEV_USB_HSOTG
202         bool
203         help
204           Compile in platform device definition for USB high-speed OtG
205
206 config S3C_DEV_WDT
207         bool
208         default y if ARCH_S3C24XX
209         help
210           Complie in platform device definition for Watchdog Timer
211
212 config S3C_DEV_NAND
213         bool
214         help
215           Compile in platform device definition for NAND controller
216
217 config S3C_DEV_ONENAND
218         bool
219         help
220           Compile in platform device definition for OneNAND controller
221
222 config S3C_DEV_RTC
223         bool
224         help
225           Complie in platform device definition for RTC
226
227 config SAMSUNG_DEV_ADC
228         bool
229         help
230           Compile in platform device definition for ADC controller
231
232 config SAMSUNG_DEV_IDE
233         bool
234         help
235           Compile in platform device definitions for IDE
236
237 config S3C64XX_DEV_SPI0
238         bool
239         help
240           Compile in platform device definitions for S3C64XX's type
241           SPI controller 0
242
243 config S3C64XX_DEV_SPI1
244         bool
245         help
246           Compile in platform device definitions for S3C64XX's type
247           SPI controller 1
248
249 config S3C64XX_DEV_SPI2
250         bool
251         help
252           Compile in platform device definitions for S3C64XX's type
253           SPI controller 2
254
255 config SAMSUNG_DEV_TS
256         bool
257         help
258             Common in platform device definitions for touchscreen device
259
260 config SAMSUNG_DEV_KEYPAD
261         bool
262         help
263           Compile in platform device definitions for keypad
264
265 config SAMSUNG_DEV_PWM
266         bool
267         default y if ARCH_S3C24XX
268         help
269           Compile in platform device definition for PWM Timer
270
271 config SAMSUNG_DEV_BACKLIGHT
272         bool
273         depends on SAMSUNG_DEV_PWM
274         help
275           Compile in platform device definition LCD backlight with PWM Timer
276
277 config S3C24XX_PWM
278         bool "PWM device support"
279         select HAVE_PWM
280         help
281           Support for exporting the PWM timer blocks via the pwm device
282           system
283
284 # DMA
285
286 config S3C_DMA
287         bool
288         help
289           Internal configuration for S3C DMA core
290
291 config SAMSUNG_DMADEV
292         bool
293         select DMADEVICES
294         select PL330_DMA if (CPU_EXYNOS4210 || CPU_S5PV210 || CPU_S5PC100 || \
295                                         CPU_S5P6450 || CPU_S5P6440)
296         select ARM_AMBA
297         help
298           Use DMA device engine for PL330 DMAC.
299
300 comment "Power management"
301
302 config SAMSUNG_PM_DEBUG
303         bool "S3C2410 PM Suspend debug"
304         depends on PM
305         select DEBUG_LL
306         help
307           Say Y here if you want verbose debugging from the PM Suspend and
308           Resume code. See <file:Documentation/arm/Samsung-S3C24XX/Suspend.txt>
309           for more information.
310
311 config S3C_PM_DEBUG_LED_SMDK
312        bool "SMDK LED suspend/resume debugging"
313        depends on PM && (MACH_SMDK6410)
314        help
315          Say Y here to enable the use of the SMDK LEDs on the baseboard
316          for debugging of the state of the suspend and resume process.
317
318          Note, this currently only works for S3C64XX based SMDK boards.
319
320 config SAMSUNG_PM_CHECK
321         bool "S3C2410 PM Suspend Memory CRC"
322         depends on PM && CRC32
323         help
324           Enable the PM code's memory area checksum over sleep. This option
325           will generate CRCs of all blocks of memory, and store them before
326           going to sleep. The blocks are then checked on resume for any
327           errors.
328
329           Note, this can take several seconds depending on memory size
330           and CPU speed.
331
332           See <file:Documentation/arm/Samsung-S3C24XX/Suspend.txt>
333
334 config SAMSUNG_PM_CHECK_CHUNKSIZE
335         int "S3C2410 PM Suspend CRC Chunksize (KiB)"
336         depends on PM && SAMSUNG_PM_CHECK
337         default 64
338         help
339           Set the chunksize in Kilobytes of the CRC for checking memory
340           corruption over suspend and resume. A smaller value will mean that
341           the CRC data block will take more memory, but wil identify any
342           faults with better precision.
343
344           See <file:Documentation/arm/Samsung-S3C24XX/Suspend.txt>
345
346 config SAMSUNG_WAKEMASK
347         bool
348         depends on PM
349         help
350           Compile support for wakeup-mask controls found on the S3C6400
351           and above. This code allows a set of interrupt to wakeup-mask
352           mappings. See <plat/wakeup-mask.h>
353
354 comment "Power Domain"
355
356 config SAMSUNG_PD
357         bool "Samsung Power Domain"
358         depends on PM_RUNTIME
359         help
360           Say Y here if you want to control Power Domain by Runtime PM.
361
362 config DEBUG_S3C_UART
363         depends on PLAT_SAMSUNG
364         int
365         default "0" if DEBUG_S3C_UART0
366         default "1" if DEBUG_S3C_UART1
367         default "2" if DEBUG_S3C_UART2
368
369 endif