Commit | Line | Data |
---|---|---|
2d33d563 JN |
1 | if ETRAX_ARCH_V32 |
2 | ||
51533b61 MS |
3 | config ETRAX_ETHERNET |
4 | bool "Ethernet support" | |
5 | depends on ETRAX_ARCH_V32 | |
1e495701 | 6 | select ETHERNET |
923dd2a4 | 7 | select MII |
51533b61 MS |
8 | help |
9 | This option enables the ETRAX FS built-in 10/100Mbit Ethernet | |
10 | controller. | |
11 | ||
923dd2a4 JN |
12 | config ETRAX_NO_PHY |
13 | bool "PHY not present" | |
51533b61 | 14 | depends on ETRAX_ETHERNET |
923dd2a4 | 15 | default N |
51533b61 | 16 | help |
923dd2a4 JN |
17 | This option disables all MDIO communication with an ethernet |
18 | transceiver connected to the MII interface. This option shall | |
19 | typically be enabled if the MII interface is connected to a | |
20 | switch. This option should normally be disabled. If enabled, | |
21 | speed and duplex will be locked to 100 Mbit and full duplex. | |
51533b61 MS |
22 | |
23 | config ETRAX_ETHERNET_IFACE0 | |
24 | depends on ETRAX_ETHERNET | |
25 | bool "Enable network interface 0" | |
26 | ||
27 | config ETRAX_ETHERNET_IFACE1 | |
923dd2a4 | 28 | depends on (ETRAX_ETHERNET && ETRAXFS) |
51533b61 MS |
29 | bool "Enable network interface 1 (uses DMA6 and DMA7)" |
30 | ||
923dd2a4 JN |
31 | config ETRAX_ETHERNET_GBIT |
32 | depends on (ETRAX_ETHERNET && CRIS_MACH_ARTPEC3) | |
33 | bool "Enable gigabit Ethernet support" | |
34 | ||
51533b61 | 35 | choice |
923dd2a4 JN |
36 | prompt "Eth0 led group" |
37 | depends on ETRAX_ETHERNET_IFACE0 | |
38 | default ETRAX_ETH0_USE_LEDGRP0 | |
51533b61 | 39 | |
923dd2a4 JN |
40 | config ETRAX_ETH0_USE_LEDGRP0 |
41 | bool "Use LED grp 0" | |
42 | depends on ETRAX_NBR_LED_GRP_ONE || ETRAX_NBR_LED_GRP_TWO | |
51533b61 | 43 | help |
923dd2a4 | 44 | Use LED grp 0 for eth0 |
51533b61 | 45 | |
923dd2a4 JN |
46 | config ETRAX_ETH0_USE_LEDGRP1 |
47 | bool "Use LED grp 1" | |
48 | depends on ETRAX_NBR_LED_GRP_TWO | |
49 | help | |
50 | Use LED grp 1 for eth0 | |
51533b61 | 51 | |
923dd2a4 JN |
52 | config ETRAX_ETH0_USE_LEDGRPNULL |
53 | bool "Use no LEDs for eth0" | |
51533b61 | 54 | help |
923dd2a4 JN |
55 | Use no LEDs for eth0 |
56 | endchoice | |
57 | ||
58 | choice | |
59 | prompt "Eth1 led group" | |
60 | depends on ETRAX_ETHERNET_IFACE1 | |
61 | default ETRAX_ETH1_USE_LEDGRP1 | |
51533b61 | 62 | |
923dd2a4 JN |
63 | config ETRAX_ETH1_USE_LEDGRP0 |
64 | bool "Use LED grp 0" | |
65 | depends on ETRAX_NBR_LED_GRP_ONE || ETRAX_NBR_LED_GRP_TWO | |
66 | help | |
67 | Use LED grp 0 for eth1 | |
51533b61 | 68 | |
923dd2a4 JN |
69 | config ETRAX_ETH1_USE_LEDGRP1 |
70 | bool "Use LED grp 1" | |
71 | depends on ETRAX_NBR_LED_GRP_TWO | |
72 | help | |
73 | Use LED grp 1 for eth1 | |
51533b61 | 74 | |
923dd2a4 JN |
75 | config ETRAX_ETH1_USE_LEDGRPNULL |
76 | bool "Use no LEDs for eth1" | |
77 | help | |
78 | Use no LEDs for eth1 | |
51533b61 MS |
79 | endchoice |
80 | ||
81 | config ETRAXFS_SERIAL | |
82 | bool "Serial-port support" | |
83 | depends on ETRAX_ARCH_V32 | |
923dd2a4 JN |
84 | select SERIAL_CORE |
85 | select SERIAL_CORE_CONSOLE | |
51533b61 MS |
86 | help |
87 | Enables the ETRAX FS serial driver for ser0 (ttyS0) | |
88 | You probably want this enabled. | |
89 | ||
923dd2a4 JN |
90 | config ETRAX_RS485 |
91 | bool "RS-485 support" | |
92 | depends on ETRAXFS_SERIAL | |
93 | help | |
94 | Enables support for RS-485 serial communication. | |
95 | ||
96 | config ETRAX_RS485_DISABLE_RECEIVER | |
97 | bool "Disable serial receiver" | |
98 | depends on ETRAX_RS485 | |
99 | help | |
100 | It is necessary to disable the serial receiver to avoid serial | |
101 | loopback. Not all products are able to do this in software only. | |
102 | ||
51533b61 MS |
103 | config ETRAX_SERIAL_PORT0 |
104 | bool "Serial port 0 enabled" | |
105 | depends on ETRAXFS_SERIAL | |
106 | help | |
107 | Enables the ETRAX FS serial driver for ser0 (ttyS0) | |
108 | Normally you want this on. You can control what DMA channels to use | |
109 | if you do not need DMA to something else. | |
110 | ser0 can use dma4 or dma6 for output and dma5 or dma7 for input. | |
111 | ||
112 | choice | |
923dd2a4 | 113 | prompt "Ser0 default port type " |
51533b61 | 114 | depends on ETRAX_SERIAL_PORT0 |
923dd2a4 | 115 | default ETRAX_SERIAL_PORT0_TYPE_232 |
51533b61 | 116 | help |
923dd2a4 | 117 | Type of serial port. |
51533b61 | 118 | |
923dd2a4 JN |
119 | config ETRAX_SERIAL_PORT0_TYPE_232 |
120 | bool "Ser0 is a RS-232 port" | |
51533b61 | 121 | help |
923dd2a4 | 122 | Configure serial port 0 to be a RS-232 port. |
51533b61 | 123 | |
923dd2a4 JN |
124 | config ETRAX_SERIAL_PORT0_TYPE_485HD |
125 | bool "Ser0 is a half duplex RS-485 port" | |
126 | depends on ETRAX_RS485 | |
51533b61 | 127 | help |
923dd2a4 | 128 | Configure serial port 0 to be a half duplex (two wires) RS-485 port. |
51533b61 | 129 | |
923dd2a4 JN |
130 | config ETRAX_SERIAL_PORT0_TYPE_485FD |
131 | bool "Ser0 is a full duplex RS-485 port" | |
132 | depends on ETRAX_RS485 | |
51533b61 | 133 | help |
923dd2a4 | 134 | Configure serial port 0 to be a full duplex (four wires) RS-485 port. |
51533b61 MS |
135 | endchoice |
136 | ||
137 | config ETRAX_SER0_DTR_BIT | |
138 | string "Ser 0 DTR bit (empty = not used)" | |
139 | depends on ETRAX_SERIAL_PORT0 | |
140 | ||
141 | config ETRAX_SER0_RI_BIT | |
142 | string "Ser 0 RI bit (empty = not used)" | |
143 | depends on ETRAX_SERIAL_PORT0 | |
144 | ||
145 | config ETRAX_SER0_DSR_BIT | |
146 | string "Ser 0 DSR bit (empty = not used)" | |
147 | depends on ETRAX_SERIAL_PORT0 | |
148 | ||
149 | config ETRAX_SER0_CD_BIT | |
150 | string "Ser 0 CD bit (empty = not used)" | |
151 | depends on ETRAX_SERIAL_PORT0 | |
152 | ||
153 | config ETRAX_SERIAL_PORT1 | |
154 | bool "Serial port 1 enabled" | |
155 | depends on ETRAXFS_SERIAL | |
156 | help | |
157 | Enables the ETRAX FS serial driver for ser1 (ttyS1). | |
158 | ||
159 | choice | |
923dd2a4 | 160 | prompt "Ser1 default port type" |
51533b61 | 161 | depends on ETRAX_SERIAL_PORT1 |
923dd2a4 | 162 | default ETRAX_SERIAL_PORT1_TYPE_232 |
51533b61 | 163 | help |
923dd2a4 | 164 | Type of serial port. |
51533b61 | 165 | |
923dd2a4 JN |
166 | config ETRAX_SERIAL_PORT1_TYPE_232 |
167 | bool "Ser1 is a RS-232 port" | |
51533b61 | 168 | help |
923dd2a4 | 169 | Configure serial port 1 to be a RS-232 port. |
51533b61 | 170 | |
923dd2a4 JN |
171 | config ETRAX_SERIAL_PORT1_TYPE_485HD |
172 | bool "Ser1 is a half duplex RS-485 port" | |
173 | depends on ETRAX_RS485 | |
51533b61 | 174 | help |
923dd2a4 | 175 | Configure serial port 1 to be a half duplex (two wires) RS-485 port. |
51533b61 | 176 | |
923dd2a4 JN |
177 | config ETRAX_SERIAL_PORT1_TYPE_485FD |
178 | bool "Ser1 is a full duplex RS-485 port" | |
179 | depends on ETRAX_RS485 | |
51533b61 | 180 | help |
923dd2a4 | 181 | Configure serial port 1 to be a full duplex (four wires) RS-485 port. |
51533b61 MS |
182 | endchoice |
183 | ||
184 | config ETRAX_SER1_DTR_BIT | |
185 | string "Ser 1 DTR bit (empty = not used)" | |
186 | depends on ETRAX_SERIAL_PORT1 | |
187 | ||
188 | config ETRAX_SER1_RI_BIT | |
189 | string "Ser 1 RI bit (empty = not used)" | |
190 | depends on ETRAX_SERIAL_PORT1 | |
191 | ||
192 | config ETRAX_SER1_DSR_BIT | |
193 | string "Ser 1 DSR bit (empty = not used)" | |
194 | depends on ETRAX_SERIAL_PORT1 | |
195 | ||
196 | config ETRAX_SER1_CD_BIT | |
197 | string "Ser 1 CD bit (empty = not used)" | |
198 | depends on ETRAX_SERIAL_PORT1 | |
199 | ||
200 | config ETRAX_SERIAL_PORT2 | |
201 | bool "Serial port 2 enabled" | |
202 | depends on ETRAXFS_SERIAL | |
203 | help | |
204 | Enables the ETRAX FS serial driver for ser2 (ttyS2). | |
205 | ||
206 | choice | |
923dd2a4 | 207 | prompt "Ser2 default port type" |
51533b61 | 208 | depends on ETRAX_SERIAL_PORT2 |
923dd2a4 | 209 | default ETRAX_SERIAL_PORT2_TYPE_232 |
51533b61 | 210 | help |
923dd2a4 | 211 | What DMA channel to use for ser2 |
51533b61 | 212 | |
923dd2a4 JN |
213 | config ETRAX_SERIAL_PORT2_TYPE_232 |
214 | bool "Ser2 is a RS-232 port" | |
51533b61 | 215 | help |
923dd2a4 | 216 | Configure serial port 2 to be a RS-232 port. |
51533b61 | 217 | |
923dd2a4 JN |
218 | config ETRAX_SERIAL_PORT2_TYPE_485HD |
219 | bool "Ser2 is a half duplex RS-485 port" | |
220 | depends on ETRAX_RS485 | |
51533b61 | 221 | help |
923dd2a4 | 222 | Configure serial port 2 to be a half duplex (two wires) RS-485 port. |
51533b61 | 223 | |
923dd2a4 JN |
224 | config ETRAX_SERIAL_PORT2_TYPE_485FD |
225 | bool "Ser2 is a full duplex RS-485 port" | |
226 | depends on ETRAX_RS485 | |
51533b61 | 227 | help |
923dd2a4 | 228 | Configure serial port 2 to be a full duplex (four wires) RS-485 port. |
51533b61 MS |
229 | endchoice |
230 | ||
923dd2a4 | 231 | |
51533b61 MS |
232 | config ETRAX_SER2_DTR_BIT |
233 | string "Ser 2 DTR bit (empty = not used)" | |
234 | depends on ETRAX_SERIAL_PORT2 | |
235 | ||
236 | config ETRAX_SER2_RI_BIT | |
237 | string "Ser 2 RI bit (empty = not used)" | |
238 | depends on ETRAX_SERIAL_PORT2 | |
239 | ||
240 | config ETRAX_SER2_DSR_BIT | |
241 | string "Ser 2 DSR bit (empty = not used)" | |
242 | depends on ETRAX_SERIAL_PORT2 | |
243 | ||
244 | config ETRAX_SER2_CD_BIT | |
245 | string "Ser 2 CD bit (empty = not used)" | |
246 | depends on ETRAX_SERIAL_PORT2 | |
247 | ||
248 | config ETRAX_SERIAL_PORT3 | |
249 | bool "Serial port 3 enabled" | |
250 | depends on ETRAXFS_SERIAL | |
251 | help | |
252 | Enables the ETRAX FS serial driver for ser3 (ttyS3). | |
253 | ||
254 | choice | |
923dd2a4 | 255 | prompt "Ser3 default port type" |
51533b61 | 256 | depends on ETRAX_SERIAL_PORT3 |
923dd2a4 | 257 | default ETRAX_SERIAL_PORT3_TYPE_232 |
51533b61 MS |
258 | help |
259 | What DMA channel to use for ser3. | |
260 | ||
923dd2a4 JN |
261 | config ETRAX_SERIAL_PORT3_TYPE_232 |
262 | bool "Ser3 is a RS-232 port" | |
263 | help | |
264 | Configure serial port 3 to be a RS-232 port. | |
51533b61 | 265 | |
923dd2a4 JN |
266 | config ETRAX_SERIAL_PORT3_TYPE_485HD |
267 | bool "Ser3 is a half duplex RS-485 port" | |
268 | depends on ETRAX_RS485 | |
269 | help | |
270 | Configure serial port 3 to be a half duplex (two wires) RS-485 port. | |
271 | ||
272 | config ETRAX_SERIAL_PORT3_TYPE_485FD | |
273 | bool "Ser3 is a full duplex RS-485 port" | |
274 | depends on ETRAX_RS485 | |
51533b61 | 275 | help |
923dd2a4 JN |
276 | Configure serial port 3 to be a full duplex (four wires) RS-485 port. |
277 | endchoice | |
51533b61 | 278 | |
923dd2a4 JN |
279 | config ETRAX_SER3_DTR_BIT |
280 | string "Ser 3 DTR bit (empty = not used)" | |
281 | depends on ETRAX_SERIAL_PORT3 | |
282 | ||
283 | config ETRAX_SER3_RI_BIT | |
284 | string "Ser 3 RI bit (empty = not used)" | |
51533b61 | 285 | depends on ETRAX_SERIAL_PORT3 |
923dd2a4 JN |
286 | |
287 | config ETRAX_SER3_DSR_BIT | |
288 | string "Ser 3 DSR bit (empty = not used)" | |
289 | depends on ETRAX_SERIAL_PORT3 | |
290 | ||
291 | config ETRAX_SER3_CD_BIT | |
292 | string "Ser 3 CD bit (empty = not used)" | |
293 | depends on ETRAX_SERIAL_PORT3 | |
294 | ||
295 | config ETRAX_SERIAL_PORT4 | |
296 | bool "Serial port 4 enabled" | |
297 | depends on ETRAXFS_SERIAL && CRIS_MACH_ARTPEC3 | |
51533b61 | 298 | help |
923dd2a4 | 299 | Enables the ETRAX FS serial driver for ser4 (ttyS4). |
51533b61 | 300 | |
923dd2a4 JN |
301 | choice |
302 | prompt "Ser4 default port type" | |
303 | depends on ETRAX_SERIAL_PORT4 | |
304 | default ETRAX_SERIAL_PORT4_TYPE_232 | |
305 | help | |
306 | What DMA channel to use for ser4. | |
307 | ||
308 | config ETRAX_SERIAL_PORT4_TYPE_232 | |
309 | bool "Ser4 is a RS-232 port" | |
310 | help | |
311 | Configure serial port 4 to be a RS-232 port. | |
312 | ||
313 | config ETRAX_SERIAL_PORT4_TYPE_485HD | |
314 | bool "Ser4 is a half duplex RS-485 port" | |
315 | depends on ETRAX_RS485 | |
316 | help | |
317 | Configure serial port 4 to be a half duplex (two wires) RS-485 port. | |
318 | ||
319 | config ETRAX_SERIAL_PORT4_TYPE_485FD | |
320 | bool "Ser4 is a full duplex RS-485 port" | |
321 | depends on ETRAX_RS485 | |
322 | help | |
323 | Configure serial port 4 to be a full duplex (four wires) RS-485 port. | |
51533b61 MS |
324 | endchoice |
325 | ||
326 | choice | |
923dd2a4 JN |
327 | prompt "Ser4 DMA in channel " |
328 | depends on ETRAX_SERIAL_PORT4 | |
329 | default ETRAX_SERIAL_PORT4_NO_DMA_IN | |
330 | help | |
331 | What DMA channel to use for ser4. | |
332 | ||
51533b61 | 333 | |
923dd2a4 JN |
334 | config ETRAX_SERIAL_PORT4_NO_DMA_IN |
335 | bool "Ser4 uses no DMA for input" | |
51533b61 | 336 | help |
923dd2a4 | 337 | Do not use DMA for ser4 input. |
51533b61 | 338 | |
923dd2a4 JN |
339 | config ETRAX_SERIAL_PORT4_DMA9_IN |
340 | bool "Ser4 uses DMA9 for input" | |
341 | depends on ETRAX_SERIAL_PORT4 | |
51533b61 | 342 | help |
923dd2a4 | 343 | Enables the DMA9 input channel for ser4 (ttyS4). |
51533b61 | 344 | If you do not enable DMA, an interrupt for each character will be |
692105b8 | 345 | used when receiving data. |
51533b61 MS |
346 | Normally you want to use DMA, unless you use the DMA channel for |
347 | something else. | |
348 | ||
349 | endchoice | |
350 | ||
923dd2a4 JN |
351 | config ETRAX_SER4_DTR_BIT |
352 | string "Ser 4 DTR bit (empty = not used)" | |
353 | depends on ETRAX_SERIAL_PORT4 | |
51533b61 | 354 | |
923dd2a4 JN |
355 | config ETRAX_SER4_RI_BIT |
356 | string "Ser 4 RI bit (empty = not used)" | |
357 | depends on ETRAX_SERIAL_PORT4 | |
51533b61 | 358 | |
923dd2a4 JN |
359 | config ETRAX_SER4_DSR_BIT |
360 | string "Ser 4 DSR bit (empty = not used)" | |
361 | depends on ETRAX_SERIAL_PORT4 | |
51533b61 | 362 | |
d708b41c | 363 | config ETRAX_SER4_CD_BIT |
923dd2a4 JN |
364 | string "Ser 4 CD bit (empty = not used)" |
365 | depends on ETRAX_SERIAL_PORT4 | |
51533b61 | 366 | |
51533b61 MS |
367 | config ETRAX_SYNCHRONOUS_SERIAL |
368 | bool "Synchronous serial-port support" | |
369 | depends on ETRAX_ARCH_V32 | |
370 | help | |
371 | Enables the ETRAX FS synchronous serial driver. | |
372 | ||
373 | config ETRAX_SYNCHRONOUS_SERIAL_PORT0 | |
374 | bool "Synchronous serial port 0 enabled" | |
375 | depends on ETRAX_SYNCHRONOUS_SERIAL | |
376 | help | |
377 | Enabled synchronous serial port 0. | |
378 | ||
379 | config ETRAX_SYNCHRONOUS_SERIAL0_DMA | |
380 | bool "Enable DMA on synchronous serial port 0." | |
381 | depends on ETRAX_SYNCHRONOUS_SERIAL_PORT0 | |
382 | help | |
383 | A synchronous serial port can run in manual or DMA mode. | |
384 | Selecting this option will make it run in DMA mode. | |
385 | ||
386 | config ETRAX_SYNCHRONOUS_SERIAL_PORT1 | |
387 | bool "Synchronous serial port 1 enabled" | |
923dd2a4 | 388 | depends on ETRAX_SYNCHRONOUS_SERIAL && ETRAXFS |
51533b61 MS |
389 | help |
390 | Enabled synchronous serial port 1. | |
391 | ||
392 | config ETRAX_SYNCHRONOUS_SERIAL1_DMA | |
393 | bool "Enable DMA on synchronous serial port 1." | |
394 | depends on ETRAX_SYNCHRONOUS_SERIAL_PORT1 | |
395 | help | |
396 | A synchronous serial port can run in manual or DMA mode. | |
397 | Selecting this option will make it run in DMA mode. | |
398 | ||
923dd2a4 JN |
399 | config ETRAX_AXISFLASHMAP |
400 | bool "Axis flash-map support" | |
401 | depends on ETRAX_ARCH_V32 | |
402 | select MTD | |
403 | select MTD_CFI | |
404 | select MTD_CFI_AMDSTD | |
405 | select MTD_JEDECPROBE | |
923dd2a4 | 406 | select MTD_BLOCK |
923dd2a4 JN |
407 | select MTD_COMPLEX_MAPPINGS |
408 | help | |
409 | This option enables MTD mapping of flash devices. Needed to use | |
410 | flash memories. If unsure, say Y. | |
411 | ||
412 | config ETRAX_AXISFLASHMAP_MTD0WHOLE | |
413 | bool "MTD0 is whole boot flash device" | |
414 | depends on ETRAX_AXISFLASHMAP | |
415 | default N | |
416 | help | |
417 | When this option is not set, mtd0 refers to the first partition | |
418 | on the boot flash device. When set, mtd0 refers to the whole | |
419 | device, with mtd1 referring to the first partition etc. | |
420 | ||
51533b61 MS |
421 | config 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 | ||
432 | config ETRAX_NANDFLASH | |
433 | bool "NAND flash support" | |
434 | depends on ETRAX_ARCH_V32 | |
435 | select MTD_NAND | |
436 | select MTD_NAND_IDS | |
437 | help | |
438 | This option enables MTD mapping of NAND flash devices. Needed to use | |
439 | NAND flash memories. If unsure, say Y. | |
440 | ||
923dd2a4 JN |
441 | config ETRAX_NANDBOOT |
442 | bool "Boot from NAND flash" | |
443 | depends on ETRAX_NANDFLASH | |
444 | help | |
445 | This options enables booting from NAND flash devices. | |
446 | Say Y if your boot code, kernel and root file system is in | |
447 | NAND flash. Say N if they are in NOR flash. | |
448 | ||
51533b61 MS |
449 | config ETRAX_I2C |
450 | bool "I2C driver" | |
451 | depends on ETRAX_ARCH_V32 | |
452 | help | |
923dd2a4 | 453 | This option enables the I2C driver used by e.g. the RTC driver. |
51533b61 | 454 | |
923dd2a4 | 455 | config ETRAX_V32_I2C_DATA_PORT |
51533b61 MS |
456 | string "I2C data pin" |
457 | depends on ETRAX_I2C | |
458 | help | |
459 | The pin to use for I2C data. | |
460 | ||
923dd2a4 | 461 | config ETRAX_V32_I2C_CLK_PORT |
51533b61 MS |
462 | string "I2C clock pin" |
463 | depends on ETRAX_I2C | |
464 | help | |
465 | The pin to use for I2C clock. | |
466 | ||
51533b61 MS |
467 | config ETRAX_GPIO |
468 | bool "GPIO support" | |
469 | depends on ETRAX_ARCH_V32 | |
470 | ---help--- | |
471 | Enables the ETRAX general port device (major 120, minors 0-4). | |
472 | You can use this driver to access the general port bits. It supports | |
473 | these ioctl's: | |
474 | #include <linux/etraxgpio.h> | |
475 | fd = open("/dev/gpioa", O_RDWR); // or /dev/gpiob | |
476 | ioctl(fd, _IO(ETRAXGPIO_IOCTYPE, IO_SETBITS), bits_to_set); | |
477 | ioctl(fd, _IO(ETRAXGPIO_IOCTYPE, IO_CLRBITS), bits_to_clear); | |
478 | err = ioctl(fd, _IO(ETRAXGPIO_IOCTYPE, IO_READ_INBITS), &val); | |
479 | Remember that you need to setup the port directions appropriately in | |
480 | the General configuration. | |
481 | ||
923dd2a4 JN |
482 | config ETRAX_VIRTUAL_GPIO |
483 | bool "Virtual GPIO support" | |
51533b61 | 484 | depends on ETRAX_GPIO |
51533b61 | 485 | help |
923dd2a4 JN |
486 | Enables the virtual Etrax general port device (major 120, minor 6). |
487 | It uses an I/O expander for the I2C-bus. | |
488 | ||
489 | config ETRAX_VIRTUAL_GPIO_INTERRUPT_PA_PIN | |
490 | int "Virtual GPIO interrupt pin on PA pin" | |
491 | range 0 7 | |
492 | depends on ETRAX_VIRTUAL_GPIO | |
493 | help | |
494 | The pin to use on PA for virtual gpio interrupt. | |
51533b61 MS |
495 | |
496 | config ETRAX_PA_CHANGEABLE_DIR | |
497 | hex "PA user changeable dir mask" | |
498 | depends on ETRAX_GPIO | |
923dd2a4 JN |
499 | default "0x00" if ETRAXFS |
500 | default "0x00000000" if !ETRAXFS | |
51533b61 MS |
501 | help |
502 | This is a bitmask (8 bits) with information of what bits in PA that a | |
503 | user can change direction on using ioctl's. | |
504 | Bit set = changeable. | |
923dd2a4 | 505 | You probably want 0 here, but it depends on your hardware. |
51533b61 MS |
506 | |
507 | config ETRAX_PA_CHANGEABLE_BITS | |
508 | hex "PA user changeable bits mask" | |
509 | depends on ETRAX_GPIO | |
923dd2a4 JN |
510 | default "0x00" if ETRAXFS |
511 | default "0x00000000" if !ETRAXFS | |
51533b61 MS |
512 | help |
513 | This is a bitmask (8 bits) with information of what bits in PA | |
514 | that a user can change the value on using ioctl's. | |
515 | Bit set = changeable. | |
516 | ||
517 | config ETRAX_PB_CHANGEABLE_DIR | |
518 | hex "PB user changeable dir mask" | |
519 | depends on ETRAX_GPIO | |
923dd2a4 JN |
520 | default "0x00000" if ETRAXFS |
521 | default "0x00000000" if !ETRAXFS | |
51533b61 MS |
522 | help |
523 | This is a bitmask (18 bits) with information of what bits in PB | |
524 | that a user can change direction on using ioctl's. | |
525 | Bit set = changeable. | |
923dd2a4 | 526 | You probably want 0 here, but it depends on your hardware. |
51533b61 MS |
527 | |
528 | config ETRAX_PB_CHANGEABLE_BITS | |
529 | hex "PB user changeable bits mask" | |
530 | depends on ETRAX_GPIO | |
923dd2a4 JN |
531 | default "0x00000" if ETRAXFS |
532 | default "0x00000000" if !ETRAXFS | |
51533b61 MS |
533 | help |
534 | This is a bitmask (18 bits) with information of what bits in PB | |
535 | that a user can change the value on using ioctl's. | |
536 | Bit set = changeable. | |
537 | ||
538 | config ETRAX_PC_CHANGEABLE_DIR | |
539 | hex "PC user changeable dir mask" | |
540 | depends on ETRAX_GPIO | |
923dd2a4 JN |
541 | default "0x00000" if ETRAXFS |
542 | default "0x00000000" if !ETRAXFS | |
51533b61 MS |
543 | help |
544 | This is a bitmask (18 bits) with information of what bits in PC | |
545 | that a user can change direction on using ioctl's. | |
546 | Bit set = changeable. | |
923dd2a4 | 547 | You probably want 0 here, but it depends on your hardware. |
51533b61 MS |
548 | |
549 | config ETRAX_PC_CHANGEABLE_BITS | |
550 | hex "PC user changeable bits mask" | |
551 | depends on ETRAX_GPIO | |
923dd2a4 JN |
552 | default "0x00000" if ETRAXFS |
553 | default "0x00000000" if ETRAXFS | |
51533b61 MS |
554 | help |
555 | This is a bitmask (18 bits) with information of what bits in PC | |
556 | that a user can change the value on using ioctl's. | |
557 | Bit set = changeable. | |
558 | ||
559 | config ETRAX_PD_CHANGEABLE_DIR | |
560 | hex "PD user changeable dir mask" | |
923dd2a4 | 561 | depends on ETRAX_GPIO && ETRAXFS |
51533b61 MS |
562 | default "0x00000" |
563 | help | |
564 | This is a bitmask (18 bits) with information of what bits in PD | |
565 | that a user can change direction on using ioctl's. | |
566 | Bit set = changeable. | |
567 | You probably want 0x00000 here, but it depends on your hardware. | |
568 | ||
569 | config ETRAX_PD_CHANGEABLE_BITS | |
570 | hex "PD user changeable bits mask" | |
923dd2a4 | 571 | depends on ETRAX_GPIO && ETRAXFS |
51533b61 MS |
572 | default "0x00000" |
573 | help | |
574 | This is a bitmask (18 bits) with information of what bits in PD | |
575 | that a user can change the value on using ioctl's. | |
576 | Bit set = changeable. | |
577 | ||
578 | config ETRAX_PE_CHANGEABLE_DIR | |
579 | hex "PE user changeable dir mask" | |
923dd2a4 | 580 | depends on ETRAX_GPIO && ETRAXFS |
51533b61 MS |
581 | default "0x00000" |
582 | help | |
583 | This is a bitmask (18 bits) with information of what bits in PE | |
584 | that a user can change direction on using ioctl's. | |
585 | Bit set = changeable. | |
586 | You probably want 0x00000 here, but it depends on your hardware. | |
587 | ||
588 | config ETRAX_PE_CHANGEABLE_BITS | |
589 | hex "PE user changeable bits mask" | |
923dd2a4 | 590 | depends on ETRAX_GPIO && ETRAXFS |
51533b61 MS |
591 | default "0x00000" |
592 | help | |
593 | This is a bitmask (18 bits) with information of what bits in PE | |
594 | that a user can change the value on using ioctl's. | |
595 | Bit set = changeable. | |
596 | ||
923dd2a4 JN |
597 | config ETRAX_PV_CHANGEABLE_DIR |
598 | hex "PV user changeable dir mask" | |
599 | depends on ETRAX_VIRTUAL_GPIO | |
600 | default "0x0000" | |
601 | help | |
602 | This is a bitmask (16 bits) with information of what bits in PV | |
603 | that a user can change direction on using ioctl's. | |
604 | Bit set = changeable. | |
605 | You probably want 0x0000 here, but it depends on your hardware. | |
606 | ||
607 | config ETRAX_PV_CHANGEABLE_BITS | |
608 | hex "PV user changeable bits mask" | |
609 | depends on ETRAX_VIRTUAL_GPIO | |
610 | default "0x0000" | |
611 | help | |
612 | This is a bitmask (16 bits) with information of what bits in PV | |
613 | that a user can change the value on using ioctl's. | |
614 | Bit set = changeable. | |
615 | ||
51533b61 MS |
616 | config ETRAX_CARDBUS |
617 | bool "Cardbus support" | |
618 | depends on ETRAX_ARCH_V32 | |
51533b61 | 619 | select HOTPLUG |
51533b61 | 620 | help |
3dde6ad8 | 621 | Enabled the ETRAX Cardbus driver. |
51533b61 MS |
622 | |
623 | config PCI | |
624 | bool | |
625 | depends on ETRAX_CARDBUS | |
626 | default y | |
8fa8b9fb | 627 | select HAVE_GENERIC_DMA_COHERENT |
51533b61 MS |
628 | |
629 | config ETRAX_IOP_FW_LOAD | |
630 | tristate "IO-processor hotplug firmware loading support" | |
631 | depends on ETRAX_ARCH_V32 | |
632 | select FW_LOADER | |
633 | help | |
634 | Enables IO-processor hotplug firmware loading support. | |
635 | ||
636 | config ETRAX_STREAMCOPROC | |
637 | tristate "Stream co-processor driver enabled" | |
638 | depends on ETRAX_ARCH_V32 | |
639 | help | |
640 | This option enables a driver for the stream co-processor | |
641 | for cryptographic operations. | |
2d33d563 | 642 | |
923dd2a4 JN |
643 | source drivers/mmc/Kconfig |
644 | ||
645 | config ETRAX_MMC_IOP | |
646 | tristate "MMC/SD host driver using IO-processor" | |
647 | depends on ETRAX_ARCH_V32 && MMC | |
648 | help | |
649 | This option enables the SD/MMC host controller interface. | |
650 | The host controller is implemented using the built in | |
651 | IO-Processor. Only the SPU is used in this implementation. | |
652 | ||
653 | config ETRAX_SPI_MMC | |
654 | # Make this one of several "choices" (possible simultaneously but | |
655 | # suggested uniquely) when an IOP driver emerges for "real" MMC/SD | |
656 | # protocol support. | |
657 | tristate | |
658 | depends on !ETRAX_MMC_IOP | |
659 | default MMC | |
660 | select SPI | |
661 | select MMC_SPI | |
662 | select ETRAX_SPI_MMC_BOARD | |
663 | ||
664 | # For the parts that can't be a module (due to restrictions in | |
665 | # framework elsewhere). | |
666 | config ETRAX_SPI_MMC_BOARD | |
667 | boolean | |
668 | default n | |
669 | ||
670 | # While the board info is MMC_SPI only, the drivers are written to be | |
671 | # independent of MMC_SPI, so we'll keep SPI non-dependent on the | |
672 | # MMC_SPI config choices (well, except for a single depends-on-line | |
673 | # for the board-info file until a separate non-MMC SPI board file | |
674 | # emerges). | |
675 | # FIXME: When that happens, we'll need to be able to ask for and | |
676 | # configure non-MMC SPI ports together with MMC_SPI ports (if multiple | |
677 | # SPI ports are enabled). | |
678 | ||
679 | config SPI_ETRAX_SSER | |
680 | tristate | |
366a2445 | 681 | depends on SPI_MASTER && ETRAX_ARCH_V32 |
923dd2a4 JN |
682 | select SPI_BITBANG |
683 | help | |
684 | This enables using an synchronous serial (sser) port as a | |
685 | SPI master controller on Axis ETRAX FS and later. The | |
686 | driver can be configured to use any sser port. | |
687 | ||
688 | config SPI_ETRAX_GPIO | |
689 | tristate | |
366a2445 | 690 | depends on SPI_MASTER && ETRAX_ARCH_V32 |
923dd2a4 JN |
691 | select SPI_BITBANG |
692 | help | |
693 | This enables using GPIO pins port as a SPI master controller | |
694 | on Axis ETRAX FS and later. The driver can be configured to | |
695 | use any GPIO pins. | |
696 | ||
697 | config ETRAX_SPI_SSER0 | |
698 | tristate "SPI using synchronous serial port 0 (sser0)" | |
699 | depends on ETRAX_SPI_MMC | |
700 | default m if MMC_SPI=m | |
701 | default y if MMC_SPI=y | |
702 | default y if MMC_SPI=n | |
703 | select SPI_ETRAX_SSER | |
704 | help | |
705 | Say Y for an MMC/SD socket connected to synchronous serial port 0, | |
706 | or for devices using the SPI protocol on that port. Say m if you | |
707 | want to build it as a module, which will be named spi_crisv32_sser. | |
708 | (You need to select MMC separately.) | |
709 | ||
710 | config ETRAX_SPI_SSER0_DMA | |
711 | bool "DMA for SPI on sser0 enabled" | |
712 | depends on ETRAX_SPI_SSER0 | |
713 | depends on !ETRAX_SERIAL_PORT1_DMA4_OUT && !ETRAX_SERIAL_PORT1_DMA5_IN | |
714 | default y | |
715 | help | |
716 | Say Y if using DMA (dma4/dma5) for SPI on synchronous serial port 0. | |
717 | ||
718 | config ETRAX_SPI_MMC_CD_SSER0_PIN | |
719 | string "MMC/SD card detect pin for SPI on sser0" | |
720 | depends on ETRAX_SPI_SSER0 && MMC_SPI | |
721 | default "pd11" | |
722 | help | |
723 | The pin to use for SD/MMC card detect. This pin should be pulled up | |
724 | and grounded when a card is present. If defined as " " (space), no | |
725 | pin is selected. A card must then always be inserted for proper | |
726 | action. | |
727 | ||
728 | config ETRAX_SPI_MMC_WP_SSER0_PIN | |
729 | string "MMC/SD card write-protect pin for SPI on sser0" | |
730 | depends on ETRAX_SPI_SSER0 && MMC_SPI | |
731 | default "pd10" | |
732 | help | |
733 | The pin to use for the SD/MMC write-protect signal for a memory | |
734 | card. If defined as " " (space), the card is considered writable. | |
735 | ||
736 | config ETRAX_SPI_SSER1 | |
737 | tristate "SPI using synchronous serial port 1 (sser1)" | |
738 | depends on ETRAX_SPI_MMC | |
739 | default m if MMC_SPI=m && ETRAX_SPI_SSER0=n | |
740 | default y if MMC_SPI=y && ETRAX_SPI_SSER0=n | |
741 | default y if MMC_SPI=n && ETRAX_SPI_SSER0=n | |
742 | select SPI_ETRAX_SSER | |
743 | help | |
744 | Say Y for an MMC/SD socket connected to synchronous serial port 1, | |
745 | or for devices using the SPI protocol on that port. Say m if you | |
746 | want to build it as a module, which will be named spi_crisv32_sser. | |
747 | (You need to select MMC separately.) | |
748 | ||
749 | config ETRAX_SPI_SSER1_DMA | |
750 | bool "DMA for SPI on sser1 enabled" | |
751 | depends on ETRAX_SPI_SSER1 && !ETRAX_ETHERNET_IFACE1 | |
752 | depends on !ETRAX_SERIAL_PORT0_DMA6_OUT && !ETRAX_SERIAL_PORT0_DMA7_IN | |
753 | default y | |
754 | help | |
755 | Say Y if using DMA (dma6/dma7) for SPI on synchronous serial port 1. | |
756 | ||
757 | config ETRAX_SPI_MMC_CD_SSER1_PIN | |
758 | string "MMC/SD card detect pin for SPI on sser1" | |
759 | depends on ETRAX_SPI_SSER1 && MMC_SPI | |
760 | default "pd12" | |
761 | help | |
762 | The pin to use for SD/MMC card detect. This pin should be pulled up | |
763 | and grounded when a card is present. If defined as " " (space), no | |
764 | pin is selected. A card must then always be inserted for proper | |
765 | action. | |
766 | ||
767 | config ETRAX_SPI_MMC_WP_SSER1_PIN | |
768 | string "MMC/SD card write-protect pin for SPI on sser1" | |
769 | depends on ETRAX_SPI_SSER1 && MMC_SPI | |
770 | default "pd9" | |
771 | help | |
772 | The pin to use for the SD/MMC write-protect signal for a memory | |
773 | card. If defined as " " (space), the card is considered writable. | |
774 | ||
775 | config ETRAX_SPI_GPIO | |
776 | tristate "Bitbanged SPI using gpio pins" | |
777 | depends on ETRAX_SPI_MMC | |
778 | select SPI_ETRAX_GPIO | |
779 | default m if MMC_SPI=m && ETRAX_SPI_SSER0=n && ETRAX_SPI_SSER1=n | |
780 | default y if MMC_SPI=y && ETRAX_SPI_SSER0=n && ETRAX_SPI_SSER1=n | |
781 | default y if MMC_SPI=n && ETRAX_SPI_SSER0=n && ETRAX_SPI_SSER1=n | |
782 | help | |
783 | Say Y for an MMC/SD socket connected to general I/O pins (but not | |
784 | a complete synchronous serial ports), or for devices using the SPI | |
785 | protocol on general I/O pins. Slow and slows down the system. | |
786 | Say m to build it as a module, which will be called spi_crisv32_gpio. | |
787 | (You need to select MMC separately.) | |
788 | ||
789 | # The default match that of sser0, only because that's how it was tested. | |
790 | config ETRAX_SPI_CS_PIN | |
791 | string "SPI chip select pin" | |
792 | depends on ETRAX_SPI_GPIO | |
793 | default "pc3" | |
794 | help | |
795 | The pin to use for SPI chip select. | |
796 | ||
797 | config ETRAX_SPI_CLK_PIN | |
798 | string "SPI clock pin" | |
799 | depends on ETRAX_SPI_GPIO | |
800 | default "pc1" | |
801 | help | |
802 | The pin to use for the SPI clock. | |
803 | ||
804 | config ETRAX_SPI_DATAIN_PIN | |
805 | string "SPI MISO (data in) pin" | |
806 | depends on ETRAX_SPI_GPIO | |
807 | default "pc16" | |
808 | help | |
809 | The pin to use for SPI data in from the device. | |
810 | ||
811 | config ETRAX_SPI_DATAOUT_PIN | |
812 | string "SPI MOSI (data out) pin" | |
813 | depends on ETRAX_SPI_GPIO | |
814 | default "pc0" | |
815 | help | |
816 | The pin to use for SPI data out to the device. | |
817 | ||
818 | config ETRAX_SPI_MMC_CD_GPIO_PIN | |
819 | string "MMC/SD card detect pin for SPI using gpio (space for none)" | |
820 | depends on ETRAX_SPI_GPIO && MMC_SPI | |
821 | default "pd11" | |
822 | help | |
823 | The pin to use for SD/MMC card detect. This pin should be pulled up | |
824 | and grounded when a card is present. If defined as " " (space), no | |
825 | pin is selected. A card must then always be inserted for proper | |
826 | action. | |
827 | ||
828 | config ETRAX_SPI_MMC_WP_GPIO_PIN | |
829 | string "MMC/SD card write-protect pin for SPI using gpio (space for none)" | |
830 | depends on ETRAX_SPI_GPIO && MMC_SPI | |
831 | default "pd10" | |
832 | help | |
833 | The pin to use for the SD/MMC write-protect signal for a memory | |
834 | card. If defined as " " (space), the card is considered writable. | |
835 | ||
836 | # Avoid choices causing non-working configs by conditionalizing the inclusion. | |
837 | if ETRAX_SPI_MMC | |
838 | source drivers/spi/Kconfig | |
839 | endif | |
840 | ||
2d33d563 | 841 | endif |