ARM: SAMSUNG: Update to use PL330-DMA driver
[linux-2.6/btrfs-unstable.git] / arch / arm / plat-samsung / Kconfig
blobe6f01ab8620868588fc1ef99618108e793626924
1 # arch/arm/plat-samsung/Kconfig
3 # Copyright 2009 Simtec Electronics
5 # Licensed under GPLv2
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
16 if PLAT_SAMSUNG
18 # boot configurations
20 comment "Boot options"
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.
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.
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
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.
53 # clock options
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.
61 # options for IRQ support
63 config SAMSUNG_IRQ_VIC_TIMER
64        bool
65        help
66          Internal configuration to build the VIC timer interrupt code.
68 config SAMSUNG_IRQ_UART
69        bool
70        help
71          Internal configuration to build the IRQ UART demux code.
73 # options for gpio configuration support
75 config SAMSUNG_GPIOLIB_4BIT
76         bool
77         help
78           GPIOlib file contains the 4 bit modification functions for gpio
79           configuration. GPIOlib shall be compiled only for S3C64XX and S5P
80           series of processors.
82 config S3C_GPIO_CFG_S3C24XX
83         bool
84         help
85           Internal configuration to enable S3C24XX style GPIO configuration
86           functions.
88 config S3C_GPIO_CFG_S3C64XX
89         bool
90         help
91           Internal configuration to enable S3C64XX style GPIO configuration
92           functions.
94 config S3C_GPIO_PULL_UPDOWN
95         bool
96         help
97           Internal configuration to enable the correct GPIO pull helper
99 config S3C_GPIO_PULL_S3C2443
100         bool
101         select S3C_GPIO_PULL_UPDOWN
102         help
103           Internal configuration to enable the correct GPIO pull helper for S3C2443-style GPIO
105 config S3C_GPIO_PULL_DOWN
106         bool
107         help
108           Internal configuration to enable the correct GPIO pull helper
110 config S3C_GPIO_PULL_UP
111         bool
112         help
113           Internal configuration to enable the correct GPIO pull helper
115 config S5P_GPIO_DRVSTR
116         bool
117         help
118           Internal configuration to get and set correct GPIO driver strength
119           helper
121 config SAMSUNG_GPIO_EXTRA
122         int "Number of additional GPIO pins"
123         default 0
124         help
125           Use additional GPIO space in addition to the GPIO's the SOC
126           provides. This allows expanding the GPIO space for use with
127           GPIO expanders.
129 config S3C_GPIO_SPACE
130         int "Space between gpio banks"
131         default 0
132         help
133           Add a number of spare GPIO entries between each bank for debugging
134           purposes. This allows any problems where an counter overflows from
135           one bank to another to be caught, at the expense of using a little
136           more memory.
138 config S3C_GPIO_TRACK
139         bool
140         help
141           Internal configuration option to enable the s3c specific gpio
142           chip tracking if the platform requires it.
144 # ADC driver
146 config S3C_ADC
147         bool "ADC common driver support"
148         help
149           Core support for the ADC block found in the Samsung SoC systems
150           for drivers such as the touchscreen and hwmon to use to share
151           this resource.
153 # device definitions to compile in
155 config S3C_DEV_HSMMC
156         bool
157         help
158           Compile in platform device definitions for HSMMC code
160 config S3C_DEV_HSMMC1
161         bool
162         help
163           Compile in platform device definitions for HSMMC channel 1
165 config S3C_DEV_HSMMC2
166         bool
167         help
168           Compile in platform device definitions for HSMMC channel 2
170 config S3C_DEV_HSMMC3
171         bool
172         help
173           Compile in platform device definitions for HSMMC channel 3
175 config S3C_DEV_HWMON
176         bool
177         help
178             Compile in platform device definitions for HWMON
180 config S3C_DEV_I2C1
181         bool
182         help
183           Compile in platform device definitions for I2C channel 1
185 config S3C_DEV_I2C2
186         bool
187         help
188           Compile in platform device definitions for I2C channel 2
190 config S3C_DEV_I2C3
191         bool
192         help
193           Compile in platform device definition for I2C controller 3
195 config S3C_DEV_I2C4
196         bool
197         help
198           Compile in platform device definition for I2C controller 4
200 config S3C_DEV_I2C5
201         bool
202         help
203           Compile in platform device definition for I2C controller 5
205 config S3C_DEV_I2C6
206         bool
207         help
208           Compile in platform device definition for I2C controller 6
210 config S3C_DEV_I2C7
211         bool
212         help
213           Compile in platform device definition for I2C controller 7
215 config S3C_DEV_FB
216         bool
217         help
218           Compile in platform device definition for framebuffer
220 config S3C_DEV_USB_HOST
221         bool
222         help
223           Compile in platform device definition for USB host.
225 config S3C_DEV_USB_HSOTG
226         bool
227         help
228           Compile in platform device definition for USB high-speed OtG
230 config S3C_DEV_WDT
231         bool
232         default y if ARCH_S3C2410
233         help
234           Complie in platform device definition for Watchdog Timer
236 config S3C_DEV_NAND
237         bool
238         help
239           Compile in platform device definition for NAND controller
241 config S3C_DEV_ONENAND
242         bool
243         help
244           Compile in platform device definition for OneNAND controller
246 config S3C_DEV_RTC
247         bool
248         help
249           Complie in platform device definition for RTC
251 config SAMSUNG_DEV_ADC
252         bool
253         help
254           Compile in platform device definition for ADC controller
256 config SAMSUNG_DEV_IDE
257         bool
258         help
259           Compile in platform device definitions for IDE
261 config S3C64XX_DEV_SPI
262         bool
263         help
264           Compile in platform device definitions for S3C64XX's type
265           SPI controllers.
267 config SAMSUNG_DEV_TS
268         bool
269         help
270             Common in platform device definitions for touchscreen device
272 config SAMSUNG_DEV_KEYPAD
273         bool
274         help
275           Compile in platform device definitions for keypad
277 config SAMSUNG_DEV_PWM
278         bool
279         default y if ARCH_S3C2410
280         help
281           Compile in platform device definition for PWM Timer
283 config SAMSUNG_DEV_BACKLIGHT
284         bool
285         depends on SAMSUNG_DEV_PWM
286         help
287           Compile in platform device definition LCD backlight with PWM Timer
289 config S3C24XX_PWM
290         bool "PWM device support"
291         select HAVE_PWM
292         help
293           Support for exporting the PWM timer blocks via the pwm device
294           system
296 # DMA
298 config S3C_DMA
299         bool
300         help
301           Internal configuration for S3C DMA core
303 config S3C_PL330_DMA
304         bool
305         select PL330
306         help
307           S3C DMA API Driver for PL330 DMAC.
309 config SAMSUNG_DMADEV
310         bool
311         select DMADEVICES
312         select PL330_DMA if (CPU_EXYNOS4210 || CPU_S5PV210 || CPU_S5PC100 || \
313                                         CPU_S5P6450 || CPU_S5P6440)
314         select ARM_AMBA
315         help
316           Use DMA device engine for PL330 DMAC.
318 comment "Power management"
320 config SAMSUNG_PM_DEBUG
321         bool "S3C2410 PM Suspend debug"
322         depends on PM
323         help
324           Say Y here if you want verbose debugging from the PM Suspend and
325           Resume code. See <file:Documentation/arm/Samsung-S3C24XX/Suspend.txt>
326           for more information.
328 config S3C_PM_DEBUG_LED_SMDK
329        bool "SMDK LED suspend/resume debugging"
330        depends on PM && (MACH_SMDK6410)
331        help
332          Say Y here to enable the use of the SMDK LEDs on the baseboard
333          for debugging of the state of the suspend and resume process.
335          Note, this currently only works for S3C64XX based SMDK boards.
337 config SAMSUNG_PM_CHECK
338         bool "S3C2410 PM Suspend Memory CRC"
339         depends on PM && CRC32
340         help
341           Enable the PM code's memory area checksum over sleep. This option
342           will generate CRCs of all blocks of memory, and store them before
343           going to sleep. The blocks are then checked on resume for any
344           errors.
346           Note, this can take several seconds depending on memory size
347           and CPU speed.
349           See <file:Documentation/arm/Samsung-S3C24XX/Suspend.txt>
351 config SAMSUNG_PM_CHECK_CHUNKSIZE
352         int "S3C2410 PM Suspend CRC Chunksize (KiB)"
353         depends on PM && SAMSUNG_PM_CHECK
354         default 64
355         help
356           Set the chunksize in Kilobytes of the CRC for checking memory
357           corruption over suspend and resume. A smaller value will mean that
358           the CRC data block will take more memory, but wil identify any
359           faults with better precision.
361           See <file:Documentation/arm/Samsung-S3C24XX/Suspend.txt>
363 config SAMSUNG_WAKEMASK
364         bool
365         depends on PM
366         help
367           Compile support for wakeup-mask controls found on the S3C6400
368           and above. This code allows a set of interrupt to wakeup-mask
369           mappings. See <plat/wakeup-mask.h>
371 comment "Power Domain"
373 config SAMSUNG_PD
374         bool "Samsung Power Domain"
375         depends on PM_RUNTIME
376         help
377           Say Y here if you want to control Power Domain by Runtime PM.
379 endif