patch-2_6_7-vs1_9_1_12
[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         help
553           Enable this to get support for ATA/IDE.
554           You can't use parallell ports or SCSI ports
555           at the same time.
556
557 # here we should add the CONFIG_'s necessary to enable the basic
558 # general ide drivers so the common case does not need to go
559 # into that config submenu. enable disk and CD support. others
560 # need to go fiddle in the submenu..
561 config IDE
562         tristate
563         depends on ETRAX_IDE
564         default y
565
566 config BLK_DEV_IDE
567         tristate
568         depends on ETRAX_IDE
569         default y
570
571 config BLK_DEV_IDEDISK
572         tristate
573         depends on ETRAX_IDE
574         default y
575
576 config BLK_DEV_IDECD
577         tristate
578         depends on ETRAX_IDE
579         default y
580
581 config BLK_DEV_IDEDMA
582         bool
583         depends on ETRAX_IDE
584         default y
585
586 config DMA_NONPCI
587         bool
588         depends on ETRAX_IDE
589         default y
590
591 config ETRAX_IDE_DELAY
592         int "Delay for drives to regain consciousness"
593         depends on ETRAX_IDE
594         default 15
595         help
596           Number of seconds to wait for IDE drives to spin up after an IDE
597           reset.
598 choice
599         prompt "IDE reset pin"
600         depends on ETRAX_IDE
601         default ETRAX_IDE_PB7_RESET
602
603 config ETRAX_IDE_PB7_RESET
604         bool "Port_PB_Bit_7"
605         help
606           IDE reset on pin 7 on port B
607
608 config ETRAX_IDE_G27_RESET
609         bool "Port_G_Bit_27"
610         help
611           IDE reset on pin 27 on port G
612
613 endchoice
614
615
616 config ETRAX_USB_HOST
617         bool "USB host"
618         help
619            This option enables the host functionality of the ETRAX 100LX
620            built-in USB controller. In host mode the controller is designed
621            for CTRL and BULK traffic only, INTR traffic may work as well
622            however (depending on the requirements of timeliness).
623
624 config USB
625        tristate
626        depends on ETRAX_USB_HOST
627        default y
628
629 config ETRAX_USB_HOST_PORT1
630        bool "  USB port 1 enabled"
631        depends on ETRAX_USB_HOST
632        default n
633
634 config ETRAX_USB_HOST_PORT2
635        bool "  USB port 2 enabled"
636        depends on ETRAX_USB_HOST
637        default n
638
639 config ETRAX_AXISFLASHMAP
640         bool "Axis flash-map support"
641         depends on ETRAX_ARCH_V10
642         help
643           This option enables MTD mapping of flash devices.  Needed to use
644           flash memories.  If unsure, say Y.
645
646 config ETRAX_PTABLE_SECTOR
647         int "Byte-offset of partition table sector"
648         depends on ETRAX_AXISFLASHMAP
649         default "65536"
650         help
651           Byte-offset of the partition table in the first flash chip.
652           The default value is 64kB and should not be changed unless
653           you know exactly what you are doing. The only valid reason
654           for changing this is when the flash block size is bigger
655           than 64kB (e.g. when using two parallel 16 bit flashes).
656
657 # here we define the CONFIG_'s necessary to enable MTD support
658 # for the flash
659 config MTD
660         tristate
661         depends on ETRAX_AXISFLASHMAP
662         default y
663         help
664           Memory Technology Devices are flash, RAM and similar chips, often
665           used for solid state file systems on embedded devices. This option
666           will provide the generic support for MTD drivers to register
667           themselves with the kernel and for potential users of MTD devices
668           to enumerate the devices which are present and obtain a handle on
669           them. It will also allow you to select individual drivers for 
670           particular hardware and users of MTD devices. If unsure, say N.
671
672 config MTD_CFI
673         tristate
674         depends on ETRAX_AXISFLASHMAP
675         default y
676         help
677           The Common Flash Interface specification was developed by Intel,
678           AMD and other flash manufactures that provides a universal method
679           for probing the capabilities of flash devices. If you wish to
680           support any device that is CFI-compliant, you need to enable this
681           option. Visit <http://www.amd.com/products/nvd/overview/cfi.html>
682           for more information on CFI.
683
684 config MTD_CFI_AMDSTD
685         tristate
686         depends on ETRAX_AXISFLASHMAP
687         default y
688         help
689           The Common Flash Interface defines a number of different command
690           sets which a CFI-compliant chip may claim to implement. This code
691           provides support for one of those command sets, used on chips 
692           chips including the AMD Am29LV320.
693
694 config MTD_OBSOLETE_CHIPS
695         bool
696         depends on ETRAX_AXISFLASHMAP
697         default y
698         help
699           This option does not enable any code directly, but will allow you to
700           select some other chip drivers which are now considered obsolete,
701           because the generic CONFIG_JEDEC_PROBE code above should now detect
702           the chips which are supported by these drivers, and allow the generic
703           CFI-compatible drivers to drive the chips. Say 'N' here unless you have
704           already tried the CONFIG_JEDEC_PROBE method and reported its failure
705           to the MTD mailing list at <linux-mtd@lists.infradead.org>
706
707 config MTD_AMDSTD
708         tristate
709         depends on ETRAX_AXISFLASHMAP
710         default y
711         help
712           This option enables support for flash chips using AMD-compatible
713           commands, including some which are not CFI-compatible and hence 
714           cannot be used with the CONFIG_MTD_CFI_AMDSTD option.
715
716           It also works on AMD compatible chips that do conform to CFI.
717
718 config MTD_CHAR
719         tristate
720         depends on ETRAX_AXISFLASHMAP
721         default y
722         help
723           This provides a character device for each MTD device present in
724           the system, allowing the user to read and write directly to the
725           memory chips, and also use ioctl() to obtain information about
726           the device, or to erase parts of it.
727
728 config MTD_BLOCK
729         tristate
730         depends on ETRAX_AXISFLASHMAP
731         default y
732         ---help---
733           Although most flash chips have an erase size too large to be useful
734           as block devices, it is possible to use MTD devices which are based
735           on RAM chips in this manner. This block device is a user of MTD
736           devices performing that function.
737
738           At the moment, it is also required for the Journalling Flash File
739           System(s) to obtain a handle on the MTD device when it's mounted
740           (although JFFS and JFFS2 don't actually use any of the functionality
741           of the mtdblock device).
742
743           Later, it may be extended to perform read/erase/modify/write cycles
744           on flash chips to emulate a smaller block size. Needless to say,
745           this is very unsafe, but could be useful for file systems which are
746           almost never written to.
747
748           You do not need this option for use with the DiskOnChip devices. For
749           those, enable NFTL support (CONFIG_NFTL) instead.
750
751 config MTD_PARTITIONS
752         tristate
753         depends on ETRAX_AXISFLASHMAP
754         default y
755         help
756           If you have a device which needs to divide its flash chip(s) up
757           into multiple 'partitions', each of which appears to the user as
758           a separate MTD device, you require this option to be enabled. If
759           unsure, say 'Y'.
760
761           Note, however, that you don't need this option for the DiskOnChip
762           devices. Partitioning on NFTL 'devices' is a different - that's the
763           'normal' form of partitioning used on a block device.
764
765 config MTD_CONCAT
766         tristate
767         depends on ETRAX_AXISFLASHMAP
768         default y
769
770 config ETRAX_I2C
771         bool "I2C support"
772         depends on ETRAX_ARCH_V10
773         help
774           Enables an I2C driver on ETRAX100.
775           EXAMPLE usage:
776           i2c_arg = I2C_WRITEARG(STA013_WRITE_ADDR, reg, val);
777           ioctl(fd, _IO(ETRAXI2C_IOCTYPE, I2C_WRITEREG), i2c_arg);
778           i2c_arg = I2C_READARG(STA013_READ_ADDR, reg);
779           val = ioctl(fd, _IO(ETRAXI2C_IOCTYPE, I2C_READREG), i2c_arg);
780
781 # this is true for most products since PB-I2C seems to be somewhat
782 # flawed.. 
783 config ETRAX_I2C_USES_PB_NOT_PB_I2C
784         bool "I2C uses PB not PB-I2C"
785         depends on ETRAX_I2C
786         help
787           Select whether to use the special I2C mode in the PB I/O register or
788           not.  This option needs to be selected in order to use some drivers
789           that access the I2C I/O pins directly instead of going through the
790           I2C driver, like the DS1302 realtime-clock driver.  If you are
791           uncertain, choose Y here.
792
793 config ETRAX_I2C_DATA_PORT
794         int "I2C SDA bit number"
795         depends on ETRAX_I2C_USES_PB_NOT_PB_I2C
796         default "0"
797         help
798           Selects the pin on Port B where the data pin is connected
799
800 config ETRAX_I2C_CLK_PORT
801         int "I2C SCL bit number"
802         depends on ETRAX_I2C_USES_PB_NOT_PB_I2C
803         default "1"
804         help
805           Select the pin on Port B where the clock pin is connected
806
807 config ETRAX_I2C_EEPROM
808         bool "I2C EEPROM (non-volatile RAM) support"
809         depends on ETRAX_I2C
810         help
811           Enables I2C EEPROM (non-volatile RAM) on PB0 and PB1 using the I2C
812           driver.  Select size option: Probed, 2k, 8k, 16k.
813           (Probing works for 2k and 8k but not that well for 16k)
814
815 choice
816         prompt "EEPROM size"
817         depends on ETRAX_I2C_EEPROM
818         default ETRAX_I2C_EEPROM_PROBE
819
820 config ETRAX_I2C_EEPROM_PROBE
821         bool "Probed"
822         help
823           Specifies size or auto probe of the EEPROM size.
824           Options: Probed, 2k, 8k, 16k.
825           (Probing works for 2k and 8k but not that well for 16k)
826
827 config ETRAX_I2C_EEPROM_2KB
828         bool "2kB"
829         help
830           Use a 2kB EEPROM.
831
832 config ETRAX_I2C_EEPROM_8KB
833         bool "8kB"
834         help
835           Use a 8kB EEPROM.
836
837 config ETRAX_I2C_EEPROM_16KB
838         bool "16kB"
839         help
840           Use a 16kB EEPROM.
841
842 endchoice
843
844 config ETRAX_GPIO
845         bool "GPIO support"
846         depends on ETRAX_ARCH_V10
847         ---help---
848           Enables the ETRAX general port device (major 120, minors 0 and 1).
849           You can use this driver to access the general port bits. It supports
850           these ioctl's:
851           #include <linux/etraxgpio.h>
852           fd = open("/dev/gpioa", O_RDWR); // or /dev/gpiob
853           ioctl(fd, _IO(ETRAXGPIO_IOCTYPE, IO_SETBITS), bits_to_set);
854           ioctl(fd, _IO(ETRAXGPIO_IOCTYPE, IO_CLRBITS), bits_to_clear);
855           val = ioctl(fd, _IO(ETRAXGPIO_IOCTYPE, IO_READBITS), NULL);
856           Remember that you need to setup the port directions appropriately in
857           the General configuration.
858
859 config ETRAX_PA_BUTTON_BITMASK
860         hex "PA-buttons bitmask"
861         depends on ETRAX_GPIO
862         default "02"
863         help
864           This is a bitmask with information about what bits on PA that
865           are used for buttons.
866           Most products has a so called TEST button on PA1, if that's true
867           use 02 here.
868           Use 00 if there are no buttons on PA.
869           If the bitmask is <> 00 a button driver will be included in the gpio
870           driver. ETRAX general I/O support must be enabled.
871
872 config ETRAX_PA_CHANGEABLE_DIR
873         hex "PA user changeable dir mask"
874         depends on ETRAX_GPIO
875         default "00"
876         help
877           This is a bitmask with information of what bits in PA that a user
878           can change direction on using ioctl's.
879           Bit set = changeable.
880           You probably want 00 here.
881
882 config ETRAX_PA_CHANGEABLE_BITS
883         hex "PA user changeable bits mask"
884         depends on ETRAX_GPIO
885         default "FF"
886         help
887           This is a bitmask with information of what bits in PA that a user
888           can change change the value on using ioctl's.
889           Bit set = changeable.
890           You probably want 00 here.
891
892 config ETRAX_PB_CHANGEABLE_DIR
893         hex "PB user changeable dir mask"
894         depends on ETRAX_GPIO
895         default "00"
896         help
897           This is a bitmask with information of what bits in PB that a user
898           can change direction on using ioctl's.
899           Bit set = changeable.
900           You probably want 00 here.
901
902 config ETRAX_PB_CHANGEABLE_BITS
903         hex "PB user changeable bits mask"
904         depends on ETRAX_GPIO
905         default "FF"
906         help
907           This is a bitmask with information of what bits in PB that a user
908           can change the value on using ioctl's.
909           Bit set = changeable.
910           You probably want 00 here.
911
912 config ETRAX_RTC
913         bool "Real Time Clock support"
914         depends on ETRAX_ARCH_V10
915         help
916           Enables drivers for the Real-Time Clock battery-backed chips on 
917           some products. The kernel reads the time when booting, and
918           the date can be set using ioctl(fd, RTC_SET_TIME, &rt) with rt a
919           rtc_time struct (see <file:include/asm-cris/rtc.h>) on the /dev/rtc
920           device, major 121.  You can check the time with cat /proc/rtc, but
921           normal time reading should be done using libc function time and
922           friends.
923
924 choice
925         prompt "RTC chip"
926         depends on ETRAX_RTC
927         default ETRAX_DS1302
928
929 config ETRAX_DS1302
930         bool "DS1302"
931         help
932           Enables the driver for the DS1302 Real-Time Clock battery-backed
933           chip on some products. 
934
935 config ETRAX_PCF8563
936         bool "PCF8563"
937         help
938           Enables the driver for the PCF8563 Real-Time Clock battery-backed
939           chip on some products.  
940
941 endchoice
942
943 config ETRAX_DS1302_RST_ON_GENERIC_PORT
944         bool "DS1302 RST on Generic Port"
945         depends on ETRAX_DS1302
946         help
947           If your product has the RST signal line for the DS1302 RTC on the
948           Generic Port then say Y here, otherwise leave it as N in which
949           case the RST signal line is assumed to be connected to Port PB
950           (just like the SCL and SDA lines).
951
952 config ETRAX_DS1302_RSTBIT
953         int "DS1302 RST bit number"
954         depends on ETRAX_DS1302
955         default "2"
956         help
957           This is the bit number for the RST signal line of the DS1302 RTC on
958           the selected port. If you have selected the generic port then it
959           should be bit 27, otherwise your best bet is bit 5.
960
961 config ETRAX_DS1302_SCLBIT
962         int "DS1302 SCL bit number"
963         depends on ETRAX_DS1302
964         default "1"
965         help
966           This is the bit number for the SCL signal line of the DS1302 RTC on
967           Port PB. This is probably best left at 3.
968
969 config ETRAX_DS1302_SDABIT
970         int "DS1302 SDA bit number"
971         depends on ETRAX_DS1302
972         default "0"
973         help
974           This is the bit number for the SDA signal line of the DS1302 RTC on
975           Port PB. This is probably best left at 2.
976
977 config ETRAX_DS1302_TRICKLE_CHARGE
978         int "DS1302 Trickle charger value"
979         depends on ETRAX_DS1302
980         default "0"
981         help
982           This controls the initial value of the trickle charge register.
983           0 = disabled (use this if you are unsure or have a non rechargable battery)
984           Otherwise the following values can be OR:ed together to control the 
985           charge current:
986           1 = 2kohm, 2 = 4kohm, 3 = 4kohm
987           4 = 1 diode, 8 = 2 diodes
988           Allowed values are (increasing current): 0, 11, 10, 9, 7, 6, 5
989
990