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