Merge branch 'for-linus' of git://git.open-osd.org/linux-open-osd
[pandora-kernel.git] / arch / cris / arch-v10 / drivers / Kconfig
1 if ETRAX_ARCH_V10
2
3 config ETRAX_ETHERNET
4         bool "Ethernet support"
5         depends on ETRAX_ARCH_V10
6         select NET_ETHERNET
7         select NET_CORE
8         select MII
9         help
10           This option enables the ETRAX 100LX built-in 10/100Mbit Ethernet
11           controller.
12
13 config ETRAX_SERIAL
14         bool "Serial-port support"
15         depends on ETRAX_ARCH_V10
16         help
17           Enables the ETRAX 100 serial driver for ser0 (ttyS0)
18           You probably want this enabled.
19
20 config ETRAX_SERIAL_FAST_TIMER
21         bool "Use fast timers for serial DMA flush (experimental)"
22         depends on ETRAX_SERIAL
23         help
24           Select this to have the serial DMAs flushed at a higher rate than
25           normally, possible by using the fast timer API, the timeout is
26           approx. 4 character times.
27           If unsure, say N.
28
29 config ETRAX_SERIAL_FLUSH_DMA_FAST
30         bool "Fast serial port DMA flush"
31         depends on ETRAX_SERIAL && !ETRAX_SERIAL_FAST_TIMER
32         help
33           Select this to have the serial DMAs flushed at a higher rate than
34           normally possible through a fast timer interrupt (currently at
35           15360 Hz).
36           If unsure, say N.
37
38 config ETRAX_SERIAL_RX_TIMEOUT_TICKS
39         int "Receive flush timeout (ticks) "
40         depends on ETRAX_SERIAL && !ETRAX_SERIAL_FAST_TIMER && !ETRAX_SERIAL_FLUSH_DMA_FAST
41         default "5"
42         help
43           Number of timer ticks between flush of receive fifo (1 tick = 10ms).
44           Try 0-3 for low latency applications.  Approx 5 for high load
45           applications (e.g. PPP).  Maybe this should be more adaptive some
46           day...
47
48 config ETRAX_SERIAL_PORT0
49         bool "Serial port 0 enabled"
50         depends on ETRAX_SERIAL
51         help
52           Enables the ETRAX 100 serial driver for ser0 (ttyS0)
53           Normally you want this on, unless you use external DMA 1 that uses
54           the same DMA channels.
55
56 choice
57         prompt "Ser0 DTR, RI, DSR and CD assignment"
58         depends on ETRAX_SERIAL_PORT0
59         default ETRAX_SER0_DTR_RI_DSR_CD_ON_NONE
60
61 config ETRAX_SER0_DTR_RI_DSR_CD_ON_NONE
62         bool "No_DTR_RI_DSR_CD"
63
64 config ETRAX_SER0_DTR_RI_DSR_CD_ON_PA
65         bool "DTR_RI_DSR_CD_on_PA"
66
67 config ETRAX_SER0_DTR_RI_DSR_CD_ON_PB
68         bool "DTR_RI_DSR_CD_on_PB"
69         help
70           Enables the status and control signals DTR, RI, DSR and CD on PB for
71           ser0.
72
73 config ETRAX_SER0_DTR_RI_DSR_CD_MIXED
74         bool "DTR_RI_DSR_CD_mixed_on_PA_and_PB"
75
76 endchoice
77
78 config ETRAX_SER0_DTR_ON_PA_BIT
79         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
80         depends on ETRAX_SERIAL_PORT0
81         default "-1" if !ETRAX_SER0_DTR_RI_DSR_CD_ON_PA && !ETRAX_SER0_DTR_RI_DSR_CD_MIXED
82         default "4" if ETRAX_SER0_DTR_RI_DSR_CD_ON_PA || ETRAX_SER0_DTR_RI_DSR_CD_MIXED
83
84 config ETRAX_SER0_RI_ON_PA_BIT
85         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
86         depends on ETRAX_SERIAL_PORT0
87         default "-1" if !ETRAX_SER0_DTR_RI_DSR_CD_ON_PA && !ETRAX_SER0_DTR_RI_DSR_CD_MIXED
88         default "5" if ETRAX_SER0_DTR_RI_DSR_CD_ON_PA || ETRAX_SER0_DTR_RI_DSR_CD_MIXED
89
90 config ETRAX_SER0_DSR_ON_PA_BIT
91         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
92         depends on ETRAX_SERIAL_PORT0
93         default "-1" if !ETRAX_SER0_DTR_RI_DSR_CD_ON_PA && !ETRAX_SER0_DTR_RI_DSR_CD_MIXED
94         default "6" if ETRAX_SER0_DTR_RI_DSR_CD_ON_PA || ETRAX_SER0_DTR_RI_DSR_CD_MIXED
95
96 config ETRAX_SER0_CD_ON_PA_BIT
97         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
98         depends on ETRAX_SERIAL_PORT0
99         default "-1" if !ETRAX_SER0_DTR_RI_DSR_CD_ON_PA && !ETRAX_SER0_DTR_RI_DSR_CD_MIXED
100         default "7" if ETRAX_SER0_DTR_RI_DSR_CD_ON_PA || ETRAX_SER0_DTR_RI_DSR_CD_MIXED
101
102 config ETRAX_SER0_DTR_ON_PB_BIT
103         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
104         depends on ETRAX_SERIAL_PORT0
105         default "-1" if !ETRAX_SER0_DTR_RI_DSR_CD_ON_PB && !ETRAX_SER0_DTR_RI_DSR_CD_MIXED
106         default "4" if ETRAX_SER0_DTR_RI_DSR_CD_ON_PB || ETRAX_SER0_DTR_RI_DSR_CD_MIXED
107         help
108           Specify the pin of the PB port to carry the DTR signal for serial
109           port 0.
110
111 config ETRAX_SER0_RI_ON_PB_BIT
112         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
113         depends on ETRAX_SERIAL_PORT0
114         default "-1" if !ETRAX_SER0_DTR_RI_DSR_CD_ON_PB && !ETRAX_SER0_DTR_RI_DSR_CD_MIXED
115         default "5" if ETRAX_SER0_DTR_RI_DSR_CD_ON_PB || ETRAX_SER0_DTR_RI_DSR_CD_MIXED
116         help
117           Specify the pin of the PB port to carry the RI signal for serial
118           port 0.
119
120 config ETRAX_SER0_DSR_ON_PB_BIT
121         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
122         depends on ETRAX_SERIAL_PORT0
123         default "-1" if !ETRAX_SER0_DTR_RI_DSR_CD_ON_PB && !ETRAX_SER0_DTR_RI_DSR_CD_MIXED
124         default "6" if ETRAX_SER0_DTR_RI_DSR_CD_ON_PB || ETRAX_SER0_DTR_RI_DSR_CD_MIXED
125         help
126           Specify the pin of the PB port to carry the DSR signal for serial
127           port 0.
128
129 config ETRAX_SER0_CD_ON_PB_BIT
130         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
131         depends on ETRAX_SERIAL_PORT0
132         default "-1" if !ETRAX_SER0_DTR_RI_DSR_CD_ON_PB && !ETRAX_SER0_DTR_RI_DSR_CD_MIXED
133         default "7" if ETRAX_SER0_DTR_RI_DSR_CD_ON_PB || ETRAX_SER0_DTR_RI_DSR_CD_MIXED
134         help
135           Specify the pin of the PB port to carry the CD signal for serial
136           port 0.
137
138 config ETRAX_SERIAL_PORT1
139         bool "Serial port 1 enabled"
140         depends on ETRAX_SERIAL
141         help
142           Enables the ETRAX 100 serial driver for ser1 (ttyS1).
143
144 choice
145         prompt "Ser1 DTR, RI, DSR and CD assignment"
146         depends on ETRAX_SERIAL_PORT1
147         default ETRAX_SER1_DTR_RI_DSR_CD_ON_NONE
148
149 config ETRAX_SER1_DTR_RI_DSR_CD_ON_NONE
150         bool "No_DTR_RI_DSR_CD"
151
152 config ETRAX_SER1_DTR_RI_DSR_CD_ON_PA
153         bool "DTR_RI_DSR_CD_on_PA"
154
155 config ETRAX_SER1_DTR_RI_DSR_CD_ON_PB
156         bool "DTR_RI_DSR_CD_on_PB"
157         help
158           Enables the status and control signals DTR, RI, DSR and CD on PB for
159           ser1.
160
161 config ETRAX_SER1_DTR_RI_DSR_CD_MIXED
162         bool "DTR_RI_DSR_CD_mixed_on_PA_and_PB"
163
164 endchoice
165
166 config ETRAX_SER1_DTR_ON_PA_BIT
167         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
168         depends on ETRAX_SERIAL_PORT1
169         default "-1" if !ETRAX_SER1_DTR_RI_DSR_CD_ON_PA && !ETRAX_SER1_DTR_RI_DSR_CD_MIXED
170         default "4" if ETRAX_SER1_DTR_RI_DSR_CD_ON_PA || ETRAX_SER1_DTR_RI_DSR_CD_MIXED
171
172 config ETRAX_SER1_RI_ON_PA_BIT
173         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
174         depends on ETRAX_SERIAL_PORT1
175         default "-1" if !ETRAX_SER1_DTR_RI_DSR_CD_ON_PA && !ETRAX_SER1_DTR_RI_DSR_CD_MIXED
176         default "5" if ETRAX_SER1_DTR_RI_DSR_CD_ON_PA || ETRAX_SER1_DTR_RI_DSR_CD_MIXED
177
178 config ETRAX_SER1_DSR_ON_PA_BIT
179         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
180         depends on ETRAX_SERIAL_PORT1
181         default "-1" if !ETRAX_SER1_DTR_RI_DSR_CD_ON_PA && !ETRAX_SER1_DTR_RI_DSR_CD_MIXED
182         default "6" if ETRAX_SER1_DTR_RI_DSR_CD_ON_PA || ETRAX_SER1_DTR_RI_DSR_CD_MIXED
183
184 config ETRAX_SER1_CD_ON_PA_BIT
185         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
186         depends on ETRAX_SERIAL_PORT1
187         default "-1" if !ETRAX_SER1_DTR_RI_DSR_CD_ON_PA && !ETRAX_SER1_DTR_RI_DSR_CD_MIXED
188         default "7" if ETRAX_SER1_DTR_RI_DSR_CD_ON_PA || ETRAX_SER1_DTR_RI_DSR_CD_MIXED
189
190 config ETRAX_SER1_DTR_ON_PB_BIT
191         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
192         depends on ETRAX_SERIAL_PORT1
193         default "-1" if !ETRAX_SER1_DTR_RI_DSR_CD_ON_PB && !ETRAX_SER1_DTR_RI_DSR_CD_MIXED
194         default "4" if ETRAX_SER1_DTR_RI_DSR_CD_ON_PB || ETRAX_SER1_DTR_RI_DSR_CD_MIXED
195         help
196           Specify the pin of the PB port to carry the DTR signal for serial
197           port 1.
198
199 config ETRAX_SER1_RI_ON_PB_BIT
200         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
201         depends on ETRAX_SERIAL_PORT1
202         default "-1" if !ETRAX_SER1_DTR_RI_DSR_CD_ON_PB && !ETRAX_SER1_DTR_RI_DSR_CD_MIXED
203         default "5" if ETRAX_SER1_DTR_RI_DSR_CD_ON_PB || ETRAX_SER1_DTR_RI_DSR_CD_MIXED
204         help
205           Specify the pin of the PB port to carry the RI signal for serial
206           port 1.
207
208 config ETRAX_SER1_DSR_ON_PB_BIT
209         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
210         depends on ETRAX_SERIAL_PORT1
211         default "-1" if !ETRAX_SER1_DTR_RI_DSR_CD_ON_PB && !ETRAX_SER1_DTR_RI_DSR_CD_MIXED
212         default "6" if ETRAX_SER1_DTR_RI_DSR_CD_ON_PB || ETRAX_SER1_DTR_RI_DSR_CD_MIXED
213         help
214           Specify the pin of the PB port to carry the DSR signal for serial
215           port 1.
216
217 config ETRAX_SER1_CD_ON_PB_BIT
218         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
219         depends on ETRAX_SERIAL_PORT1
220         default "-1" if !ETRAX_SER1_DTR_RI_DSR_CD_ON_PB && !ETRAX_SER1_DTR_RI_DSR_CD_MIXED
221         default "7" if ETRAX_SER1_DTR_RI_DSR_CD_ON_PB || ETRAX_SER1_DTR_RI_DSR_CD_MIXED
222         help
223           Specify the pin of the PB port to carry the CD signal for serial
224           port 1.
225
226 comment "Make sure you do not have the same PB bits more than once!"
227         depends on ETRAX_SERIAL && ETRAX_SER0_DTR_RI_DSR_CD_ON_PB && ETRAX_SER1_DTR_RI_DSR_CD_ON_PB
228
229 config ETRAX_SERIAL_PORT2
230         bool "Serial port 2 enabled"
231         depends on ETRAX_SERIAL
232         help
233           Enables the ETRAX 100 serial driver for ser2 (ttyS2).
234
235 choice
236         prompt "Ser2 DTR, RI, DSR and CD assignment"
237         depends on ETRAX_SERIAL_PORT2
238         default ETRAX_SER2_DTR_RI_DSR_CD_ON_NONE
239
240 config ETRAX_SER2_DTR_RI_DSR_CD_ON_NONE
241         bool "No_DTR_RI_DSR_CD"
242
243 config ETRAX_SER2_DTR_RI_DSR_CD_ON_PA
244         bool "DTR_RI_DSR_CD_on_PA"
245         help
246           Enables the status and control signals DTR, RI, DSR and CD on PA for
247           ser2.
248
249 config ETRAX_SER2_DTR_RI_DSR_CD_ON_PB
250         bool "DTR_RI_DSR_CD_on_PB"
251
252 config ETRAX_SER2_DTR_RI_DSR_CD_MIXED
253         bool "DTR_RI_DSR_CD_mixed_on_PA_and_PB"
254
255 endchoice
256
257 config ETRAX_SER2_DTR_ON_PA_BIT
258         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
259         depends on ETRAX_SERIAL_PORT2
260         default "-1" if !ETRAX_SER2_DTR_RI_DSR_CD_ON_PA && !ETRAX_SER2_DTR_RI_DSR_CD_MIXED
261         default "4" if ETRAX_SER2_DTR_RI_DSR_CD_ON_PA || ETRAX_SER2_DTR_RI_DSR_CD_MIXED
262         help
263           Specify the pin of the PA port to carry the DTR signal for serial
264           port 2.
265
266 config ETRAX_SER2_RI_ON_PA_BIT
267         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
268         depends on ETRAX_SERIAL_PORT2
269         default "-1" if !ETRAX_SER2_DTR_RI_DSR_CD_ON_PA && !ETRAX_SER2_DTR_RI_DSR_CD_MIXED
270         default "5" if ETRAX_SER2_DTR_RI_DSR_CD_ON_PA || ETRAX_SER2_DTR_RI_DSR_CD_MIXED
271         help
272           Specify the pin of the PA port to carry the RI signal for serial
273           port 2.
274
275 config ETRAX_SER2_DSR_ON_PA_BIT
276         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
277         depends on ETRAX_SERIAL_PORT2
278         default "-1" if !ETRAX_SER2_DTR_RI_DSR_CD_ON_PA && !ETRAX_SER2_DTR_RI_DSR_CD_MIXED
279         default "6" if ETRAX_SER2_DTR_RI_DSR_CD_ON_PA || ETRAX_SER2_DTR_RI_DSR_CD_MIXED
280         help
281           Specify the pin of the PA port to carry the DTR signal for serial
282           port 2.
283
284 config ETRAX_SER2_CD_ON_PA_BIT
285         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
286         depends on ETRAX_SERIAL_PORT2
287         default "-1" if !ETRAX_SER2_DTR_RI_DSR_CD_ON_PA && !ETRAX_SER2_DTR_RI_DSR_CD_MIXED
288         default "7" if ETRAX_SER2_DTR_RI_DSR_CD_ON_PA || ETRAX_SER2_DTR_RI_DSR_CD_MIXED
289         help
290           Specify the pin of the PA port to carry the CD signal for serial
291           port 2.
292
293 config ETRAX_SER2_DTR_ON_PB_BIT
294         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
295         depends on ETRAX_SERIAL_PORT2
296         default "-1" if !ETRAX_SER2_DTR_RI_DSR_CD_ON_PB && !ETRAX_SER2_DTR_RI_DSR_CD_MIXED
297         default "4" if ETRAX_SER2_DTR_RI_DSR_CD_ON_PB || ETRAX_SER2_DTR_RI_DSR_CD_MIXED
298
299 config ETRAX_SER2_RI_ON_PB_BIT
300         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
301         depends on ETRAX_SERIAL_PORT2
302         default "-1" if !ETRAX_SER2_DTR_RI_DSR_CD_ON_PB && !ETRAX_SER2_DTR_RI_DSR_CD_MIXED
303         default "5" if ETRAX_SER2_DTR_RI_DSR_CD_ON_PB || ETRAX_SER2_DTR_RI_DSR_CD_MIXED
304
305 config ETRAX_SER2_DSR_ON_PB_BIT
306         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
307         depends on ETRAX_SERIAL_PORT2
308         default "-1" if !ETRAX_SER2_DTR_RI_DSR_CD_ON_PB && !ETRAX_SER2_DTR_RI_DSR_CD_MIXED
309         default "6" if ETRAX_SER2_DTR_RI_DSR_CD_ON_PB || ETRAX_SER2_DTR_RI_DSR_CD_MIXED
310
311 config ETRAX_SER2_CD_ON_PB_BIT
312         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
313         depends on ETRAX_SERIAL_PORT2
314         default "-1" if !ETRAX_SER2_DTR_RI_DSR_CD_ON_PB && !ETRAX_SER2_DTR_RI_DSR_CD_MIXED
315         default "7" if ETRAX_SER2_DTR_RI_DSR_CD_ON_PB || ETRAX_SER2_DTR_RI_DSR_CD_MIXED
316
317 config ETRAX_SERIAL_PORT3
318         bool "Serial port 3 enabled"
319         depends on ETRAX_SERIAL
320         help
321           Enables the ETRAX 100 serial driver for ser3 (ttyS3).
322
323 choice
324         prompt "Ser3 DTR, RI, DSR and CD assignment"
325         depends on ETRAX_SERIAL_PORT3
326         default ETRAX_SER3_DTR_RI_DSR_CD_ON_NONE
327
328 config ETRAX_SER3_DTR_RI_DSR_CD_ON_NONE
329         bool "No_DTR_RI_DSR_CD"
330
331 config ETRAX_SER3_DTR_RI_DSR_CD_ON_PA
332         bool "DTR_RI_DSR_CD_on_PA"
333
334 config ETRAX_SER3_DTR_RI_DSR_CD_ON_PB
335         bool "DTR_RI_DSR_CD_on_PB"
336
337 config ETRAX_SER3_DTR_RI_DSR_CD_MIXED
338         bool "DTR_RI_DSR_CD_mixed_on_PA_and_PB"
339
340 endchoice
341
342 config ETRAX_SER3_DTR_ON_PA_BIT
343         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
344         depends on ETRAX_SERIAL_PORT3
345         default "-1"
346
347 config ETRAX_SER3_RI_ON_PA_BIT
348         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
349         depends on ETRAX_SERIAL_PORT3
350         default "-1"
351
352 config ETRAX_SER3_DSR_ON_PA_BIT
353         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
354         depends on ETRAX_SERIAL_PORT3
355         default "-1"
356
357 config ETRAX_SER3_CD_ON_PA_BIT
358         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
359         depends on ETRAX_SERIAL_PORT3
360         default "-1"
361
362 config ETRAX_SER3_DTR_ON_PB_BIT
363         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
364         depends on ETRAX_SERIAL_PORT3
365         default "-1"
366
367 config ETRAX_SER3_RI_ON_PB_BIT
368         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
369         depends on ETRAX_SERIAL_PORT3
370         default "-1"
371
372 config ETRAX_SER3_DSR_ON_PB_BIT
373         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
374         depends on ETRAX_SERIAL_PORT3
375         default "-1"
376
377 config ETRAX_SER3_CD_ON_PB_BIT
378         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
379         depends on ETRAX_SERIAL_PORT3
380         default "-1"
381
382 config ETRAX_RS485
383         bool "RS-485 support"
384         depends on ETRAX_SERIAL
385         help
386           Enables support for RS-485 serial communication.  For a primer on
387           RS-485, see <http://en.wikipedia.org/wiki/Rs485>
388
389 config ETRAX_RS485_ON_PA
390         bool "RS-485 mode on PA"
391         depends on ETRAX_RS485
392         help
393           Control Driver Output Enable on RS485 transceiver using a pin on PA
394           port:
395           Axis 2400/2401 uses PA 3.
396
397 config ETRAX_RS485_ON_PA_BIT
398         int "RS-485 mode on PA bit"
399         depends on ETRAX_RS485_ON_PA
400         default "3"
401         help
402           Control Driver Output Enable on RS485 transceiver using a this bit
403           on PA port.
404
405 config ETRAX_RS485_DISABLE_RECEIVER
406         bool "Disable serial receiver"
407         depends on ETRAX_RS485
408         help
409           It's necessary to disable the serial receiver to avoid serial
410           loopback.  Not all products are able to do this in software only.
411           Axis 2400/2401 must disable receiver.
412
413 config ETRAX_USB_HOST
414         bool "USB host"
415         select USB
416         help
417            This option enables the host functionality of the ETRAX 100LX
418            built-in USB controller. In host mode the controller is designed
419            for CTRL and BULK traffic only, INTR traffic may work as well
420            however (depending on the requirements of timeliness).
421
422 config ETRAX_USB_HOST_PORT1
423         bool "USB port 1 enabled"
424         depends on ETRAX_USB_HOST
425         default n
426
427 config ETRAX_USB_HOST_PORT2
428         bool "USB port 2 enabled"
429         depends on ETRAX_USB_HOST
430         default n
431
432 config ETRAX_PTABLE_SECTOR
433         int "Byte-offset of partition table sector"
434         depends on ETRAX_AXISFLASHMAP
435         default "65536"
436         help
437           Byte-offset of the partition table in the first flash chip.
438           The default value is 64kB and should not be changed unless
439           you know exactly what you are doing. The only valid reason
440           for changing this is when the flash block size is bigger
441           than 64kB (e.g. when using two parallel 16 bit flashes).
442
443 config ETRAX_I2C
444         bool "I2C support"
445         depends on ETRAX_ARCH_V10
446         help
447           Enables an I2C driver on ETRAX100.
448           EXAMPLE usage:
449           i2c_arg = I2C_WRITEARG(STA013_WRITE_ADDR, reg, val);
450           ioctl(fd, _IO(ETRAXI2C_IOCTYPE, I2C_WRITEREG), i2c_arg);
451           i2c_arg = I2C_READARG(STA013_READ_ADDR, reg);
452           val = ioctl(fd, _IO(ETRAXI2C_IOCTYPE, I2C_READREG), i2c_arg);
453
454 # this is true for most products since PB-I2C seems to be somewhat
455 # flawed..
456 config ETRAX_I2C_USES_PB_NOT_PB_I2C
457         bool "I2C uses PB not PB-I2C"
458         depends on ETRAX_I2C
459         help
460           Select whether to use the special I2C mode in the PB I/O register or
461           not.  This option needs to be selected in order to use some drivers
462           that access the I2C I/O pins directly instead of going through the
463           I2C driver, like the DS1302 realtime-clock driver.  If you are
464           uncertain, choose Y here.
465
466 config ETRAX_I2C_DATA_PORT
467         int "I2C SDA bit number"
468         depends on ETRAX_I2C_USES_PB_NOT_PB_I2C
469         default "0"
470         help
471           Selects the pin on Port B where the data pin is connected
472
473 config ETRAX_I2C_CLK_PORT
474         int "I2C SCL bit number"
475         depends on ETRAX_I2C_USES_PB_NOT_PB_I2C
476         default "1"
477         help
478           Select the pin on Port B where the clock pin is connected
479
480 config ETRAX_I2C_EEPROM
481         bool "I2C EEPROM (non-volatile RAM) support"
482         depends on ETRAX_I2C
483         help
484           Enables I2C EEPROM (non-volatile RAM) on PB0 and PB1 using the I2C
485           driver.  Select size option: Probed, 2k, 8k, 16k.
486           (Probing works for 2k and 8k but not that well for 16k)
487
488 choice
489         prompt "EEPROM size"
490         depends on ETRAX_I2C_EEPROM
491         default ETRAX_I2C_EEPROM_PROBE
492
493 config ETRAX_I2C_EEPROM_PROBE
494         bool "Probed"
495         help
496           Specifies size or auto probe of the EEPROM size.
497           Options: Probed, 2k, 8k, 16k.
498           (Probing works for 2k and 8k but not that well for 16k)
499
500 config ETRAX_I2C_EEPROM_2KB
501         bool "2kB"
502         help
503           Use a 2kB EEPROM.
504
505 config ETRAX_I2C_EEPROM_8KB
506         bool "8kB"
507         help
508           Use a 8kB EEPROM.
509
510 config ETRAX_I2C_EEPROM_16KB
511         bool "16kB"
512         help
513           Use a 16kB EEPROM.
514
515 endchoice
516
517 config ETRAX_GPIO
518         bool "GPIO support"
519         depends on ETRAX_ARCH_V10
520         ---help---
521           Enables the ETRAX general port device (major 120, minors 0 and 1).
522           You can use this driver to access the general port bits. It supports
523           these ioctl's:
524           #include <linux/etraxgpio.h>
525           fd = open("/dev/gpioa", O_RDWR); // or /dev/gpiob
526           ioctl(fd, _IO(ETRAXGPIO_IOCTYPE, IO_SETBITS), bits_to_set);
527           ioctl(fd, _IO(ETRAXGPIO_IOCTYPE, IO_CLRBITS), bits_to_clear);
528           val = ioctl(fd, _IO(ETRAXGPIO_IOCTYPE, IO_READBITS), NULL);
529           Remember that you need to setup the port directions appropriately in
530           the General configuration.
531
532 config ETRAX_PA_BUTTON_BITMASK
533         hex "PA-buttons bitmask"
534         depends on ETRAX_GPIO
535         default "02"
536         help
537           This is a bitmask with information about what bits on PA that
538           are used for buttons.
539           Most products has a so called TEST button on PA1, if that's true
540           use 02 here.
541           Use 00 if there are no buttons on PA.
542           If the bitmask is <> 00 a button driver will be included in the gpio
543           driver. ETRAX general I/O support must be enabled.
544
545 config ETRAX_PA_CHANGEABLE_DIR
546         hex "PA user changeable dir mask"
547         depends on ETRAX_GPIO
548         default "00"
549         help
550           This is a bitmask with information of what bits in PA that a user
551           can change direction on using ioctl's.
552           Bit set = changeable.
553           You probably want 00 here.
554
555 config ETRAX_PA_CHANGEABLE_BITS
556         hex "PA user changeable bits mask"
557         depends on ETRAX_GPIO
558         default "FF"
559         help
560           This is a bitmask with information of what bits in PA that a user
561           can change the value on using ioctl's.
562           Bit set = changeable.
563           You probably want 00 here.
564
565 config ETRAX_PB_CHANGEABLE_DIR
566         hex "PB user changeable dir mask"
567         depends on ETRAX_GPIO
568         default "00"
569         help
570           This is a bitmask with information of what bits in PB that a user
571           can change direction on using ioctl's.
572           Bit set = changeable.
573           You probably want 00 here.
574
575 config ETRAX_PB_CHANGEABLE_BITS
576         hex "PB user changeable bits mask"
577         depends on ETRAX_GPIO
578         default "FF"
579         help
580           This is a bitmask with information of what bits in PB that a user
581           can change the value on using ioctl's.
582           Bit set = changeable.
583           You probably want 00 here.
584
585 config ETRAX_DS1302_RST_ON_GENERIC_PORT
586         bool "DS1302 RST on Generic Port"
587         depends on ETRAX_DS1302
588         help
589           If your product has the RST signal line for the DS1302 RTC on the
590           Generic Port then say Y here, otherwise leave it as N in which
591           case the RST signal line is assumed to be connected to Port PB
592           (just like the SCL and SDA lines).
593
594 config ETRAX_DS1302_RSTBIT
595         int "DS1302 RST bit number"
596         depends on ETRAX_DS1302
597         default "2"
598         help
599           This is the bit number for the RST signal line of the DS1302 RTC on
600           the selected port. If you have selected the generic port then it
601           should be bit 27, otherwise your best bet is bit 5.
602
603 config ETRAX_DS1302_SCLBIT
604         int "DS1302 SCL bit number"
605         depends on ETRAX_DS1302
606         default "1"
607         help
608           This is the bit number for the SCL signal line of the DS1302 RTC on
609           Port PB. This is probably best left at 3.
610
611 config ETRAX_DS1302_SDABIT
612         int "DS1302 SDA bit number"
613         depends on ETRAX_DS1302
614         default "0"
615         help
616           This is the bit number for the SDA signal line of the DS1302 RTC on
617           Port PB. This is probably best left at 2.
618
619 config ETRAX_DS1302_TRICKLE_CHARGE
620         int "DS1302 Trickle charger value"
621         depends on ETRAX_DS1302
622         default "0"
623         help
624           This controls the initial value of the trickle charge register.
625           0 = disabled (use this if you are unsure or have a non rechargeable battery)
626           Otherwise the following values can be OR:ed together to control the
627           charge current:
628           1 = 2kohm, 2 = 4kohm, 3 = 4kohm
629           4 = 1 diode, 8 = 2 diodes
630           Allowed values are (increasing current): 0, 11, 10, 9, 7, 6, 5
631
632 endif