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