Commit | Line | Data |
---|---|---|
2d33d563 JN |
1 | if ETRAX_ARCH_V32 |
2 | ||
51533b61 MS |
3 | config ETRAX_ETHERNET |
4 | bool "Ethernet support" | |
2206209e | 5 | depends on ETRAX_ARCH_V32 && NETDEVICES |
923dd2a4 | 6 | select MII |
51533b61 MS |
7 | help |
8 | This option enables the ETRAX FS built-in 10/100Mbit Ethernet | |
9 | controller. | |
10 | ||
923dd2a4 JN |
11 | config ETRAX_NO_PHY |
12 | bool "PHY not present" | |
51533b61 | 13 | depends on ETRAX_ETHERNET |
51533b61 | 14 | help |
923dd2a4 JN |
15 | This option disables all MDIO communication with an ethernet |
16 | transceiver connected to the MII interface. This option shall | |
17 | typically be enabled if the MII interface is connected to a | |
18 | switch. This option should normally be disabled. If enabled, | |
19 | speed and duplex will be locked to 100 Mbit and full duplex. | |
51533b61 | 20 | |
51533b61 MS |
21 | config ETRAXFS_SERIAL |
22 | bool "Serial-port support" | |
23 | depends on ETRAX_ARCH_V32 | |
923dd2a4 JN |
24 | select SERIAL_CORE |
25 | select SERIAL_CORE_CONSOLE | |
51533b61 MS |
26 | help |
27 | Enables the ETRAX FS serial driver for ser0 (ttyS0) | |
28 | You probably want this enabled. | |
29 | ||
923dd2a4 JN |
30 | config ETRAX_RS485 |
31 | bool "RS-485 support" | |
32 | depends on ETRAXFS_SERIAL | |
33 | help | |
34 | Enables support for RS-485 serial communication. | |
35 | ||
36 | config ETRAX_RS485_DISABLE_RECEIVER | |
37 | bool "Disable serial receiver" | |
38 | depends on ETRAX_RS485 | |
39 | help | |
40 | It is necessary to disable the serial receiver to avoid serial | |
41 | loopback. Not all products are able to do this in software only. | |
42 | ||
51533b61 MS |
43 | config ETRAX_SERIAL_PORT0 |
44 | bool "Serial port 0 enabled" | |
45 | depends on ETRAXFS_SERIAL | |
46 | help | |
47 | Enables the ETRAX FS serial driver for ser0 (ttyS0) | |
48 | Normally you want this on. You can control what DMA channels to use | |
49 | if you do not need DMA to something else. | |
50 | ser0 can use dma4 or dma6 for output and dma5 or dma7 for input. | |
51 | ||
51533b61 MS |
52 | config ETRAX_SERIAL_PORT1 |
53 | bool "Serial port 1 enabled" | |
54 | depends on ETRAXFS_SERIAL | |
55 | help | |
56 | Enables the ETRAX FS serial driver for ser1 (ttyS1). | |
57 | ||
51533b61 MS |
58 | config ETRAX_SERIAL_PORT2 |
59 | bool "Serial port 2 enabled" | |
60 | depends on ETRAXFS_SERIAL | |
61 | help | |
62 | Enables the ETRAX FS serial driver for ser2 (ttyS2). | |
63 | ||
51533b61 MS |
64 | config ETRAX_SERIAL_PORT3 |
65 | bool "Serial port 3 enabled" | |
66 | depends on ETRAXFS_SERIAL | |
67 | help | |
68 | Enables the ETRAX FS serial driver for ser3 (ttyS3). | |
69 | ||
51533b61 MS |
70 | config ETRAX_SYNCHRONOUS_SERIAL |
71 | bool "Synchronous serial-port support" | |
72 | depends on ETRAX_ARCH_V32 | |
73 | help | |
74 | Enables the ETRAX FS synchronous serial driver. | |
75 | ||
76 | config ETRAX_SYNCHRONOUS_SERIAL_PORT0 | |
77 | bool "Synchronous serial port 0 enabled" | |
78 | depends on ETRAX_SYNCHRONOUS_SERIAL | |
79 | help | |
80 | Enabled synchronous serial port 0. | |
81 | ||
82 | config ETRAX_SYNCHRONOUS_SERIAL0_DMA | |
83 | bool "Enable DMA on synchronous serial port 0." | |
84 | depends on ETRAX_SYNCHRONOUS_SERIAL_PORT0 | |
85 | help | |
86 | A synchronous serial port can run in manual or DMA mode. | |
87 | Selecting this option will make it run in DMA mode. | |
88 | ||
89 | config ETRAX_SYNCHRONOUS_SERIAL_PORT1 | |
90 | bool "Synchronous serial port 1 enabled" | |
923dd2a4 | 91 | depends on ETRAX_SYNCHRONOUS_SERIAL && ETRAXFS |
51533b61 MS |
92 | help |
93 | Enabled synchronous serial port 1. | |
94 | ||
95 | config ETRAX_SYNCHRONOUS_SERIAL1_DMA | |
96 | bool "Enable DMA on synchronous serial port 1." | |
97 | depends on ETRAX_SYNCHRONOUS_SERIAL_PORT1 | |
98 | help | |
99 | A synchronous serial port can run in manual or DMA mode. | |
100 | Selecting this option will make it run in DMA mode. | |
101 | ||
923dd2a4 JN |
102 | config ETRAX_AXISFLASHMAP |
103 | bool "Axis flash-map support" | |
104 | depends on ETRAX_ARCH_V32 | |
105 | select MTD | |
106 | select MTD_CFI | |
107 | select MTD_CFI_AMDSTD | |
108 | select MTD_JEDECPROBE | |
923dd2a4 | 109 | select MTD_BLOCK |
923dd2a4 JN |
110 | select MTD_COMPLEX_MAPPINGS |
111 | help | |
112 | This option enables MTD mapping of flash devices. Needed to use | |
113 | flash memories. If unsure, say Y. | |
114 | ||
115 | config ETRAX_AXISFLASHMAP_MTD0WHOLE | |
116 | bool "MTD0 is whole boot flash device" | |
117 | depends on ETRAX_AXISFLASHMAP | |
923dd2a4 JN |
118 | help |
119 | When this option is not set, mtd0 refers to the first partition | |
120 | on the boot flash device. When set, mtd0 refers to the whole | |
121 | device, with mtd1 referring to the first partition etc. | |
122 | ||
51533b61 MS |
123 | config ETRAX_PTABLE_SECTOR |
124 | int "Byte-offset of partition table sector" | |
125 | depends on ETRAX_AXISFLASHMAP | |
126 | default "65536" | |
127 | help | |
128 | Byte-offset of the partition table in the first flash chip. | |
129 | The default value is 64kB and should not be changed unless | |
130 | you know exactly what you are doing. The only valid reason | |
131 | for changing this is when the flash block size is bigger | |
132 | than 64kB (e.g. when using two parallel 16 bit flashes). | |
133 | ||
134 | config ETRAX_NANDFLASH | |
135 | bool "NAND flash support" | |
136 | depends on ETRAX_ARCH_V32 | |
137 | select MTD_NAND | |
138 | select MTD_NAND_IDS | |
139 | help | |
140 | This option enables MTD mapping of NAND flash devices. Needed to use | |
141 | NAND flash memories. If unsure, say Y. | |
142 | ||
923dd2a4 JN |
143 | config ETRAX_NANDBOOT |
144 | bool "Boot from NAND flash" | |
145 | depends on ETRAX_NANDFLASH | |
146 | help | |
147 | This options enables booting from NAND flash devices. | |
148 | Say Y if your boot code, kernel and root file system is in | |
149 | NAND flash. Say N if they are in NOR flash. | |
150 | ||
51533b61 MS |
151 | config ETRAX_I2C |
152 | bool "I2C driver" | |
153 | depends on ETRAX_ARCH_V32 | |
154 | help | |
923dd2a4 | 155 | This option enables the I2C driver used by e.g. the RTC driver. |
51533b61 | 156 | |
923dd2a4 | 157 | config ETRAX_V32_I2C_DATA_PORT |
51533b61 MS |
158 | string "I2C data pin" |
159 | depends on ETRAX_I2C | |
160 | help | |
161 | The pin to use for I2C data. | |
162 | ||
923dd2a4 | 163 | config ETRAX_V32_I2C_CLK_PORT |
51533b61 MS |
164 | string "I2C clock pin" |
165 | depends on ETRAX_I2C | |
166 | help | |
167 | The pin to use for I2C clock. | |
168 | ||
51533b61 MS |
169 | config ETRAX_GPIO |
170 | bool "GPIO support" | |
171 | depends on ETRAX_ARCH_V32 | |
172 | ---help--- | |
173 | Enables the ETRAX general port device (major 120, minors 0-4). | |
174 | You can use this driver to access the general port bits. It supports | |
175 | these ioctl's: | |
176 | #include <linux/etraxgpio.h> | |
177 | fd = open("/dev/gpioa", O_RDWR); // or /dev/gpiob | |
178 | ioctl(fd, _IO(ETRAXGPIO_IOCTYPE, IO_SETBITS), bits_to_set); | |
179 | ioctl(fd, _IO(ETRAXGPIO_IOCTYPE, IO_CLRBITS), bits_to_clear); | |
180 | err = ioctl(fd, _IO(ETRAXGPIO_IOCTYPE, IO_READ_INBITS), &val); | |
181 | Remember that you need to setup the port directions appropriately in | |
182 | the General configuration. | |
183 | ||
923dd2a4 JN |
184 | config ETRAX_VIRTUAL_GPIO |
185 | bool "Virtual GPIO support" | |
51533b61 | 186 | depends on ETRAX_GPIO |
51533b61 | 187 | help |
923dd2a4 JN |
188 | Enables the virtual Etrax general port device (major 120, minor 6). |
189 | It uses an I/O expander for the I2C-bus. | |
190 | ||
191 | config ETRAX_VIRTUAL_GPIO_INTERRUPT_PA_PIN | |
192 | int "Virtual GPIO interrupt pin on PA pin" | |
193 | range 0 7 | |
194 | depends on ETRAX_VIRTUAL_GPIO | |
195 | help | |
196 | The pin to use on PA for virtual gpio interrupt. | |
51533b61 MS |
197 | |
198 | config ETRAX_PA_CHANGEABLE_DIR | |
199 | hex "PA user changeable dir mask" | |
200 | depends on ETRAX_GPIO | |
923dd2a4 JN |
201 | default "0x00" if ETRAXFS |
202 | default "0x00000000" if !ETRAXFS | |
51533b61 MS |
203 | help |
204 | This is a bitmask (8 bits) with information of what bits in PA that a | |
205 | user can change direction on using ioctl's. | |
206 | Bit set = changeable. | |
923dd2a4 | 207 | You probably want 0 here, but it depends on your hardware. |
51533b61 MS |
208 | |
209 | config ETRAX_PA_CHANGEABLE_BITS | |
210 | hex "PA user changeable bits mask" | |
211 | depends on ETRAX_GPIO | |
923dd2a4 JN |
212 | default "0x00" if ETRAXFS |
213 | default "0x00000000" if !ETRAXFS | |
51533b61 MS |
214 | help |
215 | This is a bitmask (8 bits) with information of what bits in PA | |
216 | that a user can change the value on using ioctl's. | |
217 | Bit set = changeable. | |
218 | ||
219 | config ETRAX_PB_CHANGEABLE_DIR | |
220 | hex "PB user changeable dir mask" | |
221 | depends on ETRAX_GPIO | |
923dd2a4 JN |
222 | default "0x00000" if ETRAXFS |
223 | default "0x00000000" if !ETRAXFS | |
51533b61 MS |
224 | help |
225 | This is a bitmask (18 bits) with information of what bits in PB | |
226 | that a user can change direction on using ioctl's. | |
227 | Bit set = changeable. | |
923dd2a4 | 228 | You probably want 0 here, but it depends on your hardware. |
51533b61 MS |
229 | |
230 | config ETRAX_PB_CHANGEABLE_BITS | |
231 | hex "PB user changeable bits mask" | |
232 | depends on ETRAX_GPIO | |
923dd2a4 JN |
233 | default "0x00000" if ETRAXFS |
234 | default "0x00000000" if !ETRAXFS | |
51533b61 MS |
235 | help |
236 | This is a bitmask (18 bits) with information of what bits in PB | |
237 | that a user can change the value on using ioctl's. | |
238 | Bit set = changeable. | |
239 | ||
240 | config ETRAX_PC_CHANGEABLE_DIR | |
241 | hex "PC user changeable dir mask" | |
242 | depends on ETRAX_GPIO | |
923dd2a4 JN |
243 | default "0x00000" if ETRAXFS |
244 | default "0x00000000" if !ETRAXFS | |
51533b61 MS |
245 | help |
246 | This is a bitmask (18 bits) with information of what bits in PC | |
247 | that a user can change direction on using ioctl's. | |
248 | Bit set = changeable. | |
923dd2a4 | 249 | You probably want 0 here, but it depends on your hardware. |
51533b61 MS |
250 | |
251 | config ETRAX_PC_CHANGEABLE_BITS | |
252 | hex "PC user changeable bits mask" | |
253 | depends on ETRAX_GPIO | |
923dd2a4 JN |
254 | default "0x00000" if ETRAXFS |
255 | default "0x00000000" if ETRAXFS | |
51533b61 MS |
256 | help |
257 | This is a bitmask (18 bits) with information of what bits in PC | |
258 | that a user can change the value on using ioctl's. | |
259 | Bit set = changeable. | |
260 | ||
261 | config ETRAX_PD_CHANGEABLE_DIR | |
262 | hex "PD user changeable dir mask" | |
923dd2a4 | 263 | depends on ETRAX_GPIO && ETRAXFS |
51533b61 MS |
264 | default "0x00000" |
265 | help | |
266 | This is a bitmask (18 bits) with information of what bits in PD | |
267 | that a user can change direction on using ioctl's. | |
268 | Bit set = changeable. | |
269 | You probably want 0x00000 here, but it depends on your hardware. | |
270 | ||
271 | config ETRAX_PD_CHANGEABLE_BITS | |
272 | hex "PD user changeable bits mask" | |
923dd2a4 | 273 | depends on ETRAX_GPIO && ETRAXFS |
51533b61 MS |
274 | default "0x00000" |
275 | help | |
276 | This is a bitmask (18 bits) with information of what bits in PD | |
277 | that a user can change the value on using ioctl's. | |
278 | Bit set = changeable. | |
279 | ||
280 | config ETRAX_PE_CHANGEABLE_DIR | |
281 | hex "PE user changeable dir mask" | |
923dd2a4 | 282 | depends on ETRAX_GPIO && ETRAXFS |
51533b61 MS |
283 | default "0x00000" |
284 | help | |
285 | This is a bitmask (18 bits) with information of what bits in PE | |
286 | that a user can change direction on using ioctl's. | |
287 | Bit set = changeable. | |
288 | You probably want 0x00000 here, but it depends on your hardware. | |
289 | ||
290 | config ETRAX_PE_CHANGEABLE_BITS | |
291 | hex "PE user changeable bits mask" | |
923dd2a4 | 292 | depends on ETRAX_GPIO && ETRAXFS |
51533b61 MS |
293 | default "0x00000" |
294 | help | |
295 | This is a bitmask (18 bits) with information of what bits in PE | |
296 | that a user can change the value on using ioctl's. | |
297 | Bit set = changeable. | |
298 | ||
923dd2a4 JN |
299 | config ETRAX_PV_CHANGEABLE_DIR |
300 | hex "PV user changeable dir mask" | |
301 | depends on ETRAX_VIRTUAL_GPIO | |
302 | default "0x0000" | |
303 | help | |
304 | This is a bitmask (16 bits) with information of what bits in PV | |
305 | that a user can change direction on using ioctl's. | |
306 | Bit set = changeable. | |
307 | You probably want 0x0000 here, but it depends on your hardware. | |
308 | ||
309 | config ETRAX_PV_CHANGEABLE_BITS | |
310 | hex "PV user changeable bits mask" | |
311 | depends on ETRAX_VIRTUAL_GPIO | |
312 | default "0x0000" | |
313 | help | |
314 | This is a bitmask (16 bits) with information of what bits in PV | |
315 | that a user can change the value on using ioctl's. | |
316 | Bit set = changeable. | |
317 | ||
51533b61 MS |
318 | config ETRAX_CARDBUS |
319 | bool "Cardbus support" | |
320 | depends on ETRAX_ARCH_V32 | |
51533b61 | 321 | help |
3dde6ad8 | 322 | Enabled the ETRAX Cardbus driver. |
51533b61 MS |
323 | |
324 | config PCI | |
325 | bool | |
326 | depends on ETRAX_CARDBUS | |
327 | default y | |
8fa8b9fb | 328 | select HAVE_GENERIC_DMA_COHERENT |
51533b61 MS |
329 | |
330 | config ETRAX_IOP_FW_LOAD | |
331 | tristate "IO-processor hotplug firmware loading support" | |
332 | depends on ETRAX_ARCH_V32 | |
333 | select FW_LOADER | |
334 | help | |
335 | Enables IO-processor hotplug firmware loading support. | |
336 | ||
337 | config ETRAX_STREAMCOPROC | |
338 | tristate "Stream co-processor driver enabled" | |
339 | depends on ETRAX_ARCH_V32 | |
340 | help | |
341 | This option enables a driver for the stream co-processor | |
342 | for cryptographic operations. | |
2d33d563 | 343 | |
923dd2a4 JN |
344 | config ETRAX_MMC_IOP |
345 | tristate "MMC/SD host driver using IO-processor" | |
346 | depends on ETRAX_ARCH_V32 && MMC | |
347 | help | |
348 | This option enables the SD/MMC host controller interface. | |
349 | The host controller is implemented using the built in | |
350 | IO-Processor. Only the SPU is used in this implementation. | |
351 | ||
352 | config ETRAX_SPI_MMC | |
353 | # Make this one of several "choices" (possible simultaneously but | |
354 | # suggested uniquely) when an IOP driver emerges for "real" MMC/SD | |
355 | # protocol support. | |
356 | tristate | |
357 | depends on !ETRAX_MMC_IOP | |
358 | default MMC | |
359 | select SPI | |
360 | select MMC_SPI | |
361 | select ETRAX_SPI_MMC_BOARD | |
362 | ||
363 | # For the parts that can't be a module (due to restrictions in | |
364 | # framework elsewhere). | |
365 | config ETRAX_SPI_MMC_BOARD | |
366 | boolean | |
367 | default n | |
368 | ||
369 | # While the board info is MMC_SPI only, the drivers are written to be | |
370 | # independent of MMC_SPI, so we'll keep SPI non-dependent on the | |
371 | # MMC_SPI config choices (well, except for a single depends-on-line | |
372 | # for the board-info file until a separate non-MMC SPI board file | |
373 | # emerges). | |
374 | # FIXME: When that happens, we'll need to be able to ask for and | |
375 | # configure non-MMC SPI ports together with MMC_SPI ports (if multiple | |
376 | # SPI ports are enabled). | |
377 | ||
378 | config SPI_ETRAX_SSER | |
379 | tristate | |
366a2445 | 380 | depends on SPI_MASTER && ETRAX_ARCH_V32 |
923dd2a4 JN |
381 | select SPI_BITBANG |
382 | help | |
383 | This enables using an synchronous serial (sser) port as a | |
384 | SPI master controller on Axis ETRAX FS and later. The | |
385 | driver can be configured to use any sser port. | |
386 | ||
387 | config SPI_ETRAX_GPIO | |
388 | tristate | |
366a2445 | 389 | depends on SPI_MASTER && ETRAX_ARCH_V32 |
923dd2a4 JN |
390 | select SPI_BITBANG |
391 | help | |
392 | This enables using GPIO pins port as a SPI master controller | |
393 | on Axis ETRAX FS and later. The driver can be configured to | |
394 | use any GPIO pins. | |
395 | ||
396 | config ETRAX_SPI_SSER0 | |
397 | tristate "SPI using synchronous serial port 0 (sser0)" | |
398 | depends on ETRAX_SPI_MMC | |
399 | default m if MMC_SPI=m | |
400 | default y if MMC_SPI=y | |
401 | default y if MMC_SPI=n | |
402 | select SPI_ETRAX_SSER | |
403 | help | |
404 | Say Y for an MMC/SD socket connected to synchronous serial port 0, | |
405 | or for devices using the SPI protocol on that port. Say m if you | |
406 | want to build it as a module, which will be named spi_crisv32_sser. | |
407 | (You need to select MMC separately.) | |
408 | ||
923dd2a4 JN |
409 | config ETRAX_SPI_SSER1 |
410 | tristate "SPI using synchronous serial port 1 (sser1)" | |
411 | depends on ETRAX_SPI_MMC | |
412 | default m if MMC_SPI=m && ETRAX_SPI_SSER0=n | |
413 | default y if MMC_SPI=y && ETRAX_SPI_SSER0=n | |
414 | default y if MMC_SPI=n && ETRAX_SPI_SSER0=n | |
415 | select SPI_ETRAX_SSER | |
416 | help | |
417 | Say Y for an MMC/SD socket connected to synchronous serial port 1, | |
418 | or for devices using the SPI protocol on that port. Say m if you | |
419 | want to build it as a module, which will be named spi_crisv32_sser. | |
420 | (You need to select MMC separately.) | |
421 | ||
923dd2a4 JN |
422 | config ETRAX_SPI_GPIO |
423 | tristate "Bitbanged SPI using gpio pins" | |
424 | depends on ETRAX_SPI_MMC | |
425 | select SPI_ETRAX_GPIO | |
426 | default m if MMC_SPI=m && ETRAX_SPI_SSER0=n && ETRAX_SPI_SSER1=n | |
427 | default y if MMC_SPI=y && ETRAX_SPI_SSER0=n && ETRAX_SPI_SSER1=n | |
428 | default y if MMC_SPI=n && ETRAX_SPI_SSER0=n && ETRAX_SPI_SSER1=n | |
429 | help | |
430 | Say Y for an MMC/SD socket connected to general I/O pins (but not | |
431 | a complete synchronous serial ports), or for devices using the SPI | |
432 | protocol on general I/O pins. Slow and slows down the system. | |
433 | Say m to build it as a module, which will be called spi_crisv32_gpio. | |
434 | (You need to select MMC separately.) | |
435 | ||
2d33d563 | 436 | endif |