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