Merge branch 'master' into for-next
[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_S3C2443
99         bool
100         select S3C_GPIO_PULL_UPDOWN
101         help
102           Internal configuration to enable the correct GPIO pull helper for S3C2443-style GPIO
103
104 config S3C_GPIO_PULL_DOWN
105         bool
106         help
107           Internal configuration to enable the correct GPIO pull helper
108
109 config S3C_GPIO_PULL_UP
110         bool
111         help
112           Internal configuration to enable the correct GPIO pull helper
113
114 config S5P_GPIO_DRVSTR
115         bool
116         help
117           Internal configuration to get and set correct GPIO driver strength
118           helper
119
120 config SAMSUNG_GPIO_EXTRA
121         int "Number of additional GPIO pins"
122         default 0
123         help
124           Use additional GPIO space in addition to the GPIO's the SOC
125           provides. This allows expanding the GPIO space for use with
126           GPIO expanders.
127
128 config S3C_GPIO_SPACE
129         int "Space between gpio banks"
130         default 0
131         help
132           Add a number of spare GPIO entries between each bank for debugging
133           purposes. This allows any problems where an counter overflows from
134           one bank to another to be caught, at the expense of using a little
135           more memory.
136
137 config S3C_GPIO_TRACK
138         bool
139         help
140           Internal configuration option to enable the s3c specific gpio
141           chip tracking if the platform requires it.
142
143 # ADC driver
144
145 config S3C_ADC
146         bool "ADC common driver support"
147         help
148           Core support for the ADC block found in the Samsung SoC systems
149           for drivers such as the touchscreen and hwmon to use to share
150           this resource.
151
152 # device definitions to compile in
153
154 config S3C_DEV_HSMMC
155         bool
156         help
157           Compile in platform device definitions for HSMMC code
158
159 config S3C_DEV_HSMMC1
160         bool
161         help
162           Compile in platform device definitions for HSMMC channel 1
163
164 config S3C_DEV_HSMMC2
165         bool
166         help
167           Compile in platform device definitions for HSMMC channel 2
168
169 config S3C_DEV_HSMMC3
170         bool
171         help
172           Compile in platform device definitions for HSMMC channel 3
173
174 config S3C_DEV_HWMON
175         bool
176         help
177             Compile in platform device definitions for HWMON
178
179 config S3C_DEV_I2C1
180         bool
181         help
182           Compile in platform device definitions for I2C channel 1
183
184 config S3C_DEV_I2C2
185         bool
186         help
187           Compile in platform device definitions for I2C channel 2
188
189 config S3C_DEV_I2C3
190         bool
191         help
192           Compile in platform device definition for I2C controller 3
193
194 config S3C_DEV_I2C4
195         bool
196         help
197           Compile in platform device definition for I2C controller 4
198
199 config S3C_DEV_I2C5
200         bool
201         help
202           Compile in platform device definition for I2C controller 5
203
204 config S3C_DEV_I2C6
205         bool
206         help
207           Compile in platform device definition for I2C controller 6
208
209 config S3C_DEV_I2C7
210         bool
211         help
212           Compile in platform device definition for I2C controller 7
213
214 config S3C_DEV_FB
215         bool
216         help
217           Compile in platform device definition for framebuffer
218
219 config S3C_DEV_USB_HOST
220         bool
221         help
222           Compile in platform device definition for USB host.
223
224 config S3C_DEV_USB_HSOTG
225         bool
226         help
227           Compile in platform device definition for USB high-speed OtG
228
229 config S3C_DEV_WDT
230         bool
231         default y if ARCH_S3C2410
232         help
233           Complie in platform device definition for Watchdog Timer
234
235 config S3C_DEV_NAND
236         bool
237         help
238           Compile in platform device definition for NAND controller
239
240 config S3C_DEV_ONENAND
241         bool
242         help
243           Compile in platform device definition for OneNAND controller
244
245 config S3C_DEV_RTC
246         bool
247         help
248           Complie in platform device definition for RTC
249
250 config SAMSUNG_DEV_ADC
251         bool
252         help
253           Compile in platform device definition for ADC controller
254
255 config SAMSUNG_DEV_IDE
256         bool
257         help
258           Compile in platform device definitions for IDE
259
260 config S3C64XX_DEV_SPI
261         bool
262         help
263           Compile in platform device definitions for S3C64XX's type
264           SPI controllers.
265
266 config SAMSUNG_DEV_TS
267         bool
268         help
269             Common in platform device definitions for touchscreen device
270
271 config SAMSUNG_DEV_KEYPAD
272         bool
273         help
274           Compile in platform device definitions for keypad
275
276 # DMA
277
278 config S3C_DMA
279         bool
280         help
281           Internal configuration for S3C DMA core
282
283 config S3C_PL330_DMA
284         bool
285         select PL330
286         help
287           S3C DMA API Driver for PL330 DMAC.
288
289 comment "Power management"
290
291 config SAMSUNG_PM_DEBUG
292         bool "S3C2410 PM Suspend debug"
293         depends on PM
294         help
295           Say Y here if you want verbose debugging from the PM Suspend and
296           Resume code. See <file:Documentation/arm/Samsung-S3C24XX/Suspend.txt>
297           for more information.
298
299 config S3C_PM_DEBUG_LED_SMDK
300        bool "SMDK LED suspend/resume debugging"
301        depends on PM && (MACH_SMDK6410)
302        help
303          Say Y here to enable the use of the SMDK LEDs on the baseboard
304          for debugging of the state of the suspend and resume process.
305
306          Note, this currently only works for S3C64XX based SMDK boards.
307
308 config SAMSUNG_PM_CHECK
309         bool "S3C2410 PM Suspend Memory CRC"
310         depends on PM && CRC32
311         help
312           Enable the PM code's memory area checksum over sleep. This option
313           will generate CRCs of all blocks of memory, and store them before
314           going to sleep. The blocks are then checked on resume for any
315           errors.
316
317           Note, this can take several seconds depending on memory size
318           and CPU speed.
319
320           See <file:Documentation/arm/Samsung-S3C24XX/Suspend.txt>
321
322 config SAMSUNG_PM_CHECK_CHUNKSIZE
323         int "S3C2410 PM Suspend CRC Chunksize (KiB)"
324         depends on PM && SAMSUNG_PM_CHECK
325         default 64
326         help
327           Set the chunksize in Kilobytes of the CRC for checking memory
328           corruption over suspend and resume. A smaller value will mean that
329           the CRC data block will take more memory, but wil identify any
330           faults with better precision.
331
332           See <file:Documentation/arm/Samsung-S3C24XX/Suspend.txt>
333
334 config SAMSUNG_WAKEMASK
335         bool
336         depends on PM
337         help
338           Compile support for wakeup-mask controls found on the S3C6400
339           and above. This code allows a set of interrupt to wakeup-mask
340           mappings. See <plat/wakeup-mask.h>
341
342 comment "Power Domain"
343
344 config SAMSUNG_PD
345         bool "Samsung Power Domain"
346         depends on PM_RUNTIME
347         help
348           Say Y here if you want to control Power Domain by Runtime PM.
349
350 endif