Merge branch 'devel-stable' into devel
[sfrench/cifs-2.6.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 ARCH_S3C2410 || ARCH_S3C24A0 || ARCH_S3C64XX
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_FB
184         bool
185         help
186           Compile in platform device definition for framebuffer
187
188 config S3C_DEV_USB_HOST
189         bool
190         help
191           Compile in platform device definition for USB host.
192
193 config S3C_DEV_USB_HSOTG
194         bool
195         help
196           Compile in platform device definition for USB high-speed OtG
197
198 config S3C_DEV_WDT
199         bool
200         default y if ARCH_S3C2410
201         help
202           Complie in platform device definition for Watchdog Timer
203
204 config S3C_DEV_NAND
205         bool
206         help
207           Compile in platform device definition for NAND controller
208
209 config S3C_DEV_ONENAND
210         bool
211         help
212           Compile in platform device definition for OneNAND controller
213
214 config S3C_DEV_RTC
215         bool
216         help
217           Complie in platform device definition for RTC
218
219 config SAMSUNG_DEV_ADC
220         bool
221         help
222           Compile in platform device definition for ADC controller
223
224 config SAMSUNG_DEV_IDE
225         bool
226         help
227           Compile in platform device definitions for IDE
228
229 config S3C64XX_DEV_SPI
230         bool
231         help
232           Compile in platform device definitions for S3C64XX's type
233           SPI controllers.
234
235 config SAMSUNG_DEV_TS
236         bool
237         help
238             Common in platform device definitions for touchscreen device
239
240 config SAMSUNG_DEV_KEYPAD
241         bool
242         help
243           Compile in platform device definitions for keypad
244
245 # DMA
246
247 config S3C_DMA
248         bool
249         help
250           Internal configuration for S3C DMA core
251
252 config S3C_PL330_DMA
253         bool
254         select PL330
255         help
256           S3C DMA API Driver for PL330 DMAC.
257
258 comment "Power management"
259
260 config SAMSUNG_PM_DEBUG
261         bool "S3C2410 PM Suspend debug"
262         depends on PM
263         help
264           Say Y here if you want verbose debugging from the PM Suspend and
265           Resume code. See <file:Documentation/arm/Samsung-S3C24XX/Suspend.txt>
266           for more information.
267
268 config S3C_PM_DEBUG_LED_SMDK
269        bool "SMDK LED suspend/resume debugging"
270        depends on PM && (MACH_SMDK6410)
271        help
272          Say Y here to enable the use of the SMDK LEDs on the baseboard
273          for debugging of the state of the suspend and resume process.
274
275          Note, this currently only works for S3C64XX based SMDK boards.
276
277 config SAMSUNG_PM_CHECK
278         bool "S3C2410 PM Suspend Memory CRC"
279         depends on PM && CRC32
280         help
281           Enable the PM code's memory area checksum over sleep. This option
282           will generate CRCs of all blocks of memory, and store them before
283           going to sleep. The blocks are then checked on resume for any
284           errors.
285
286           Note, this can take several seconds depending on memory size
287           and CPU speed.
288
289           See <file:Documentation/arm/Samsung-S3C24XX/Suspend.txt>
290
291 config SAMSUNG_PM_CHECK_CHUNKSIZE
292         int "S3C2410 PM Suspend CRC Chunksize (KiB)"
293         depends on PM && SAMSUNG_PM_CHECK
294         default 64
295         help
296           Set the chunksize in Kilobytes of the CRC for checking memory
297           corruption over suspend and resume. A smaller value will mean that
298           the CRC data block will take more memory, but wil identify any
299           faults with better precision.
300
301           See <file:Documentation/arm/Samsung-S3C24XX/Suspend.txt>
302
303 config SAMSUNG_WAKEMASK
304         bool
305         depends on PM
306         help
307           Compile support for wakeup-mask controls found on the S3C6400
308           and above. This code allows a set of interrupt to wakeup-mask
309           mappings. See <plat/wakeup-mask.h>
310
311 endif