blob: 4fc16b44fff26e5196729e61311464bc2c214b82 [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
Jesper Nilsson9f1ad512014-10-27 09:09:14 +0100111 select MTD_MTDRAM
Jesper Nilsson923dd2a2007-12-05 18:10:36 +0100112 help
113 This option enables MTD mapping of flash devices. Needed to use
114 flash memories. If unsure, say Y.
115
116config ETRAX_AXISFLASHMAP_MTD0WHOLE
117 bool "MTD0 is whole boot flash device"
118 depends on ETRAX_AXISFLASHMAP
Jesper Nilsson923dd2a2007-12-05 18:10:36 +0100119 help
120 When this option is not set, mtd0 refers to the first partition
121 on the boot flash device. When set, mtd0 refers to the whole
122 device, with mtd1 referring to the first partition etc.
123
Mikael Starvik51533b62005-07-27 11:44:44 -0700124config ETRAX_PTABLE_SECTOR
125 int "Byte-offset of partition table sector"
126 depends on ETRAX_AXISFLASHMAP
127 default "65536"
128 help
129 Byte-offset of the partition table in the first flash chip.
130 The default value is 64kB and should not be changed unless
131 you know exactly what you are doing. The only valid reason
132 for changing this is when the flash block size is bigger
133 than 64kB (e.g. when using two parallel 16 bit flashes).
134
135config ETRAX_NANDFLASH
136 bool "NAND flash support"
137 depends on ETRAX_ARCH_V32
138 select MTD_NAND
139 select MTD_NAND_IDS
140 help
141 This option enables MTD mapping of NAND flash devices. Needed to use
142 NAND flash memories. If unsure, say Y.
143
Jesper Nilsson923dd2a2007-12-05 18:10:36 +0100144config ETRAX_NANDBOOT
145 bool "Boot from NAND flash"
146 depends on ETRAX_NANDFLASH
147 help
148 This options enables booting from NAND flash devices.
149 Say Y if your boot code, kernel and root file system is in
150 NAND flash. Say N if they are in NOR flash.
151
Mikael Starvik51533b62005-07-27 11:44:44 -0700152config ETRAX_I2C
153 bool "I2C driver"
154 depends on ETRAX_ARCH_V32
155 help
Jesper Nilsson923dd2a2007-12-05 18:10:36 +0100156 This option enables the I2C driver used by e.g. the RTC driver.
Mikael Starvik51533b62005-07-27 11:44:44 -0700157
Jesper Nilsson923dd2a2007-12-05 18:10:36 +0100158config ETRAX_V32_I2C_DATA_PORT
Mikael Starvik51533b62005-07-27 11:44:44 -0700159 string "I2C data pin"
160 depends on ETRAX_I2C
161 help
162 The pin to use for I2C data.
163
Jesper Nilsson923dd2a2007-12-05 18:10:36 +0100164config ETRAX_V32_I2C_CLK_PORT
Mikael Starvik51533b62005-07-27 11:44:44 -0700165 string "I2C clock pin"
166 depends on ETRAX_I2C
167 help
168 The pin to use for I2C clock.
169
Mikael Starvik51533b62005-07-27 11:44:44 -0700170config ETRAX_GPIO
171 bool "GPIO support"
172 depends on ETRAX_ARCH_V32
173 ---help---
174 Enables the ETRAX general port device (major 120, minors 0-4).
175 You can use this driver to access the general port bits. It supports
176 these ioctl's:
177 #include <linux/etraxgpio.h>
178 fd = open("/dev/gpioa", O_RDWR); // or /dev/gpiob
179 ioctl(fd, _IO(ETRAXGPIO_IOCTYPE, IO_SETBITS), bits_to_set);
180 ioctl(fd, _IO(ETRAXGPIO_IOCTYPE, IO_CLRBITS), bits_to_clear);
181 err = ioctl(fd, _IO(ETRAXGPIO_IOCTYPE, IO_READ_INBITS), &val);
182 Remember that you need to setup the port directions appropriately in
183 the General configuration.
184
Jesper Nilsson923dd2a2007-12-05 18:10:36 +0100185config ETRAX_VIRTUAL_GPIO
186 bool "Virtual GPIO support"
Mikael Starvik51533b62005-07-27 11:44:44 -0700187 depends on ETRAX_GPIO
Mikael Starvik51533b62005-07-27 11:44:44 -0700188 help
Jesper Nilsson923dd2a2007-12-05 18:10:36 +0100189 Enables the virtual Etrax general port device (major 120, minor 6).
190 It uses an I/O expander for the I2C-bus.
191
192config ETRAX_VIRTUAL_GPIO_INTERRUPT_PA_PIN
193 int "Virtual GPIO interrupt pin on PA pin"
194 range 0 7
195 depends on ETRAX_VIRTUAL_GPIO
196 help
197 The pin to use on PA for virtual gpio interrupt.
Mikael Starvik51533b62005-07-27 11:44:44 -0700198
199config ETRAX_PA_CHANGEABLE_DIR
200 hex "PA user changeable dir mask"
201 depends on ETRAX_GPIO
Jesper Nilsson923dd2a2007-12-05 18:10:36 +0100202 default "0x00" if ETRAXFS
203 default "0x00000000" if !ETRAXFS
Mikael Starvik51533b62005-07-27 11:44:44 -0700204 help
205 This is a bitmask (8 bits) with information of what bits in PA that a
206 user can change direction on using ioctl's.
207 Bit set = changeable.
Jesper Nilsson923dd2a2007-12-05 18:10:36 +0100208 You probably want 0 here, but it depends on your hardware.
Mikael Starvik51533b62005-07-27 11:44:44 -0700209
210config ETRAX_PA_CHANGEABLE_BITS
211 hex "PA user changeable bits mask"
212 depends on ETRAX_GPIO
Jesper Nilsson923dd2a2007-12-05 18:10:36 +0100213 default "0x00" if ETRAXFS
214 default "0x00000000" if !ETRAXFS
Mikael Starvik51533b62005-07-27 11:44:44 -0700215 help
216 This is a bitmask (8 bits) with information of what bits in PA
217 that a user can change the value on using ioctl's.
218 Bit set = changeable.
219
220config ETRAX_PB_CHANGEABLE_DIR
221 hex "PB user changeable dir mask"
222 depends on ETRAX_GPIO
Jesper Nilsson923dd2a2007-12-05 18:10:36 +0100223 default "0x00000" if ETRAXFS
224 default "0x00000000" if !ETRAXFS
Mikael Starvik51533b62005-07-27 11:44:44 -0700225 help
226 This is a bitmask (18 bits) with information of what bits in PB
227 that a user can change direction on using ioctl's.
228 Bit set = changeable.
Jesper Nilsson923dd2a2007-12-05 18:10:36 +0100229 You probably want 0 here, but it depends on your hardware.
Mikael Starvik51533b62005-07-27 11:44:44 -0700230
231config ETRAX_PB_CHANGEABLE_BITS
232 hex "PB user changeable bits mask"
233 depends on ETRAX_GPIO
Jesper Nilsson923dd2a2007-12-05 18:10:36 +0100234 default "0x00000" if ETRAXFS
235 default "0x00000000" if !ETRAXFS
Mikael Starvik51533b62005-07-27 11:44:44 -0700236 help
237 This is a bitmask (18 bits) with information of what bits in PB
238 that a user can change the value on using ioctl's.
239 Bit set = changeable.
240
241config ETRAX_PC_CHANGEABLE_DIR
242 hex "PC user changeable dir mask"
243 depends on ETRAX_GPIO
Jesper Nilsson923dd2a2007-12-05 18:10:36 +0100244 default "0x00000" if ETRAXFS
245 default "0x00000000" if !ETRAXFS
Mikael Starvik51533b62005-07-27 11:44:44 -0700246 help
247 This is a bitmask (18 bits) with information of what bits in PC
248 that a user can change direction on using ioctl's.
249 Bit set = changeable.
Jesper Nilsson923dd2a2007-12-05 18:10:36 +0100250 You probably want 0 here, but it depends on your hardware.
Mikael Starvik51533b62005-07-27 11:44:44 -0700251
252config ETRAX_PC_CHANGEABLE_BITS
253 hex "PC user changeable bits mask"
254 depends on ETRAX_GPIO
Jesper Nilsson923dd2a2007-12-05 18:10:36 +0100255 default "0x00000" if ETRAXFS
256 default "0x00000000" if ETRAXFS
Mikael Starvik51533b62005-07-27 11:44:44 -0700257 help
258 This is a bitmask (18 bits) with information of what bits in PC
259 that a user can change the value on using ioctl's.
260 Bit set = changeable.
261
262config ETRAX_PD_CHANGEABLE_DIR
263 hex "PD user changeable dir mask"
Jesper Nilsson923dd2a2007-12-05 18:10:36 +0100264 depends on ETRAX_GPIO && ETRAXFS
Mikael Starvik51533b62005-07-27 11:44:44 -0700265 default "0x00000"
266 help
267 This is a bitmask (18 bits) with information of what bits in PD
268 that a user can change direction on using ioctl's.
269 Bit set = changeable.
270 You probably want 0x00000 here, but it depends on your hardware.
271
272config ETRAX_PD_CHANGEABLE_BITS
273 hex "PD user changeable bits mask"
Jesper Nilsson923dd2a2007-12-05 18:10:36 +0100274 depends on ETRAX_GPIO && ETRAXFS
Mikael Starvik51533b62005-07-27 11:44:44 -0700275 default "0x00000"
276 help
277 This is a bitmask (18 bits) with information of what bits in PD
278 that a user can change the value on using ioctl's.
279 Bit set = changeable.
280
281config ETRAX_PE_CHANGEABLE_DIR
282 hex "PE user changeable dir mask"
Jesper Nilsson923dd2a2007-12-05 18:10:36 +0100283 depends on ETRAX_GPIO && ETRAXFS
Mikael Starvik51533b62005-07-27 11:44:44 -0700284 default "0x00000"
285 help
286 This is a bitmask (18 bits) with information of what bits in PE
287 that a user can change direction on using ioctl's.
288 Bit set = changeable.
289 You probably want 0x00000 here, but it depends on your hardware.
290
291config ETRAX_PE_CHANGEABLE_BITS
292 hex "PE user changeable bits mask"
Jesper Nilsson923dd2a2007-12-05 18:10:36 +0100293 depends on ETRAX_GPIO && ETRAXFS
Mikael Starvik51533b62005-07-27 11:44:44 -0700294 default "0x00000"
295 help
296 This is a bitmask (18 bits) with information of what bits in PE
297 that a user can change the value on using ioctl's.
298 Bit set = changeable.
299
Jesper Nilsson923dd2a2007-12-05 18:10:36 +0100300config ETRAX_PV_CHANGEABLE_DIR
301 hex "PV user changeable dir mask"
302 depends on ETRAX_VIRTUAL_GPIO
303 default "0x0000"
304 help
305 This is a bitmask (16 bits) with information of what bits in PV
306 that a user can change direction on using ioctl's.
307 Bit set = changeable.
308 You probably want 0x0000 here, but it depends on your hardware.
309
310config ETRAX_PV_CHANGEABLE_BITS
311 hex "PV user changeable bits mask"
312 depends on ETRAX_VIRTUAL_GPIO
313 default "0x0000"
314 help
315 This is a bitmask (16 bits) with information of what bits in PV
316 that a user can change the value on using ioctl's.
317 Bit set = changeable.
318
Mikael Starvik51533b62005-07-27 11:44:44 -0700319config ETRAX_CARDBUS
320 bool "Cardbus support"
321 depends on ETRAX_ARCH_V32
Mikael Starvik51533b62005-07-27 11:44:44 -0700322 help
David Sterba3dde6ad2007-05-09 07:12:20 +0200323 Enabled the ETRAX Cardbus driver.
Mikael Starvik51533b62005-07-27 11:44:44 -0700324
325config PCI
326 bool
327 depends on ETRAX_CARDBUS
328 default y
Dmitry Baryshkov8fa8b9f2008-07-20 15:00:32 +0400329 select HAVE_GENERIC_DMA_COHERENT
Mikael Starvik51533b62005-07-27 11:44:44 -0700330
331config ETRAX_IOP_FW_LOAD
332 tristate "IO-processor hotplug firmware loading support"
333 depends on ETRAX_ARCH_V32
334 select FW_LOADER
335 help
336 Enables IO-processor hotplug firmware loading support.
337
338config ETRAX_STREAMCOPROC
339 tristate "Stream co-processor driver enabled"
340 depends on ETRAX_ARCH_V32
341 help
342 This option enables a driver for the stream co-processor
343 for cryptographic operations.
Jesper Nilsson2d33d562008-02-04 22:30:31 -0800344
Jesper Nilsson923dd2a2007-12-05 18:10:36 +0100345config ETRAX_MMC_IOP
346 tristate "MMC/SD host driver using IO-processor"
347 depends on ETRAX_ARCH_V32 && MMC
348 help
349 This option enables the SD/MMC host controller interface.
350 The host controller is implemented using the built in
351 IO-Processor. Only the SPU is used in this implementation.
352
353config ETRAX_SPI_MMC
354# Make this one of several "choices" (possible simultaneously but
355# suggested uniquely) when an IOP driver emerges for "real" MMC/SD
356# protocol support.
357 tristate
358 depends on !ETRAX_MMC_IOP
359 default MMC
360 select SPI
361 select MMC_SPI
Jesper Nilsson923dd2a2007-12-05 18:10:36 +0100362
363# While the board info is MMC_SPI only, the drivers are written to be
364# independent of MMC_SPI, so we'll keep SPI non-dependent on the
365# MMC_SPI config choices (well, except for a single depends-on-line
366# for the board-info file until a separate non-MMC SPI board file
367# emerges).
368# FIXME: When that happens, we'll need to be able to ask for and
369# configure non-MMC SPI ports together with MMC_SPI ports (if multiple
370# SPI ports are enabled).
371
372config SPI_ETRAX_SSER
373 tristate
Kees Cook366a2442012-10-02 11:16:29 -0700374 depends on SPI_MASTER && ETRAX_ARCH_V32
Jesper Nilsson923dd2a2007-12-05 18:10:36 +0100375 select SPI_BITBANG
376 help
377 This enables using an synchronous serial (sser) port as a
378 SPI master controller on Axis ETRAX FS and later. The
379 driver can be configured to use any sser port.
380
381config SPI_ETRAX_GPIO
382 tristate
Kees Cook366a2442012-10-02 11:16:29 -0700383 depends on SPI_MASTER && ETRAX_ARCH_V32
Jesper Nilsson923dd2a2007-12-05 18:10:36 +0100384 select SPI_BITBANG
385 help
386 This enables using GPIO pins port as a SPI master controller
387 on Axis ETRAX FS and later. The driver can be configured to
388 use any GPIO pins.
389
390config ETRAX_SPI_SSER0
391 tristate "SPI using synchronous serial port 0 (sser0)"
392 depends on ETRAX_SPI_MMC
393 default m if MMC_SPI=m
394 default y if MMC_SPI=y
395 default y if MMC_SPI=n
396 select SPI_ETRAX_SSER
397 help
398 Say Y for an MMC/SD socket connected to synchronous serial port 0,
399 or for devices using the SPI protocol on that port. Say m if you
400 want to build it as a module, which will be named spi_crisv32_sser.
401 (You need to select MMC separately.)
402
Jesper Nilsson923dd2a2007-12-05 18:10:36 +0100403config ETRAX_SPI_SSER1
404 tristate "SPI using synchronous serial port 1 (sser1)"
405 depends on ETRAX_SPI_MMC
406 default m if MMC_SPI=m && ETRAX_SPI_SSER0=n
407 default y if MMC_SPI=y && ETRAX_SPI_SSER0=n
408 default y if MMC_SPI=n && ETRAX_SPI_SSER0=n
409 select SPI_ETRAX_SSER
410 help
411 Say Y for an MMC/SD socket connected to synchronous serial port 1,
412 or for devices using the SPI protocol on that port. Say m if you
413 want to build it as a module, which will be named spi_crisv32_sser.
414 (You need to select MMC separately.)
415
Jesper Nilsson923dd2a2007-12-05 18:10:36 +0100416config ETRAX_SPI_GPIO
417 tristate "Bitbanged SPI using gpio pins"
418 depends on ETRAX_SPI_MMC
419 select SPI_ETRAX_GPIO
420 default m if MMC_SPI=m && ETRAX_SPI_SSER0=n && ETRAX_SPI_SSER1=n
421 default y if MMC_SPI=y && ETRAX_SPI_SSER0=n && ETRAX_SPI_SSER1=n
422 default y if MMC_SPI=n && ETRAX_SPI_SSER0=n && ETRAX_SPI_SSER1=n
423 help
424 Say Y for an MMC/SD socket connected to general I/O pins (but not
425 a complete synchronous serial ports), or for devices using the SPI
426 protocol on general I/O pins. Slow and slows down the system.
427 Say m to build it as a module, which will be called spi_crisv32_gpio.
428 (You need to select MMC separately.)
429
Jesper Nilsson2d33d562008-02-04 22:30:31 -0800430endif