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