blob: 15a9ed1d579cf8ca10cbc38795c7a2b775449012 [file] [log] [blame]
Jesper Nilsson2d33d562008-02-04 22:30:31 -08001if ETRAX_ARCH_V32
2
Mikael Starvik51533b62005-07-27 11:44:44 -07003config ETRAX_ETHERNET
4 bool "Ethernet support"
Ben Hutchings22062092013-06-18 03:37:05 +01005 depends on ETRAX_ARCH_V32 && NETDEVICES
Jesper Nilsson923dd2a2007-12-05 18:10:36 +01006 select MII
Mikael Starvik51533b62005-07-27 11:44:44 -07007 help
8 This option enables the ETRAX FS built-in 10/100Mbit Ethernet
9 controller.
10
Jesper Nilsson923dd2a2007-12-05 18:10:36 +010011config ETRAX_NO_PHY
12 bool "PHY not present"
Mikael Starvik51533b62005-07-27 11:44:44 -070013 depends on ETRAX_ETHERNET
Mikael Starvik51533b62005-07-27 11:44:44 -070014 help
Jesper Nilsson923dd2a2007-12-05 18:10:36 +010015 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.
Mikael Starvik51533b62005-07-27 11:44:44 -070020
Mikael Starvik51533b62005-07-27 11:44:44 -070021config ETRAXFS_SERIAL
22 bool "Serial-port support"
23 depends on ETRAX_ARCH_V32
Jesper Nilsson923dd2a2007-12-05 18:10:36 +010024 select SERIAL_CORE
25 select SERIAL_CORE_CONSOLE
Mikael Starvik51533b62005-07-27 11:44:44 -070026 help
27 Enables the ETRAX FS serial driver for ser0 (ttyS0)
28 You probably want this enabled.
29
Jesper Nilsson923dd2a2007-12-05 18:10:36 +010030config ETRAX_RS485
31 bool "RS-485 support"
32 depends on ETRAXFS_SERIAL
33 help
34 Enables support for RS-485 serial communication.
35
36config 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
Mikael Starvik51533b62005-07-27 11:44:44 -070043config 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
Mikael Starvik51533b62005-07-27 11:44:44 -070052config 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
Mikael Starvik51533b62005-07-27 11:44:44 -070058config 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
Mikael Starvik51533b62005-07-27 11:44:44 -070064config 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
Mikael Starvik51533b62005-07-27 11:44:44 -070070config 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
76config 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
82config 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
89config ETRAX_SYNCHRONOUS_SERIAL_PORT1
90 bool "Synchronous serial port 1 enabled"
Jesper Nilsson923dd2a2007-12-05 18:10:36 +010091 depends on ETRAX_SYNCHRONOUS_SERIAL && ETRAXFS
Mikael Starvik51533b62005-07-27 11:44:44 -070092 help
93 Enabled synchronous serial port 1.
94
95config 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
Jesper Nilsson923dd2a2007-12-05 18:10:36 +0100102config 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
Jesper Nilsson923dd2a2007-12-05 18:10:36 +0100109 select MTD_BLOCK
Jesper Nilsson923dd2a2007-12-05 18:10:36 +0100110 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
115config ETRAX_AXISFLASHMAP_MTD0WHOLE
116 bool "MTD0 is whole boot flash device"
117 depends on ETRAX_AXISFLASHMAP
Jesper Nilsson923dd2a2007-12-05 18:10:36 +0100118 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
Mikael Starvik51533b62005-07-27 11:44:44 -0700123config 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
134config 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
Jesper Nilsson923dd2a2007-12-05 18:10:36 +0100143config 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
Mikael Starvik51533b62005-07-27 11:44:44 -0700151config ETRAX_I2C
152 bool "I2C driver"
153 depends on ETRAX_ARCH_V32
154 help
Jesper Nilsson923dd2a2007-12-05 18:10:36 +0100155 This option enables the I2C driver used by e.g. the RTC driver.
Mikael Starvik51533b62005-07-27 11:44:44 -0700156
Jesper Nilsson923dd2a2007-12-05 18:10:36 +0100157config ETRAX_V32_I2C_DATA_PORT
Mikael Starvik51533b62005-07-27 11:44:44 -0700158 string "I2C data pin"
159 depends on ETRAX_I2C
160 help
161 The pin to use for I2C data.
162
Jesper Nilsson923dd2a2007-12-05 18:10:36 +0100163config ETRAX_V32_I2C_CLK_PORT
Mikael Starvik51533b62005-07-27 11:44:44 -0700164 string "I2C clock pin"
165 depends on ETRAX_I2C
166 help
167 The pin to use for I2C clock.
168
Mikael Starvik51533b62005-07-27 11:44:44 -0700169config 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
Jesper Nilsson923dd2a2007-12-05 18:10:36 +0100184config ETRAX_VIRTUAL_GPIO
185 bool "Virtual GPIO support"
Mikael Starvik51533b62005-07-27 11:44:44 -0700186 depends on ETRAX_GPIO
Mikael Starvik51533b62005-07-27 11:44:44 -0700187 help
Jesper Nilsson923dd2a2007-12-05 18:10:36 +0100188 Enables the virtual Etrax general port device (major 120, minor 6).
189 It uses an I/O expander for the I2C-bus.
190
191config 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.
Mikael Starvik51533b62005-07-27 11:44:44 -0700197
198config ETRAX_PA_CHANGEABLE_DIR
199 hex "PA user changeable dir mask"
200 depends on ETRAX_GPIO
Jesper Nilsson923dd2a2007-12-05 18:10:36 +0100201 default "0x00" if ETRAXFS
202 default "0x00000000" if !ETRAXFS
Mikael Starvik51533b62005-07-27 11:44:44 -0700203 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.
Jesper Nilsson923dd2a2007-12-05 18:10:36 +0100207 You probably want 0 here, but it depends on your hardware.
Mikael Starvik51533b62005-07-27 11:44:44 -0700208
209config ETRAX_PA_CHANGEABLE_BITS
210 hex "PA user changeable bits mask"
211 depends on ETRAX_GPIO
Jesper Nilsson923dd2a2007-12-05 18:10:36 +0100212 default "0x00" if ETRAXFS
213 default "0x00000000" if !ETRAXFS
Mikael Starvik51533b62005-07-27 11:44:44 -0700214 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
219config ETRAX_PB_CHANGEABLE_DIR
220 hex "PB user changeable dir mask"
221 depends on ETRAX_GPIO
Jesper Nilsson923dd2a2007-12-05 18:10:36 +0100222 default "0x00000" if ETRAXFS
223 default "0x00000000" if !ETRAXFS
Mikael Starvik51533b62005-07-27 11:44:44 -0700224 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.
Jesper Nilsson923dd2a2007-12-05 18:10:36 +0100228 You probably want 0 here, but it depends on your hardware.
Mikael Starvik51533b62005-07-27 11:44:44 -0700229
230config ETRAX_PB_CHANGEABLE_BITS
231 hex "PB user changeable bits mask"
232 depends on ETRAX_GPIO
Jesper Nilsson923dd2a2007-12-05 18:10:36 +0100233 default "0x00000" if ETRAXFS
234 default "0x00000000" if !ETRAXFS
Mikael Starvik51533b62005-07-27 11:44:44 -0700235 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
240config ETRAX_PC_CHANGEABLE_DIR
241 hex "PC user changeable dir mask"
242 depends on ETRAX_GPIO
Jesper Nilsson923dd2a2007-12-05 18:10:36 +0100243 default "0x00000" if ETRAXFS
244 default "0x00000000" if !ETRAXFS
Mikael Starvik51533b62005-07-27 11:44:44 -0700245 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.
Jesper Nilsson923dd2a2007-12-05 18:10:36 +0100249 You probably want 0 here, but it depends on your hardware.
Mikael Starvik51533b62005-07-27 11:44:44 -0700250
251config ETRAX_PC_CHANGEABLE_BITS
252 hex "PC user changeable bits mask"
253 depends on ETRAX_GPIO
Jesper Nilsson923dd2a2007-12-05 18:10:36 +0100254 default "0x00000" if ETRAXFS
255 default "0x00000000" if ETRAXFS
Mikael Starvik51533b62005-07-27 11:44:44 -0700256 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
261config ETRAX_PD_CHANGEABLE_DIR
262 hex "PD user changeable dir mask"
Jesper Nilsson923dd2a2007-12-05 18:10:36 +0100263 depends on ETRAX_GPIO && ETRAXFS
Mikael Starvik51533b62005-07-27 11:44:44 -0700264 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
271config ETRAX_PD_CHANGEABLE_BITS
272 hex "PD user changeable bits mask"
Jesper Nilsson923dd2a2007-12-05 18:10:36 +0100273 depends on ETRAX_GPIO && ETRAXFS
Mikael Starvik51533b62005-07-27 11:44:44 -0700274 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
280config ETRAX_PE_CHANGEABLE_DIR
281 hex "PE user changeable dir mask"
Jesper Nilsson923dd2a2007-12-05 18:10:36 +0100282 depends on ETRAX_GPIO && ETRAXFS
Mikael Starvik51533b62005-07-27 11:44:44 -0700283 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
290config ETRAX_PE_CHANGEABLE_BITS
291 hex "PE user changeable bits mask"
Jesper Nilsson923dd2a2007-12-05 18:10:36 +0100292 depends on ETRAX_GPIO && ETRAXFS
Mikael Starvik51533b62005-07-27 11:44:44 -0700293 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
Jesper Nilsson923dd2a2007-12-05 18:10:36 +0100299config 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
309config 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
Mikael Starvik51533b62005-07-27 11:44:44 -0700318config ETRAX_CARDBUS
319 bool "Cardbus support"
320 depends on ETRAX_ARCH_V32
Mikael Starvik51533b62005-07-27 11:44:44 -0700321 help
David Sterba3dde6ad2007-05-09 07:12:20 +0200322 Enabled the ETRAX Cardbus driver.
Mikael Starvik51533b62005-07-27 11:44:44 -0700323
324config PCI
325 bool
326 depends on ETRAX_CARDBUS
327 default y
Dmitry Baryshkov8fa8b9f2008-07-20 15:00:32 +0400328 select HAVE_GENERIC_DMA_COHERENT
Mikael Starvik51533b62005-07-27 11:44:44 -0700329
330config 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
337config 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.
Jesper Nilsson2d33d562008-02-04 22:30:31 -0800343
Jesper Nilsson923dd2a2007-12-05 18:10:36 +0100344config 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
352config 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).
365config 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
378config SPI_ETRAX_SSER
379 tristate
Kees Cook366a2442012-10-02 11:16:29 -0700380 depends on SPI_MASTER && ETRAX_ARCH_V32
Jesper Nilsson923dd2a2007-12-05 18:10:36 +0100381 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
387config SPI_ETRAX_GPIO
388 tristate
Kees Cook366a2442012-10-02 11:16:29 -0700389 depends on SPI_MASTER && ETRAX_ARCH_V32
Jesper Nilsson923dd2a2007-12-05 18:10:36 +0100390 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
396config 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
Jesper Nilsson923dd2a2007-12-05 18:10:36 +0100409config 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
Jesper Nilsson923dd2a2007-12-05 18:10:36 +0100422config 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
Jesper Nilsson2d33d562008-02-04 22:30:31 -0800436endif