[ARM] 4156/1: S3C24XX: Add CONFIG_S3C2410_GPIO
[linux-2.6-block.git] / arch / arm / mach-s3c2410 / Kconfig
1 if ARCH_S3C2410
2
3 menu "S3C24XX Implementations"
4
5 config MACH_AML_M5900
6         bool "AML M5900 Series"
7         select CPU_S3C2410
8         select PM_SIMTEC if PM
9         help
10            Say Y here if you are using the American Microsystems M5900 Series
11            <http://www.amltd.com>
12
13 config MACH_ANUBIS
14         bool "Simtec Electronics ANUBIS"
15         select CPU_S3C2440
16         select PM_SIMTEC if PM
17         help
18           Say Y here if you are using the Simtec Electronics ANUBIS
19           development system
20
21 config MACH_OSIRIS
22         bool "Simtec IM2440D20 (OSIRIS) module"
23         select CPU_S3C2440
24         select PM_SIMTEC if PM
25         help
26           Say Y here if you are using the Simtec IM2440D20 module, also
27           known as the Osiris.
28
29 config ARCH_BAST
30         bool "Simtec Electronics BAST (EB2410ITX)"
31         select CPU_S3C2410
32         select PM_SIMTEC if PM
33         select ISA
34         help
35           Say Y here if you are using the Simtec Electronics EB2410ITX
36           development board (also known as BAST)
37
38           Product page: <http://www.simtec.co.uk/products/EB2410ITX/>.
39
40 config BAST_PC104_IRQ
41         bool "BAST PC104 IRQ support"
42         depends on ARCH_BAST
43         default y
44         help
45           Say Y here to enable the PC104 IRQ routing on the
46           Simtec BAST (EB2410ITX)
47
48 config PM_H1940
49         bool
50         help
51           Internal node for H1940 and related PM
52
53 config ARCH_H1940
54         bool "IPAQ H1940"
55         select CPU_S3C2410
56         select PM_H1940 if PM
57         help
58           Say Y here if you are using the HP IPAQ H1940
59
60           <http://www.handhelds.org/projects/h1940.html>.
61
62 config MACH_N30
63         bool "Acer N30"
64         select CPU_S3C2410
65         help
66           Say Y here if you are using the Acer N30
67
68           <http://zoo.weinigel.se/n30>.
69
70 config MACH_SMDK
71         bool
72         help
73           Common machine code for SMDK2410 and SMDK2440
74
75 config ARCH_SMDK2410
76         bool "SMDK2410/A9M2410"
77         select CPU_S3C2410
78         select MACH_SMDK
79         help
80            Say Y here if you are using the SMDK2410 or the derived module A9M2410
81            <http://www.fsforth.de>
82
83 config ARCH_S3C2440
84         bool "SMDK2440"
85         select CPU_S3C2440
86         select MACH_SMDK
87         help
88           Say Y here if you are using the SMDK2440.
89
90 config SMDK2440_CPU2440
91         bool "SMDK2440 with S3C2440 CPU module"
92         depends on ARCH_S3C2440
93         default y if ARCH_S3C2440
94         select CPU_S3C2440
95
96 config SMDK2440_CPU2442
97         bool "SMDM2440 with S3C2442 CPU module"
98         depends on ARCH_S3C2440
99         select CPU_S3C2442
100
101 config MACH_S3C2413
102         bool
103         help
104           Internal node for S3C2413 version of SMDK2413, so that
105           machine_is_s3c2413() will work when MACH_SMDK2413 is
106           selected
107
108 config MACH_SMDK2413
109         bool "SMDK2413"
110         select CPU_S3C2412
111         select MACH_S3C2413
112         select MACH_SMDK
113         help
114           Say Y here if you are using an SMDK2413
115
116 config MACH_VR1000
117         bool "Thorcom VR1000"
118         select PM_SIMTEC if PM
119         select CPU_S3C2410
120         help
121           Say Y here if you are using the Thorcom VR1000 board.
122
123           This linux port is currently being maintained by Simtec, on behalf
124           of Thorcom. Any queries, please contact Thorcom first.
125
126 config MACH_RX3715
127         bool "HP iPAQ rx3715"
128         select CPU_S3C2440
129         select PM_H1940 if PM
130         help
131           Say Y here if you are using the HP iPAQ rx3715.
132
133           See <http://www.handhelds.org/projects/rx3715.html> for more
134           information on this project
135
136 config MACH_OTOM
137         bool "NexVision OTOM Board"
138         select CPU_S3C2410
139         help
140           Say Y here if you are using the Nex Vision OTOM board
141
142 config MACH_NEXCODER_2440
143         bool "NexVision NEXCODER 2440 Light Board"
144         select CPU_S3C2440
145         help
146           Say Y here if you are using the Nex Vision NEXCODER 2440 Light Board
147
148 config MACH_VSTMS
149         bool "VMSTMS"
150         select CPU_S3C2412
151         help
152           Say Y here if you are using an VSTMS board
153
154 endmenu
155
156 config S3C2410_CLOCK
157         bool
158         help
159           Clock code for the S3C2410, and similar processors
160
161 config S3C2410_GPIO
162         bool
163         help
164           GPIO code for S3C2410 and similar processors
165
166 config S3C2410_PM
167         bool
168         help
169           Power Management code common to S3C2410 and better
170
171 config CPU_S3C2410_DMA
172         bool
173         depends on S3C2410_DMA && (CPU_S3C2410 || CPU_S3C2442)
174         default y if CPU_S3C2410 || CPU_S3C2442
175         help
176           DMA device selection for S3C2410 and compatible CPUs
177
178 config CPU_S3C2410
179         bool
180         depends on ARCH_S3C2410
181         select S3C2410_CLOCK
182         select S3C2410_GPIO
183         select S3C2410_PM if PM
184         help
185           Support for S3C2410 and S3C2410A family from the S3C24XX line
186           of Samsung Mobile CPUs.
187
188 # internal node to signify if we are only dealing with an S3C2412
189
190 config CPU_S3C2412_ONLY
191         bool
192         depends on ARCH_S3C2410 && !CPU_S3C2400 && !CPU_S3C2410 && \
193                    !CPU_S3C2440 && !CPU_S3C2442 && CPU_S3C2412
194         default y if CPU_S3C2412
195
196 config S3C2412_PM
197         bool
198         help
199           Internal config node to apply S3C2412 power management
200
201 config S3C2412_DMA
202         bool
203         depends on CPU_S3C2412
204         help
205           Internal config node for S3C2412 DMA support
206
207 config CPU_S3C2412
208         bool
209         depends on ARCH_S3C2410
210         select S3C2412_PM if PM
211         select S3C2412_DMA if S3C2410_DMA
212         help
213           Support for the S3C2412 and S3C2413 SoCs from the S3C24XX line
214
215 config CPU_S3C244X
216         bool
217         depends on ARCH_S3C2410 && (CPU_S3C2440 || CPU_S3C2442)
218         help
219           Support for S3C2440 and S3C2442 Samsung Mobile CPU based systems.
220
221 config S3C2440_DMA
222         bool
223         depends on ARCH_S3C2410 && CPU_S3C24405B
224         help
225           Support for S3C2440 specific DMA code5A
226
227 config CPU_S3C2440
228         bool
229         depends on ARCH_S3C2410
230         select S3C2410_CLOCK
231         select S3C2410_PM if PM
232         select S3C2410_GPIO
233         select S3C2440_DMA if S3C2410_DMA
234         select CPU_S3C244X
235         help
236           Support for S3C2440 Samsung Mobile CPU based systems.
237
238 config CPU_S3C2442
239         bool
240         depends on ARCH_S3C2420
241         select S3C2410_CLOCK
242         select S3C2410_GPIO
243         select S3C2410_PM if PM
244         select CPU_S3C244X
245         help
246           Support for S3C2442 Samsung Mobile CPU based systems.
247
248 comment "S3C2410 Boot"
249
250 config S3C2410_BOOT_WATCHDOG
251         bool "S3C2410 Initialisation watchdog"
252         depends on ARCH_S3C2410 && S3C2410_WATCHDOG
253         help
254           Say y to enable the watchdog during the kernel decompression
255           stage. If the kernel fails to uncompress, then the watchdog
256           will trigger a reset and the system should restart.
257
258           Although this uses the same hardware unit as the kernel watchdog
259           driver, it is not a replacement for it. If you use this option,
260           you will have to use the watchdg driver to either stop the timeout
261           or restart it. If you do not, then your kernel will reboot after
262           startup.
263
264           The driver uses a fixed timeout value, so the exact time till the
265           system resets depends on the value of PCLK. The timeout on an
266           200MHz s3c2410 should be about 30 seconds.
267
268 config S3C2410_BOOT_ERROR_RESET
269         bool "S3C2410 Reboot on decompression error"
270         depends on ARCH_S3C2410
271         help
272           Say y here to use the watchdog to reset the system if the
273           kernel decompressor detects an error during decompression.
274
275
276 comment "S3C2410 Setup"
277
278 config S3C2410_DMA
279         bool "S3C2410 DMA support"
280         depends on ARCH_S3C2410
281         help
282           S3C2410 DMA support. This is needed for drivers like sound which
283           use the S3C2410's DMA system to move data to and from the
284           peripheral blocks.
285
286 config S3C2410_DMA_DEBUG
287         bool "S3C2410 DMA support debug"
288         depends on ARCH_S3C2410 && S3C2410_DMA
289         help
290           Enable debugging output for the DMA code. This option sends info
291           to the kernel log, at priority KERN_DEBUG.
292
293           Note, it is easy to create and fill the log buffer in a small
294           amount of time, as well as using an significant percentage of
295           the CPU time doing so.
296
297 config S3C2410_PM_DEBUG
298         bool "S3C2410 PM Suspend debug"
299         depends on ARCH_S3C2410 && PM
300         help
301           Say Y here if you want verbose debugging from the PM Suspend and
302           Resume code. See <file:Documentation/arm/Samsung-S3C24XX/Suspend.txt>
303           for more information.
304
305 config S3C2410_PM_CHECK
306         bool "S3C2410 PM Suspend Memory CRC"
307         depends on ARCH_S3C2410 && PM && CRC32
308         help
309           Enable the PM code's memory area checksum over sleep. This option
310           will generate CRCs of all blocks of memory, and store them before
311           going to sleep. The blocks are then checked on resume for any
312           errors.
313
314 config S3C2410_PM_CHECK_CHUNKSIZE
315         int "S3C2410 PM Suspend CRC Chunksize (KiB)"
316         depends on ARCH_S3C2410 && PM && S3C2410_PM_CHECK
317         default 64
318         help
319           Set the chunksize in Kilobytes of the CRC for checking memory
320           corruption over suspend and resume. A smaller value will mean that
321           the CRC data block will take more memory, but wil identify any
322           faults with better precision.
323
324 config PM_SIMTEC
325         bool
326         help
327           Common power management code for systems that are
328           compatible with the Simtec style of power management
329
330 config S3C2410_LOWLEVEL_UART_PORT
331         int "S3C2410 UART to use for low-level messages"
332         default 0
333         help
334           Choice of which UART port to use for the low-level messages,
335           such as the `Uncompressing...` at start time. The value of
336           this configuration should be between zero and two. The port
337           must have been initialised by the boot-loader before use.
338
339           Note, this does not affect the port used by the debug messages,
340           which is a separate configuration.
341
342 endif