Linux-2.6.12-rc2
[linux-2.6.git] / arch / cris / arch-v10 / drivers / Kconfig
1 config ETRAX_ETHERNET
2         bool "Ethernet support"
3         depends on ETRAX_ARCH_V10
4         help
5           This option enables the ETRAX 100LX built-in 10/100Mbit Ethernet
6           controller.
7
8 # this is just so that the user does not have to go into the
9 # normal ethernet driver section just to enable ethernetworking
10 config NET_ETHERNET
11         bool
12         depends on ETRAX_ETHERNET
13         default y
14
15 choice
16         prompt "Network LED behavior"
17         depends on ETRAX_ETHERNET
18         default ETRAX_NETWORK_LED_ON_WHEN_ACTIVITY
19
20 config ETRAX_NETWORK_LED_ON_WHEN_LINK
21         bool "LED_on_when_link"
22         help
23           Selecting LED_on_when_link will light the LED when there is a 
24           connection and will flash off when there is activity. 
25
26           Selecting LED_on_when_activity will light the LED only when 
27           there is activity.
28
29           This setting will also affect the behaviour of other activity LEDs 
30           e.g. Bluetooth. 
31
32 config ETRAX_NETWORK_LED_ON_WHEN_ACTIVITY
33         bool "LED_on_when_activity"
34         help
35           Selecting LED_on_when_link will light the LED when there is a 
36           connection and will flash off when there is activity. 
37
38           Selecting LED_on_when_activity will light the LED only when 
39           there is activity.
40
41           This setting will also affect the behaviour of other activity LEDs 
42           e.g. Bluetooth. 
43
44 endchoice
45
46 config ETRAX_SERIAL
47         bool "Serial-port support"
48         depends on ETRAX_ARCH_V10
49         help
50           Enables the ETRAX 100 serial driver for ser0 (ttyS0)
51           You probably want this enabled.
52
53 config ETRAX_SERIAL_FAST_TIMER
54         bool "Use fast timers for serial DMA flush (experimental)"
55         depends on ETRAX_SERIAL
56         help
57           Select this to have the serial DMAs flushed at a higher rate than
58           normally, possible by using the fast timer API, the timeout is
59           approx. 4 character times.
60           If unsure, say N.
61
62 config ETRAX_SERIAL_FLUSH_DMA_FAST
63         bool "Fast serial port DMA flush"
64         depends on ETRAX_SERIAL && !ETRAX_SERIAL_FAST_TIMER
65         help
66           Select this to have the serial DMAs flushed at a higher rate than
67           normally possible through a fast timer interrupt (currently at
68           15360 Hz).
69           If unsure, say N.
70
71 config ETRAX_SERIAL_RX_TIMEOUT_TICKS
72         int "Receive flush timeout (ticks) "
73         depends on ETRAX_SERIAL && !ETRAX_SERIAL_FAST_TIMER && !ETRAX_SERIAL_FLUSH_DMA_FAST
74         default "5"
75         help
76           Number of timer ticks between flush of receive fifo (1 tick = 10ms).
77           Try 0-3 for low latency applications.  Approx 5 for high load
78           applications (e.g. PPP).  Maybe this should be more adaptive some
79           day...
80
81 config ETRAX_SERIAL_PORT0
82         bool "Serial port 0 enabled"
83         depends on ETRAX_SERIAL
84         help
85           Enables the ETRAX 100 serial driver for ser0 (ttyS0)
86           Normally you want this on, unless you use external DMA 1 that uses
87           the same DMA channels.
88
89 choice
90         prompt "Ser0 DMA out assignment"
91         depends on ETRAX_SERIAL_PORT0
92         default ETRAX_SERIAL_PORT0_DMA6_OUT
93
94 config CONFIG_ETRAX_SERIAL_PORT0_NO_DMA_OUT
95        bool "No DMA out"
96
97 config CONFIG_ETRAX_SERIAL_PORT0_DMA6_OUT
98        bool "DMA 6"
99
100 endchoice
101
102 choice
103         prompt "Ser0 DMA in assignment"
104         depends on ETRAX_SERIAL_PORT0
105         default ETRAX_SERIAL_PORT0_DMA7_IN
106
107 config CONFIG_ETRAX_SERIAL_PORT0_NO_DMA_IN
108        bool "No DMA in"
109
110 config CONFIG_ETRAX_SERIAL_PORT0_DMA7_IN
111        bool "DMA 7"
112
113 endchoice
114
115 choice
116         prompt "Ser0 DTR, RI, DSR and CD assignment"
117         depends on ETRAX_SERIAL_PORT0
118         default ETRAX_SER0_DTR_RI_DSR_CD_ON_NONE
119
120 config ETRAX_SER0_DTR_RI_DSR_CD_ON_NONE
121         bool "No_DTR_RI_DSR_CD"
122
123 config ETRAX_SER0_DTR_RI_DSR_CD_ON_PA
124         bool "DTR_RI_DSR_CD_on_PA"
125
126 config ETRAX_SER0_DTR_RI_DSR_CD_ON_PB
127         bool "DTR_RI_DSR_CD_on_PB"
128         help
129           Enables the status and control signals DTR, RI, DSR and CD on PB for
130           ser0.
131
132 config ETRAX_SER0_DTR_RI_DSR_CD_MIXED
133         bool "DTR_RI_DSR_CD_mixed_on_PA_and_PB"
134
135 endchoice
136
137 config ETRAX_SER0_DTR_ON_PA_BIT
138         int "Ser0 DTR on PA bit (-1 = not used)" if ETRAX_SER0_DTR_RI_DSR_CD_ON_PA || ETRAX_SER0_DTR_RI_DSR_CD_MIXED
139         depends on ETRAX_SERIAL_PORT0
140         default "-1" if !ETRAX_SER0_DTR_RI_DSR_CD_ON_PA && !ETRAX_SER0_DTR_RI_DSR_CD_MIXED
141         default "4" if ETRAX_SER0_DTR_RI_DSR_CD_ON_PA || ETRAX_SER0_DTR_RI_DSR_CD_MIXED
142
143 config ETRAX_SER0_RI_ON_PA_BIT
144         int "Ser0 RI  on PA bit (-1 = not used)" if ETRAX_SER0_DTR_RI_DSR_CD_ON_PA || ETRAX_SER0_DTR_RI_DSR_CD_MIXED
145         depends on ETRAX_SERIAL_PORT0
146         default "-1" if !ETRAX_SER0_DTR_RI_DSR_CD_ON_PA && !ETRAX_SER0_DTR_RI_DSR_CD_MIXED
147         default "5" if ETRAX_SER0_DTR_RI_DSR_CD_ON_PA || ETRAX_SER0_DTR_RI_DSR_CD_MIXED
148
149 config ETRAX_SER0_DSR_ON_PA_BIT
150         int "Ser0 DSR on PA bit (-1 = not used)" if ETRAX_SER0_DTR_RI_DSR_CD_ON_PA || ETRAX_SER0_DTR_RI_DSR_CD_MIXED
151         depends on ETRAX_SERIAL_PORT0
152         default "-1" if !ETRAX_SER0_DTR_RI_DSR_CD_ON_PA && !ETRAX_SER0_DTR_RI_DSR_CD_MIXED
153         default "6" if ETRAX_SER0_DTR_RI_DSR_CD_ON_PA || ETRAX_SER0_DTR_RI_DSR_CD_MIXED
154
155 config ETRAX_SER0_CD_ON_PA_BIT
156         int "Ser0 CD  on PA bit (-1 = not used)" if ETRAX_SER0_DTR_RI_DSR_CD_ON_PA || ETRAX_SER0_DTR_RI_DSR_CD_MIXED
157         depends on ETRAX_SERIAL_PORT0
158         default "-1" if !ETRAX_SER0_DTR_RI_DSR_CD_ON_PA && !ETRAX_SER0_DTR_RI_DSR_CD_MIXED
159         default "7" if ETRAX_SER0_DTR_RI_DSR_CD_ON_PA || ETRAX_SER0_DTR_RI_DSR_CD_MIXED
160
161 config ETRAX_SER0_DTR_ON_PB_BIT
162         int "Ser0 DTR on PB bit (-1 = not used)" if ETRAX_SER0_DTR_RI_DSR_CD_ON_PB || ETRAX_SER0_DTR_RI_DSR_CD_MIXED
163         depends on ETRAX_SERIAL_PORT0
164         default "-1" if !ETRAX_SER0_DTR_RI_DSR_CD_ON_PB && !ETRAX_SER0_DTR_RI_DSR_CD_MIXED
165         default "4" if ETRAX_SER0_DTR_RI_DSR_CD_ON_PB || ETRAX_SER0_DTR_RI_DSR_CD_MIXED
166         help
167           Specify the pin of the PB port to carry the DTR signal for serial
168           port 0.
169
170 config ETRAX_SER0_RI_ON_PB_BIT
171         int "Ser0 RI  on PB bit (-1 = not used)" if ETRAX_SER0_DTR_RI_DSR_CD_ON_PB || ETRAX_SER0_DTR_RI_DSR_CD_MIXED
172         depends on ETRAX_SERIAL_PORT0
173         default "-1" if !ETRAX_SER0_DTR_RI_DSR_CD_ON_PB && !ETRAX_SER0_DTR_RI_DSR_CD_MIXED
174         default "5" if ETRAX_SER0_DTR_RI_DSR_CD_ON_PB || ETRAX_SER0_DTR_RI_DSR_CD_MIXED
175         help
176           Specify the pin of the PB port to carry the RI signal for serial
177           port 0.
178
179 config ETRAX_SER0_DSR_ON_PB_BIT
180         int "Ser0 DSR on PB bit (-1 = not used)" if ETRAX_SER0_DTR_RI_DSR_CD_ON_PB || ETRAX_SER0_DTR_RI_DSR_CD_MIXED
181         depends on ETRAX_SERIAL_PORT0
182         default "-1" if !ETRAX_SER0_DTR_RI_DSR_CD_ON_PB && !ETRAX_SER0_DTR_RI_DSR_CD_MIXED
183         default "6" if ETRAX_SER0_DTR_RI_DSR_CD_ON_PB || ETRAX_SER0_DTR_RI_DSR_CD_MIXED
184         help
185           Specify the pin of the PB port to carry the DSR signal for serial
186           port 0.
187
188 config ETRAX_SER0_CD_ON_PB_BIT
189         int "Ser0 CD  on PB bit (-1 = not used)" if ETRAX_SER0_DTR_RI_DSR_CD_ON_PB || ETRAX_SER0_DTR_RI_DSR_CD_MIXED
190         depends on ETRAX_SERIAL_PORT0
191         default "-1" if !ETRAX_SER0_DTR_RI_DSR_CD_ON_PB && !ETRAX_SER0_DTR_RI_DSR_CD_MIXED
192         default "7" if ETRAX_SER0_DTR_RI_DSR_CD_ON_PB || ETRAX_SER0_DTR_RI_DSR_CD_MIXED
193         help
194           Specify the pin of the PB port to carry the CD signal for serial
195           port 0.
196
197 config ETRAX_SERIAL_PORT1
198         bool "Serial port 1 enabled"
199         depends on ETRAX_SERIAL
200         help
201           Enables the ETRAX 100 serial driver for ser1 (ttyS1).
202
203 choice
204         prompt "Ser1 DMA out assignment"
205         depends on ETRAX_SERIAL_PORT1
206         default ETRAX_SERIAL_PORT1_DMA8_OUT
207
208 config CONFIG_ETRAX_SERIAL_PORT1_NO_DMA_OUT
209        bool "No DMA out"
210
211 config CONFIG_ETRAX_SERIAL_PORT1_DMA8_OUT
212        bool "DMA 8"
213
214 endchoice
215
216 choice
217         prompt "Ser1 DMA in assignment"
218         depends on ETRAX_SERIAL_PORT1
219         default ETRAX_SERIAL_PORT1_DMA9_IN
220
221 config CONFIG_ETRAX_SERIAL_PORT1_NO_DMA_IN
222        bool "No DMA in"
223
224 config CONFIG_ETRAX_SERIAL_PORT1_DMA9_IN
225        bool "DMA 9"
226
227 endchoice
228
229 choice
230         prompt "Ser1 DTR, RI, DSR and CD assignment"
231         depends on ETRAX_SERIAL_PORT1
232         default ETRAX_SER1_DTR_RI_DSR_CD_ON_NONE
233
234 config ETRAX_SER1_DTR_RI_DSR_CD_ON_NONE
235         bool "No_DTR_RI_DSR_CD"
236
237 config ETRAX_SER1_DTR_RI_DSR_CD_ON_PA
238         bool "DTR_RI_DSR_CD_on_PA"
239
240 config ETRAX_SER1_DTR_RI_DSR_CD_ON_PB
241         bool "DTR_RI_DSR_CD_on_PB"
242         help
243           Enables the status and control signals DTR, RI, DSR and CD on PB for
244           ser1.
245
246 config ETRAX_SER1_DTR_RI_DSR_CD_MIXED
247         bool "DTR_RI_DSR_CD_mixed_on_PA_and_PB"
248
249 endchoice
250
251 config ETRAX_SER1_DTR_ON_PA_BIT
252         int "Ser1 DTR on PA bit (-1 = not used)" if ETRAX_SER1_DTR_RI_DSR_CD_ON_PA || ETRAX_SER1_DTR_RI_DSR_CD_MIXED
253         depends on ETRAX_SERIAL_PORT1
254         default "-1" if !ETRAX_SER1_DTR_RI_DSR_CD_ON_PA && !ETRAX_SER1_DTR_RI_DSR_CD_MIXED
255         default "4" if ETRAX_SER1_DTR_RI_DSR_CD_ON_PA || ETRAX_SER1_DTR_RI_DSR_CD_MIXED
256
257 config ETRAX_SER1_RI_ON_PA_BIT
258         int "Ser1 RI  on PA bit (-1 = not used)" if ETRAX_SER1_DTR_RI_DSR_CD_ON_PA || ETRAX_SER1_DTR_RI_DSR_CD_MIXED
259         depends on ETRAX_SERIAL_PORT1
260         default "-1" if !ETRAX_SER1_DTR_RI_DSR_CD_ON_PA && !ETRAX_SER1_DTR_RI_DSR_CD_MIXED
261         default "5" if ETRAX_SER1_DTR_RI_DSR_CD_ON_PA || ETRAX_SER1_DTR_RI_DSR_CD_MIXED
262
263 config ETRAX_SER1_DSR_ON_PA_BIT
264         int "Ser1 DSR on PA bit (-1 = not used)" if ETRAX_SER1_DTR_RI_DSR_CD_ON_PA || ETRAX_SER1_DTR_RI_DSR_CD_MIXED
265         depends on ETRAX_SERIAL_PORT1
266         default "-1" if !ETRAX_SER1_DTR_RI_DSR_CD_ON_PA && !ETRAX_SER1_DTR_RI_DSR_CD_MIXED
267         default "6" if ETRAX_SER1_DTR_RI_DSR_CD_ON_PA || ETRAX_SER1_DTR_RI_DSR_CD_MIXED
268
269 config ETRAX_SER1_CD_ON_PA_BIT
270         int "Ser1 CD  on PA bit (-1 = not used)" if ETRAX_SER1_DTR_RI_DSR_CD_ON_PA || ETRAX_SER1_DTR_RI_DSR_CD_MIXED
271         depends on ETRAX_SERIAL_PORT1
272         default "-1" if !ETRAX_SER1_DTR_RI_DSR_CD_ON_PA && !ETRAX_SER1_DTR_RI_DSR_CD_MIXED
273         default "7" if ETRAX_SER1_DTR_RI_DSR_CD_ON_PA || ETRAX_SER1_DTR_RI_DSR_CD_MIXED
274
275 config ETRAX_SER1_DTR_ON_PB_BIT
276         int "Ser1 DTR on PB bit (-1 = not used)" if ETRAX_SER1_DTR_RI_DSR_CD_ON_PB || ETRAX_SER1_DTR_RI_DSR_CD_MIXED
277         depends on ETRAX_SERIAL_PORT1
278         default "-1" if !ETRAX_SER1_DTR_RI_DSR_CD_ON_PB && !ETRAX_SER1_DTR_RI_DSR_CD_MIXED
279         default "4" if ETRAX_SER1_DTR_RI_DSR_CD_ON_PB || ETRAX_SER1_DTR_RI_DSR_CD_MIXED
280         help
281           Specify the pin of the PB port to carry the DTR signal for serial
282           port 1.
283
284 config ETRAX_SER1_RI_ON_PB_BIT
285         int "Ser1 RI  on PB bit (-1 = not used)" if ETRAX_SER1_DTR_RI_DSR_CD_ON_PB || ETRAX_SER1_DTR_RI_DSR_CD_MIXED
286         depends on ETRAX_SERIAL_PORT1
287         default "-1" if !ETRAX_SER1_DTR_RI_DSR_CD_ON_PB && !ETRAX_SER1_DTR_RI_DSR_CD_MIXED
288         default "5" if ETRAX_SER1_DTR_RI_DSR_CD_ON_PB || ETRAX_SER1_DTR_RI_DSR_CD_MIXED
289         help
290           Specify the pin of the PB port to carry the RI signal for serial
291           port 1.
292
293 config ETRAX_SER1_DSR_ON_PB_BIT
294         int "Ser1 DSR on PB bit (-1 = not used)" if ETRAX_SER1_DTR_RI_DSR_CD_ON_PB || ETRAX_SER1_DTR_RI_DSR_CD_MIXED
295         depends on ETRAX_SERIAL_PORT1
296         default "-1" if !ETRAX_SER1_DTR_RI_DSR_CD_ON_PB && !ETRAX_SER1_DTR_RI_DSR_CD_MIXED
297         default "6" if ETRAX_SER1_DTR_RI_DSR_CD_ON_PB || ETRAX_SER1_DTR_RI_DSR_CD_MIXED
298         help
299           Specify the pin of the PB port to carry the DSR signal for serial
300           port 1.
301
302 config ETRAX_SER1_CD_ON_PB_BIT
303         int "Ser1 CD  on PB bit (-1 = not used)" if ETRAX_SER1_DTR_RI_DSR_CD_ON_PB || ETRAX_SER1_DTR_RI_DSR_CD_MIXED
304         depends on ETRAX_SERIAL_PORT1
305         default "-1" if !ETRAX_SER1_DTR_RI_DSR_CD_ON_PB && !ETRAX_SER1_DTR_RI_DSR_CD_MIXED
306         default "7" if ETRAX_SER1_DTR_RI_DSR_CD_ON_PB || ETRAX_SER1_DTR_RI_DSR_CD_MIXED
307         help
308           Specify the pin of the PB port to carry the CD signal for serial
309           port 1.
310
311 comment "Make sure you dont have the same PB bits more than once!"
312         depends on ETRAX_SERIAL && ETRAX_SER0_DTR_RI_DSR_CD_ON_PB && ETRAX_SER1_DTR_RI_DSR_CD_ON_PB
313
314 config ETRAX_SERIAL_PORT2
315         bool "Serial port 2 enabled"
316         depends on ETRAX_SERIAL
317         help
318           Enables the ETRAX 100 serial driver for ser2 (ttyS2).
319
320 choice
321         prompt "Ser2 DMA out assignment"
322         depends on ETRAX_SERIAL_PORT2
323         default ETRAX_SERIAL_PORT2_DMA2_OUT
324
325 config CONFIG_ETRAX_SERIAL_PORT2_NO_DMA_OUT
326        bool "No DMA out"
327
328 config CONFIG_ETRAX_SERIAL_PORT2_DMA2_OUT
329        bool "DMA 2"
330
331 endchoice
332
333 choice
334         prompt "Ser2 DMA in assignment"
335         depends on ETRAX_SERIAL_PORT2
336         default ETRAX_SERIAL_PORT2_DMA3_IN
337
338 config CONFIG_ETRAX_SERIAL_PORT2_NO_DMA_IN
339        bool "No DMA in"
340
341 config CONFIG_ETRAX_SERIAL_PORT2_DMA3_IN
342        bool "DMA 3"
343
344 endchoice
345
346 choice
347         prompt "Ser2 DTR, RI, DSR and CD assignment"
348         depends on ETRAX_SERIAL_PORT2
349         default ETRAX_SER2_DTR_RI_DSR_CD_ON_NONE
350
351 config ETRAX_SER2_DTR_RI_DSR_CD_ON_NONE
352         bool "No_DTR_RI_DSR_CD"
353
354 config ETRAX_SER2_DTR_RI_DSR_CD_ON_PA
355         bool "DTR_RI_DSR_CD_on_PA"
356         help
357           Enables the status and control signals DTR, RI, DSR and CD on PA for
358           ser2.
359
360 config ETRAX_SER2_DTR_RI_DSR_CD_ON_PB
361         bool "DTR_RI_DSR_CD_on_PB"
362
363 config ETRAX_SER2_DTR_RI_DSR_CD_MIXED
364         bool "DTR_RI_DSR_CD_mixed_on_PA_and_PB"
365
366 endchoice
367
368 config ETRAX_SER2_DTR_ON_PA_BIT
369         int "Ser2 DTR on PA bit (-1 = not used)" if ETRAX_SER2_DTR_RI_DSR_CD_ON_PA || ETRAX_SER2_DTR_RI_DSR_CD_MIXED
370         depends on ETRAX_SERIAL_PORT2
371         default "-1" if !ETRAX_SER2_DTR_RI_DSR_CD_ON_PA && !ETRAX_SER2_DTR_RI_DSR_CD_MIXED
372         default "4" if ETRAX_SER2_DTR_RI_DSR_CD_ON_PA || ETRAX_SER2_DTR_RI_DSR_CD_MIXED
373         help
374           Specify the pin of the PA port to carry the DTR signal for serial
375           port 2.
376
377 config ETRAX_SER2_RI_ON_PA_BIT
378         int "Ser2 RI  on PA bit (-1 = not used)" if ETRAX_SER2_DTR_RI_DSR_CD_ON_PA || ETRAX_SER2_DTR_RI_DSR_CD_MIXED
379         depends on ETRAX_SERIAL_PORT2
380         default "-1" if !ETRAX_SER2_DTR_RI_DSR_CD_ON_PA && !ETRAX_SER2_DTR_RI_DSR_CD_MIXED
381         default "5" if ETRAX_SER2_DTR_RI_DSR_CD_ON_PA || ETRAX_SER2_DTR_RI_DSR_CD_MIXED
382         help
383           Specify the pin of the PA port to carry the RI signal for serial
384           port 2.
385
386 config ETRAX_SER2_DSR_ON_PA_BIT
387         int "Ser2 DSR on PA bit (-1 = not used)" if ETRAX_SER2_DTR_RI_DSR_CD_ON_PA || ETRAX_SER2_DTR_RI_DSR_CD_MIXED
388         depends on ETRAX_SERIAL_PORT2
389         default "-1" if !ETRAX_SER2_DTR_RI_DSR_CD_ON_PA && !ETRAX_SER2_DTR_RI_DSR_CD_MIXED
390         default "6" if ETRAX_SER2_DTR_RI_DSR_CD_ON_PA || ETRAX_SER2_DTR_RI_DSR_CD_MIXED
391         help
392           Specify the pin of the PA port to carry the DTR signal for serial
393           port 2.
394
395 config ETRAX_SER2_CD_ON_PA_BIT
396         int "Ser2 CD  on PA bit (-1 = not used)" if ETRAX_SER2_DTR_RI_DSR_CD_ON_PA || ETRAX_SER2_DTR_RI_DSR_CD_MIXED
397         depends on ETRAX_SERIAL_PORT2
398         default "-1" if !ETRAX_SER2_DTR_RI_DSR_CD_ON_PA && !ETRAX_SER2_DTR_RI_DSR_CD_MIXED
399         default "7" if ETRAX_SER2_DTR_RI_DSR_CD_ON_PA || ETRAX_SER2_DTR_RI_DSR_CD_MIXED
400         help
401           Specify the pin of the PA port to carry the CD signal for serial
402           port 2.
403
404 config ETRAX_SER2_DTR_ON_PB_BIT
405         int "Ser2 DTR on PB bit (-1 = not used)" if ETRAX_SER2_DTR_RI_DSR_CD_ON_PB || ETRAX_SER2_DTR_RI_DSR_CD_MIXED
406         depends on ETRAX_SERIAL_PORT2
407         default "-1" if !ETRAX_SER2_DTR_RI_DSR_CD_ON_PB && !ETRAX_SER2_DTR_RI_DSR_CD_MIXED
408         default "4" if ETRAX_SER2_DTR_RI_DSR_CD_ON_PB || ETRAX_SER2_DTR_RI_DSR_CD_MIXED
409
410 config ETRAX_SER2_RI_ON_PB_BIT
411         int "Ser2 RI  on PB bit (-1 = not used)" if ETRAX_SER2_DTR_RI_DSR_CD_ON_PB || ETRAX_SER2_DTR_RI_DSR_CD_MIXED
412         depends on ETRAX_SERIAL_PORT2
413         default "-1" if !ETRAX_SER2_DTR_RI_DSR_CD_ON_PB && !ETRAX_SER2_DTR_RI_DSR_CD_MIXED
414         default "5" if ETRAX_SER2_DTR_RI_DSR_CD_ON_PB || ETRAX_SER2_DTR_RI_DSR_CD_MIXED
415
416 config ETRAX_SER2_DSR_ON_PB_BIT
417         int "Ser2 DSR on PB bit (-1 = not used)" if ETRAX_SER2_DTR_RI_DSR_CD_ON_PB || ETRAX_SER2_DTR_RI_DSR_CD_MIXED
418         depends on ETRAX_SERIAL_PORT2
419         default "-1" if !ETRAX_SER2_DTR_RI_DSR_CD_ON_PB && !ETRAX_SER2_DTR_RI_DSR_CD_MIXED
420         default "6" if ETRAX_SER2_DTR_RI_DSR_CD_ON_PB || ETRAX_SER2_DTR_RI_DSR_CD_MIXED
421
422 config ETRAX_SER2_CD_ON_PB_BIT
423         int "Ser2 CD  on PB bit (-1 = not used)" if ETRAX_SER2_DTR_RI_DSR_CD_ON_PB || ETRAX_SER2_DTR_RI_DSR_CD_MIXED
424         depends on ETRAX_SERIAL_PORT2
425         default "-1" if !ETRAX_SER2_DTR_RI_DSR_CD_ON_PB && !ETRAX_SER2_DTR_RI_DSR_CD_MIXED
426         default "7" if ETRAX_SER2_DTR_RI_DSR_CD_ON_PB || ETRAX_SER2_DTR_RI_DSR_CD_MIXED
427
428 config ETRAX_SERIAL_PORT3
429         bool "Serial port 3 enabled"
430         depends on ETRAX_SERIAL
431         help
432           Enables the ETRAX 100 serial driver for ser3 (ttyS3).
433
434 choice
435         prompt "Ser3 DMA out assignment"
436         depends on ETRAX_SERIAL_PORT3
437         default ETRAX_SERIAL_PORT3_DMA4_OUT
438
439 config CONFIG_ETRAX_SERIAL_PORT3_NO_DMA_OUT
440        bool "No DMA out"
441
442 config CONFIG_ETRAX_SERIAL_PORT3_DMA4_OUT
443        bool "DMA 4"
444
445 endchoice
446
447 choice
448         prompt "Ser3 DMA in assignment"
449         depends on ETRAX_SERIAL_PORT3
450         default ETRAX_SERIAL_PORT3_DMA5_IN
451
452 config CONFIG_ETRAX_SERIAL_PORT3_NO_DMA_IN
453        bool "No DMA in"
454
455 config CONFIG_ETRAX_SERIAL_PORT3_DMA5_IN
456        bool "DMA 5"
457
458 endchoice
459
460 choice
461         prompt "Ser3 DTR, RI, DSR and CD assignment"
462         depends on ETRAX_SERIAL_PORT3
463         default ETRAX_SER3_DTR_RI_DSR_CD_ON_NONE
464
465 config ETRAX_SER3_DTR_RI_DSR_CD_ON_NONE
466         bool "No_DTR_RI_DSR_CD"
467
468 config ETRAX_SER3_DTR_RI_DSR_CD_ON_PA
469         bool "DTR_RI_DSR_CD_on_PA"
470
471 config ETRAX_SER3_DTR_RI_DSR_CD_ON_PB
472         bool "DTR_RI_DSR_CD_on_PB"
473
474 config ETRAX_SER3_DTR_RI_DSR_CD_MIXED
475         bool "DTR_RI_DSR_CD_mixed_on_PA_and_PB"
476
477 endchoice
478
479 config ETRAX_SER3_DTR_ON_PA_BIT
480         int "Ser3 DTR on PA bit (-1 = not used)" if ETRAX_SER3_DTR_RI_DSR_CD_ON_PA || ETRAX_SER3_DTR_RI_DSR_CD_MIXED
481         depends on ETRAX_SERIAL_PORT3
482         default "-1"
483
484 config ETRAX_SER3_RI_ON_PA_BIT
485         int "Ser3 RI  on PA bit (-1 = not used)" if ETRAX_SER3_DTR_RI_DSR_CD_ON_PA || ETRAX_SER3_DTR_RI_DSR_CD_MIXED
486         depends on ETRAX_SERIAL_PORT3
487         default "-1"
488
489 config ETRAX_SER3_DSR_ON_PA_BIT
490         int "Ser3 DSR on PA bit (-1 = not used)" if ETRAX_SER3_DTR_RI_DSR_CD_ON_PA || ETRAX_SER3_DTR_RI_DSR_CD_MIXED
491         depends on ETRAX_SERIAL_PORT3
492         default "-1"
493
494 config ETRAX_SER3_CD_ON_PA_BIT
495         int "Ser3 CD  on PA bit (-1 = not used)" if ETRAX_SER3_DTR_RI_DSR_CD_ON_PA || ETRAX_SER3_DTR_RI_DSR_CD_MIXED
496         depends on ETRAX_SERIAL_PORT3
497         default "-1"
498
499 config ETRAX_SER3_DTR_ON_PB_BIT
500         int "Ser3 DTR on PB bit (-1 = not used)" if ETRAX_SER3_DTR_RI_DSR_CD_ON_PB || ETRAX_SER3_DTR_RI_DSR_CD_MIXED
501         depends on ETRAX_SERIAL_PORT3
502         default "-1"
503
504 config ETRAX_SER3_RI_ON_PB_BIT
505         int "Ser3 RI  on PB bit (-1 = not used)" if ETRAX_SER3_DTR_RI_DSR_CD_ON_PB || ETRAX_SER3_DTR_RI_DSR_CD_MIXED
506         depends on ETRAX_SERIAL_PORT3
507         default "-1"
508
509 config ETRAX_SER3_DSR_ON_PB_BIT
510         int "Ser3 DSR on PB bit (-1 = not used)" if ETRAX_SER3_DTR_RI_DSR_CD_ON_PB || ETRAX_SER3_DTR_RI_DSR_CD_MIXED
511         depends on ETRAX_SERIAL_PORT3
512         default "-1"
513
514 config ETRAX_SER3_CD_ON_PB_BIT
515         int "Ser3 CD  on PB bit (-1 = not used)" if ETRAX_SER3_DTR_RI_DSR_CD_ON_PB || ETRAX_SER3_DTR_RI_DSR_CD_MIXED
516         depends on ETRAX_SERIAL_PORT3
517         default "-1"
518
519 config ETRAX_RS485
520         bool "RS-485 support"
521         depends on ETRAX_SERIAL
522         help
523           Enables support for RS-485 serial communication.  For a primer on
524           RS-485, see <http://www.hw.cz/english/docs/rs485/rs485.html>.
525
526 config ETRAX_RS485_ON_PA
527         bool "RS-485 mode on PA"
528         depends on ETRAX_RS485
529         help
530           Control Driver Output Enable on RS485 transceiver using a pin on PA
531           port:
532           Axis 2400/2401 uses PA 3.
533
534 config ETRAX_RS485_ON_PA_BIT
535         int "RS-485 mode on PA bit"
536         depends on ETRAX_RS485_ON_PA
537         default "3"
538         help
539           Control Driver Output Enable on RS485 transceiver using a this bit
540           on PA port.
541
542 config ETRAX_RS485_DISABLE_RECEIVER
543         bool "Disable serial receiver"
544         depends on ETRAX_RS485
545         help
546           It's necessary to disable the serial receiver to avoid serial
547           loopback.  Not all products are able to do this in software only.
548           Axis 2400/2401 must disable receiver.
549
550 config ETRAX_IDE
551         bool "ATA/IDE support"
552         select IDE
553         select BLK_DEV_IDE
554         select BLK_DEV_IDEDISK
555         select BLK_DEV_IDECD
556         select BLK_DEV_IDEDMA
557         select DMA_NONPCI
558         help
559           Enable this to get support for ATA/IDE.
560           You can't use paralell ports or SCSI ports
561           at the same time.
562
563
564 config ETRAX_IDE_DELAY
565         int "Delay for drives to regain consciousness"
566         depends on ETRAX_IDE
567         default 15
568         help
569           Number of seconds to wait for IDE drives to spin up after an IDE
570           reset.
571 choice
572         prompt "IDE reset pin"
573         depends on ETRAX_IDE
574         default ETRAX_IDE_PB7_RESET
575
576 config ETRAX_IDE_PB7_RESET
577         bool "Port_PB_Bit_7"
578         help
579           IDE reset on pin 7 on port B
580
581 config ETRAX_IDE_G27_RESET
582         bool "Port_G_Bit_27"
583         help
584           IDE reset on pin 27 on port G
585
586 endchoice
587
588
589 config ETRAX_USB_HOST
590         bool "USB host"
591         help
592            This option enables the host functionality of the ETRAX 100LX
593            built-in USB controller. In host mode the controller is designed
594            for CTRL and BULK traffic only, INTR traffic may work as well
595            however (depending on the requirements of timeliness).
596
597 config USB
598        tristate
599        depends on ETRAX_USB_HOST
600        default y
601
602 config ETRAX_USB_HOST_PORT1
603        bool "  USB port 1 enabled"
604        depends on ETRAX_USB_HOST
605        default n
606
607 config ETRAX_USB_HOST_PORT2
608        bool "  USB port 2 enabled"
609        depends on ETRAX_USB_HOST
610        default n
611
612 config ETRAX_AXISFLASHMAP
613         bool "Axis flash-map support"
614         depends on ETRAX_ARCH_V10
615         help
616           This option enables MTD mapping of flash devices.  Needed to use
617           flash memories.  If unsure, say Y.
618
619 config ETRAX_PTABLE_SECTOR
620         int "Byte-offset of partition table sector"
621         depends on ETRAX_AXISFLASHMAP
622         default "65536"
623         help
624           Byte-offset of the partition table in the first flash chip.
625           The default value is 64kB and should not be changed unless
626           you know exactly what you are doing. The only valid reason
627           for changing this is when the flash block size is bigger
628           than 64kB (e.g. when using two parallel 16 bit flashes).
629
630 # here we define the CONFIG_'s necessary to enable MTD support
631 # for the flash
632 config MTD
633         tristate
634         depends on ETRAX_AXISFLASHMAP
635         default y
636         help
637           Memory Technology Devices are flash, RAM and similar chips, often
638           used for solid state file systems on embedded devices. This option
639           will provide the generic support for MTD drivers to register
640           themselves with the kernel and for potential users of MTD devices
641           to enumerate the devices which are present and obtain a handle on
642           them. It will also allow you to select individual drivers for 
643           particular hardware and users of MTD devices. If unsure, say N.
644
645 config MTD_CFI
646         tristate
647         depends on ETRAX_AXISFLASHMAP
648         default y
649         help
650           The Common Flash Interface specification was developed by Intel,
651           AMD and other flash manufactures that provides a universal method
652           for probing the capabilities of flash devices. If you wish to
653           support any device that is CFI-compliant, you need to enable this
654           option. Visit <http://www.amd.com/products/nvd/overview/cfi.html>
655           for more information on CFI.
656
657 config MTD_CFI_AMDSTD
658         tristate
659         depends on ETRAX_AXISFLASHMAP
660         default y
661         help
662           The Common Flash Interface defines a number of different command
663           sets which a CFI-compliant chip may claim to implement. This code
664           provides support for one of those command sets, used on chips 
665           chips including the AMD Am29LV320.
666
667 config MTD_OBSOLETE_CHIPS
668         bool
669         depends on ETRAX_AXISFLASHMAP
670         default y
671         help
672           This option does not enable any code directly, but will allow you to
673           select some other chip drivers which are now considered obsolete,
674           because the generic CONFIG_JEDEC_PROBE code above should now detect
675           the chips which are supported by these drivers, and allow the generic
676           CFI-compatible drivers to drive the chips. Say 'N' here unless you have
677           already tried the CONFIG_JEDEC_PROBE method and reported its failure
678           to the MTD mailing list at <linux-mtd@lists.infradead.org>
679
680 config MTD_AMDSTD
681         tristate
682         depends on ETRAX_AXISFLASHMAP
683         default y
684         help
685           This option enables support for flash chips using AMD-compatible
686           commands, including some which are not CFI-compatible and hence 
687           cannot be used with the CONFIG_MTD_CFI_AMDSTD option.
688
689           It also works on AMD compatible chips that do conform to CFI.
690
691 config MTD_CHAR
692         tristate
693         depends on ETRAX_AXISFLASHMAP
694         default y
695         help
696           This provides a character device for each MTD device present in
697           the system, allowing the user to read and write directly to the
698           memory chips, and also use ioctl() to obtain information about
699           the device, or to erase parts of it.
700
701 config MTD_BLOCK
702         tristate
703         depends on ETRAX_AXISFLASHMAP
704         default y
705         ---help---
706           Although most flash chips have an erase size too large to be useful
707           as block devices, it is possible to use MTD devices which are based
708           on RAM chips in this manner. This block device is a user of MTD
709           devices performing that function.
710
711           At the moment, it is also required for the Journalling Flash File
712           System(s) to obtain a handle on the MTD device when it's mounted
713           (although JFFS and JFFS2 don't actually use any of the functionality
714           of the mtdblock device).
715
716           Later, it may be extended to perform read/erase/modify/write cycles
717           on flash chips to emulate a smaller block size. Needless to say,
718           this is very unsafe, but could be useful for file systems which are
719           almost never written to.
720
721           You do not need this option for use with the DiskOnChip devices. For
722           those, enable NFTL support (CONFIG_NFTL) instead.
723
724 config MTD_PARTITIONS
725         tristate
726         depends on ETRAX_AXISFLASHMAP
727         default y
728         help
729           If you have a device which needs to divide its flash chip(s) up
730           into multiple 'partitions', each of which appears to the user as
731           a separate MTD device, you require this option to be enabled. If
732           unsure, say 'Y'.
733
734           Note, however, that you don't need this option for the DiskOnChip
735           devices. Partitioning on NFTL 'devices' is a different - that's the
736           'normal' form of partitioning used on a block device.
737
738 config MTD_CONCAT
739         tristate
740         depends on ETRAX_AXISFLASHMAP
741         default y
742
743 config ETRAX_I2C
744         bool "I2C support"
745         depends on ETRAX_ARCH_V10
746         help
747           Enables an I2C driver on ETRAX100.
748           EXAMPLE usage:
749           i2c_arg = I2C_WRITEARG(STA013_WRITE_ADDR, reg, val);
750           ioctl(fd, _IO(ETRAXI2C_IOCTYPE, I2C_WRITEREG), i2c_arg);
751           i2c_arg = I2C_READARG(STA013_READ_ADDR, reg);
752           val = ioctl(fd, _IO(ETRAXI2C_IOCTYPE, I2C_READREG), i2c_arg);
753
754 # this is true for most products since PB-I2C seems to be somewhat
755 # flawed.. 
756 config ETRAX_I2C_USES_PB_NOT_PB_I2C
757         bool "I2C uses PB not PB-I2C"
758         depends on ETRAX_I2C
759         help
760           Select whether to use the special I2C mode in the PB I/O register or
761           not.  This option needs to be selected in order to use some drivers
762           that access the I2C I/O pins directly instead of going through the
763           I2C driver, like the DS1302 realtime-clock driver.  If you are
764           uncertain, choose Y here.
765
766 config ETRAX_I2C_DATA_PORT
767         int "I2C SDA bit number"
768         depends on ETRAX_I2C_USES_PB_NOT_PB_I2C
769         default "0"
770         help
771           Selects the pin on Port B where the data pin is connected
772
773 config ETRAX_I2C_CLK_PORT
774         int "I2C SCL bit number"
775         depends on ETRAX_I2C_USES_PB_NOT_PB_I2C
776         default "1"
777         help
778           Select the pin on Port B where the clock pin is connected
779
780 config ETRAX_I2C_EEPROM
781         bool "I2C EEPROM (non-volatile RAM) support"
782         depends on ETRAX_I2C
783         help
784           Enables I2C EEPROM (non-volatile RAM) on PB0 and PB1 using the I2C
785           driver.  Select size option: Probed, 2k, 8k, 16k.
786           (Probing works for 2k and 8k but not that well for 16k)
787
788 choice
789         prompt "EEPROM size"
790         depends on ETRAX_I2C_EEPROM
791         default ETRAX_I2C_EEPROM_PROBE
792
793 config ETRAX_I2C_EEPROM_PROBE
794         bool "Probed"
795         help
796           Specifies size or auto probe of the EEPROM size.
797           Options: Probed, 2k, 8k, 16k.
798           (Probing works for 2k and 8k but not that well for 16k)
799
800 config ETRAX_I2C_EEPROM_2KB
801         bool "2kB"
802         help
803           Use a 2kB EEPROM.
804
805 config ETRAX_I2C_EEPROM_8KB
806         bool "8kB"
807         help
808           Use a 8kB EEPROM.
809
810 config ETRAX_I2C_EEPROM_16KB
811         bool "16kB"
812         help
813           Use a 16kB EEPROM.
814
815 endchoice
816
817 config ETRAX_GPIO
818         bool "GPIO support"
819         depends on ETRAX_ARCH_V10
820         ---help---
821           Enables the ETRAX general port device (major 120, minors 0 and 1).
822           You can use this driver to access the general port bits. It supports
823           these ioctl's:
824           #include <linux/etraxgpio.h>
825           fd = open("/dev/gpioa", O_RDWR); // or /dev/gpiob
826           ioctl(fd, _IO(ETRAXGPIO_IOCTYPE, IO_SETBITS), bits_to_set);
827           ioctl(fd, _IO(ETRAXGPIO_IOCTYPE, IO_CLRBITS), bits_to_clear);
828           val = ioctl(fd, _IO(ETRAXGPIO_IOCTYPE, IO_READBITS), NULL);
829           Remember that you need to setup the port directions appropriately in
830           the General configuration.
831
832 config ETRAX_PA_BUTTON_BITMASK
833         hex "PA-buttons bitmask"
834         depends on ETRAX_GPIO
835         default "02"
836         help
837           This is a bitmask with information about what bits on PA that
838           are used for buttons.
839           Most products has a so called TEST button on PA1, if that's true
840           use 02 here.
841           Use 00 if there are no buttons on PA.
842           If the bitmask is <> 00 a button driver will be included in the gpio
843           driver. ETRAX general I/O support must be enabled.
844
845 config ETRAX_PA_CHANGEABLE_DIR
846         hex "PA user changeable dir mask"
847         depends on ETRAX_GPIO
848         default "00"
849         help
850           This is a bitmask with information of what bits in PA that a user
851           can change direction on using ioctl's.
852           Bit set = changeable.
853           You probably want 00 here.
854
855 config ETRAX_PA_CHANGEABLE_BITS
856         hex "PA user changeable bits mask"
857         depends on ETRAX_GPIO
858         default "FF"
859         help
860           This is a bitmask with information of what bits in PA that a user
861           can change change the value on using ioctl's.
862           Bit set = changeable.
863           You probably want 00 here.
864
865 config ETRAX_PB_CHANGEABLE_DIR
866         hex "PB user changeable dir mask"
867         depends on ETRAX_GPIO
868         default "00"
869         help
870           This is a bitmask with information of what bits in PB that a user
871           can change direction on using ioctl's.
872           Bit set = changeable.
873           You probably want 00 here.
874
875 config ETRAX_PB_CHANGEABLE_BITS
876         hex "PB user changeable bits mask"
877         depends on ETRAX_GPIO
878         default "FF"
879         help
880           This is a bitmask with information of what bits in PB that a user
881           can change the value on using ioctl's.
882           Bit set = changeable.
883           You probably want 00 here.
884
885 config ETRAX_RTC
886         bool "Real Time Clock support"
887         depends on ETRAX_ARCH_V10
888         help
889           Enables drivers for the Real-Time Clock battery-backed chips on 
890           some products. The kernel reads the time when booting, and
891           the date can be set using ioctl(fd, RTC_SET_TIME, &rt) with rt a
892           rtc_time struct (see <file:include/asm-cris/rtc.h>) on the /dev/rtc
893           device, major 121.  You can check the time with cat /proc/rtc, but
894           normal time reading should be done using libc function time and
895           friends.
896
897 choice
898         prompt "RTC chip"
899         depends on ETRAX_RTC
900         default ETRAX_DS1302
901
902 config ETRAX_DS1302
903         bool "DS1302"
904         help
905           Enables the driver for the DS1302 Real-Time Clock battery-backed
906           chip on some products. 
907
908 config ETRAX_PCF8563
909         bool "PCF8563"
910         help
911           Enables the driver for the PCF8563 Real-Time Clock battery-backed
912           chip on some products.  
913
914 endchoice
915
916 config ETRAX_DS1302_RST_ON_GENERIC_PORT
917         bool "DS1302 RST on Generic Port"
918         depends on ETRAX_DS1302
919         help
920           If your product has the RST signal line for the DS1302 RTC on the
921           Generic Port then say Y here, otherwise leave it as N in which
922           case the RST signal line is assumed to be connected to Port PB
923           (just like the SCL and SDA lines).
924
925 config ETRAX_DS1302_RSTBIT
926         int "DS1302 RST bit number"
927         depends on ETRAX_DS1302
928         default "2"
929         help
930           This is the bit number for the RST signal line of the DS1302 RTC on
931           the selected port. If you have selected the generic port then it
932           should be bit 27, otherwise your best bet is bit 5.
933
934 config ETRAX_DS1302_SCLBIT
935         int "DS1302 SCL bit number"
936         depends on ETRAX_DS1302
937         default "1"
938         help
939           This is the bit number for the SCL signal line of the DS1302 RTC on
940           Port PB. This is probably best left at 3.
941
942 config ETRAX_DS1302_SDABIT
943         int "DS1302 SDA bit number"
944         depends on ETRAX_DS1302
945         default "0"
946         help
947           This is the bit number for the SDA signal line of the DS1302 RTC on
948           Port PB. This is probably best left at 2.
949
950 config ETRAX_DS1302_TRICKLE_CHARGE
951         int "DS1302 Trickle charger value"
952         depends on ETRAX_DS1302
953         default "0"
954         help
955           This controls the initial value of the trickle charge register.
956           0 = disabled (use this if you are unsure or have a non rechargable battery)
957           Otherwise the following values can be OR:ed together to control the 
958           charge current:
959           1 = 2kohm, 2 = 4kohm, 3 = 4kohm
960           4 = 1 diode, 8 = 2 diodes
961           Allowed values are (increasing current): 0, 11, 10, 9, 7, 6, 5
962
963