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