Kconfig 24.0 KB
Newer Older
1 2
if ETRAX_ARCH_V32

3 4 5 6
config ETRAX_ETHERNET
	bool "Ethernet support"
	depends on ETRAX_ARCH_V32
	select NET_ETHERNET
7
	select NET_CORE
8
	select MII
9 10 11 12
	help
	  This option enables the ETRAX FS built-in 10/100Mbit Ethernet
	  controller.

13 14
config ETRAX_NO_PHY
	bool "PHY not present"
15
	depends on ETRAX_ETHERNET
16
	default N
17
	help
18 19 20 21 22
	  This option disables all MDIO communication with an ethernet
	  transceiver connected to the MII interface. This option shall
	  typically be enabled if the MII interface is connected to a
	  switch. This option should normally be disabled. If enabled,
	  speed and duplex will be locked to 100 Mbit and full duplex.
23 24 25 26 27 28

config ETRAX_ETHERNET_IFACE0
	depends on ETRAX_ETHERNET
	bool "Enable network interface 0"

config ETRAX_ETHERNET_IFACE1
29
	depends on (ETRAX_ETHERNET && ETRAXFS)
30 31
	bool "Enable network interface 1 (uses DMA6 and DMA7)"

32 33 34 35
config ETRAX_ETHERNET_GBIT
	depends on (ETRAX_ETHERNET && CRIS_MACH_ARTPEC3)
	bool "Enable gigabit Ethernet support"

36
choice
37 38 39
	prompt "Eth0 led group"
	depends on ETRAX_ETHERNET_IFACE0
	default ETRAX_ETH0_USE_LEDGRP0
40

41 42 43
config ETRAX_ETH0_USE_LEDGRP0
	bool "Use LED grp 0"
	depends on ETRAX_NBR_LED_GRP_ONE || ETRAX_NBR_LED_GRP_TWO
44
	help
45
	  Use LED grp 0 for eth0
46

47 48 49 50 51
config ETRAX_ETH0_USE_LEDGRP1
	bool "Use LED grp 1"
	depends on ETRAX_NBR_LED_GRP_TWO
	help
	  Use LED grp 1 for eth0
52

53 54
config ETRAX_ETH0_USE_LEDGRPNULL
	bool "Use no LEDs for eth0"
55
	help
56 57 58 59 60 61 62
	  Use no LEDs for eth0
endchoice

choice
	prompt "Eth1 led group"
	depends on ETRAX_ETHERNET_IFACE1
	default ETRAX_ETH1_USE_LEDGRP1
63

64 65 66 67 68
config ETRAX_ETH1_USE_LEDGRP0
	bool "Use LED grp 0"
	depends on ETRAX_NBR_LED_GRP_ONE || ETRAX_NBR_LED_GRP_TWO
	help
	  Use LED grp 0 for eth1
69

70 71 72 73 74
config ETRAX_ETH1_USE_LEDGRP1
	bool "Use LED grp 1"
	depends on ETRAX_NBR_LED_GRP_TWO
	help
	  Use LED grp 1 for eth1
75

76 77 78 79
config ETRAX_ETH1_USE_LEDGRPNULL
	bool "Use no LEDs for eth1"
	help
	  Use no LEDs for eth1
80 81 82 83 84
endchoice

config ETRAXFS_SERIAL
	bool "Serial-port support"
	depends on ETRAX_ARCH_V32
85 86
	select SERIAL_CORE
	select SERIAL_CORE_CONSOLE
87 88 89 90
	help
	  Enables the ETRAX FS serial driver for ser0 (ttyS0)
	  You probably want this enabled.

91 92 93 94 95 96 97 98 99 100 101 102 103
config ETRAX_RS485
	bool "RS-485 support"
	depends on ETRAXFS_SERIAL
	help
	  Enables support for RS-485 serial communication.

config ETRAX_RS485_DISABLE_RECEIVER
	bool "Disable serial receiver"
	depends on ETRAX_RS485
	help
	  It is necessary to disable the serial receiver to avoid serial
	  loopback.  Not all products are able to do this in software only.

104 105 106 107 108 109 110 111 112 113
config ETRAX_SERIAL_PORT0
	bool "Serial port 0 enabled"
	depends on ETRAXFS_SERIAL
	help
	  Enables the ETRAX FS serial driver for ser0 (ttyS0)
	  Normally you want this on. You can control what DMA channels to use
	  if you do not need DMA to something else.
	  ser0 can use dma4 or dma6 for output and dma5 or dma7 for input.

choice
114
	prompt "Ser0 default port type "
115
	depends on ETRAX_SERIAL_PORT0
116
	default ETRAX_SERIAL_PORT0_TYPE_232
117
	help
118
	  Type of serial port.
119

120 121
config ETRAX_SERIAL_PORT0_TYPE_232
	bool "Ser0 is a RS-232 port"
122
	help
123
	  Configure serial port 0 to be a RS-232 port.
124

125 126 127
config ETRAX_SERIAL_PORT0_TYPE_485HD
	bool "Ser0 is a half duplex RS-485 port"
	depends on ETRAX_RS485
128
	help
129
	  Configure serial port 0 to be a half duplex (two wires) RS-485 port.
130

131 132 133
config ETRAX_SERIAL_PORT0_TYPE_485FD
	bool "Ser0 is a full duplex RS-485 port"
	depends on ETRAX_RS485
134
	help
135
	  Configure serial port 0 to be a full duplex (four wires) RS-485 port.
136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160
endchoice

config ETRAX_SER0_DTR_BIT
	string "Ser 0 DTR bit (empty = not used)"
	depends on ETRAX_SERIAL_PORT0

config ETRAX_SER0_RI_BIT
	string "Ser 0 RI bit (empty = not used)"
	depends on ETRAX_SERIAL_PORT0

config ETRAX_SER0_DSR_BIT
	string "Ser 0 DSR bit (empty = not used)"
	depends on ETRAX_SERIAL_PORT0

config ETRAX_SER0_CD_BIT
	string "Ser 0 CD bit (empty = not used)"
	depends on ETRAX_SERIAL_PORT0

config ETRAX_SERIAL_PORT1
	bool "Serial port 1 enabled"
	depends on ETRAXFS_SERIAL
	help
	  Enables the ETRAX FS serial driver for ser1 (ttyS1).

choice
161
	prompt "Ser1 default port type"
162
	depends on ETRAX_SERIAL_PORT1
163
	default ETRAX_SERIAL_PORT1_TYPE_232
164
	help
165
	  Type of serial port.
166

167 168
config ETRAX_SERIAL_PORT1_TYPE_232
	bool "Ser1 is a RS-232 port"
169
	help
170
	  Configure serial port 1 to be a RS-232 port.
171

172 173 174
config ETRAX_SERIAL_PORT1_TYPE_485HD
	bool "Ser1 is a half duplex RS-485 port"
	depends on ETRAX_RS485
175
	help
176
	  Configure serial port 1 to be a half duplex (two wires) RS-485 port.
177

178 179 180
config ETRAX_SERIAL_PORT1_TYPE_485FD
	bool "Ser1 is a full duplex RS-485 port"
	depends on ETRAX_RS485
181
	help
182
	  Configure serial port 1 to be a full duplex (four wires) RS-485 port.
183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207
endchoice

config ETRAX_SER1_DTR_BIT
	string "Ser 1 DTR bit (empty = not used)"
	depends on ETRAX_SERIAL_PORT1

config ETRAX_SER1_RI_BIT
	string "Ser 1 RI bit (empty = not used)"
	depends on ETRAX_SERIAL_PORT1

config ETRAX_SER1_DSR_BIT
	string "Ser 1 DSR bit (empty = not used)"
	depends on ETRAX_SERIAL_PORT1

config ETRAX_SER1_CD_BIT
	string "Ser 1 CD bit (empty = not used)"
	depends on ETRAX_SERIAL_PORT1

config ETRAX_SERIAL_PORT2
	bool "Serial port 2 enabled"
	depends on ETRAXFS_SERIAL
	help
	  Enables the ETRAX FS serial driver for ser2 (ttyS2).

choice
208
	prompt "Ser2 default port type"
209
	depends on ETRAX_SERIAL_PORT2
210
	default ETRAX_SERIAL_PORT2_TYPE_232
211
	help
212
	  What DMA channel to use for ser2
213

214 215
config ETRAX_SERIAL_PORT2_TYPE_232
	bool "Ser2 is a RS-232 port"
216
	help
217
	  Configure serial port 2 to be a RS-232 port.
218

219 220 221
config ETRAX_SERIAL_PORT2_TYPE_485HD
	bool "Ser2 is a half duplex RS-485 port"
	depends on ETRAX_RS485
222
	help
223
	  Configure serial port 2 to be a half duplex (two wires) RS-485 port.
224

225 226 227
config ETRAX_SERIAL_PORT2_TYPE_485FD
	bool "Ser2 is a full duplex RS-485 port"
	depends on ETRAX_RS485
228
	help
229
	  Configure serial port 2 to be a full duplex (four wires) RS-485 port.
230 231
endchoice

232

233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255
config ETRAX_SER2_DTR_BIT
	string "Ser 2 DTR bit (empty = not used)"
	depends on ETRAX_SERIAL_PORT2

config ETRAX_SER2_RI_BIT
	string "Ser 2 RI bit (empty = not used)"
	depends on ETRAX_SERIAL_PORT2

config ETRAX_SER2_DSR_BIT
	string "Ser 2 DSR bit (empty = not used)"
	depends on ETRAX_SERIAL_PORT2

config ETRAX_SER2_CD_BIT
	string "Ser 2 CD bit (empty = not used)"
	depends on ETRAX_SERIAL_PORT2

config ETRAX_SERIAL_PORT3
	bool "Serial port 3 enabled"
	depends on ETRAXFS_SERIAL
	help
	  Enables the ETRAX FS serial driver for ser3 (ttyS3).

choice
256
	prompt "Ser3 default port type"
257
	depends on ETRAX_SERIAL_PORT3
258
	default ETRAX_SERIAL_PORT3_TYPE_232
259 260 261
	help
	  What DMA channel to use for ser3.

262 263 264 265
config ETRAX_SERIAL_PORT3_TYPE_232
	bool "Ser3 is a RS-232 port"
	help
	  Configure serial port 3 to be a RS-232 port.
266

267 268 269 270 271 272 273 274 275
config ETRAX_SERIAL_PORT3_TYPE_485HD
	bool "Ser3 is a half duplex RS-485 port"
	depends on ETRAX_RS485
	help
	  Configure serial port 3 to be a half duplex (two wires) RS-485 port.

config ETRAX_SERIAL_PORT3_TYPE_485FD
	bool "Ser3 is a full duplex RS-485 port"
	depends on ETRAX_RS485
276
	help
277 278
	  Configure serial port 3 to be a full duplex (four wires) RS-485 port.
endchoice
279

280 281 282 283 284 285
config ETRAX_SER3_DTR_BIT
	string "Ser 3 DTR bit (empty = not used)"
	depends on ETRAX_SERIAL_PORT3

config ETRAX_SER3_RI_BIT
	string "Ser 3 RI bit (empty = not used)"
286
	depends on ETRAX_SERIAL_PORT3
287 288 289 290 291 292 293 294 295 296 297 298

config ETRAX_SER3_DSR_BIT
	string "Ser 3 DSR bit (empty = not used)"
	depends on ETRAX_SERIAL_PORT3

config ETRAX_SER3_CD_BIT
	string "Ser 3 CD bit (empty = not used)"
	depends on ETRAX_SERIAL_PORT3

config ETRAX_SERIAL_PORT4
	bool "Serial port 4 enabled"
	depends on ETRAXFS_SERIAL && CRIS_MACH_ARTPEC3
299
	help
300
	  Enables the ETRAX FS serial driver for ser4 (ttyS4).
301

302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324
choice
	prompt "Ser4 default port type"
	depends on ETRAX_SERIAL_PORT4
	default ETRAX_SERIAL_PORT4_TYPE_232
	help
	  What DMA channel to use for ser4.

config ETRAX_SERIAL_PORT4_TYPE_232
	bool "Ser4 is a RS-232 port"
	help
	  Configure serial port 4 to be a RS-232 port.

config ETRAX_SERIAL_PORT4_TYPE_485HD
	bool "Ser4 is a half duplex RS-485 port"
	depends on ETRAX_RS485
	help
	  Configure serial port 4 to be a half duplex (two wires) RS-485 port.

config ETRAX_SERIAL_PORT4_TYPE_485FD
	bool "Ser4 is a full duplex RS-485 port"
	depends on ETRAX_RS485
	help
	  Configure serial port 4 to be a full duplex (four wires) RS-485 port.
325 326 327
endchoice

choice
328 329 330 331 332 333
	prompt "Ser4 DMA in channel "
	depends on ETRAX_SERIAL_PORT4
	default ETRAX_SERIAL_PORT4_NO_DMA_IN
	help
	  What DMA channel to use for ser4.

334

335 336
config ETRAX_SERIAL_PORT4_NO_DMA_IN
	bool "Ser4 uses no DMA for input"
337
	help
338
	  Do not use DMA for ser4 input.
339

340 341 342
config ETRAX_SERIAL_PORT4_DMA9_IN
	bool "Ser4 uses DMA9 for input"
	depends on ETRAX_SERIAL_PORT4
343
	help
344
	  Enables the DMA9 input channel for ser4 (ttyS4).
345
	  If you do not enable DMA, an interrupt for each character will be
346
	  used when receiving data.
347 348 349 350 351
	  Normally you want to use DMA, unless you use the DMA channel for
	  something else.

endchoice

352 353 354
config ETRAX_SER4_DTR_BIT
	string "Ser 4 DTR bit (empty = not used)"
	depends on ETRAX_SERIAL_PORT4
355

356 357 358
config ETRAX_SER4_RI_BIT
	string "Ser 4 RI bit (empty = not used)"
	depends on ETRAX_SERIAL_PORT4
359

360 361 362
config ETRAX_SER4_DSR_BIT
	string "Ser 4 DSR bit (empty = not used)"
	depends on ETRAX_SERIAL_PORT4
363

364
config ETRAX_SER4_CD_BIT
365 366
	string "Ser 4 CD bit (empty = not used)"
	depends on ETRAX_SERIAL_PORT4
367 368 369 370 371 372 373 374 375 376 377 378 379 380 381 382 383 384 385 386 387 388

config ETRAX_SYNCHRONOUS_SERIAL
	bool "Synchronous serial-port support"
	depends on ETRAX_ARCH_V32
	help
	  Enables the ETRAX FS synchronous serial driver.

config ETRAX_SYNCHRONOUS_SERIAL_PORT0
         bool "Synchronous serial port 0 enabled"
         depends on ETRAX_SYNCHRONOUS_SERIAL
         help
           Enabled synchronous serial port 0.

config ETRAX_SYNCHRONOUS_SERIAL0_DMA
         bool "Enable DMA on synchronous serial port 0."
         depends on ETRAX_SYNCHRONOUS_SERIAL_PORT0
         help
           A synchronous serial port can run in manual or DMA mode.
           Selecting this option will make it run in DMA mode.

config ETRAX_SYNCHRONOUS_SERIAL_PORT1
         bool "Synchronous serial port 1 enabled"
389
         depends on ETRAX_SYNCHRONOUS_SERIAL && ETRAXFS
390 391 392 393 394 395 396 397 398 399
         help
           Enabled synchronous serial port 1.

config ETRAX_SYNCHRONOUS_SERIAL1_DMA
         bool "Enable DMA on synchronous serial port 1."
         depends on ETRAX_SYNCHRONOUS_SERIAL_PORT1
         help
           A synchronous serial port can run in manual or DMA mode.
           Selecting this option will make it run in DMA mode.

400 401 402 403 404 405 406 407 408 409 410 411 412 413 414 415 416 417 418 419 420 421 422
config ETRAX_AXISFLASHMAP
	bool "Axis flash-map support"
	depends on ETRAX_ARCH_V32
	select MTD
	select MTD_CFI
	select MTD_CFI_AMDSTD
	select MTD_JEDECPROBE
	select MTD_CHAR
	select MTD_BLOCK
	select MTD_COMPLEX_MAPPINGS
	help
	  This option enables MTD mapping of flash devices.  Needed to use
	  flash memories.  If unsure, say Y.

config ETRAX_AXISFLASHMAP_MTD0WHOLE
	bool "MTD0 is whole boot flash device"
	depends on ETRAX_AXISFLASHMAP
	default N
	help
	  When this option is not set, mtd0 refers to the first partition
	  on the boot flash device. When set, mtd0 refers to the whole
	  device, with mtd1 referring to the first partition etc.

423 424 425 426 427 428 429 430 431 432 433 434 435 436 437 438 439 440 441 442
config ETRAX_PTABLE_SECTOR
	int "Byte-offset of partition table sector"
	depends on ETRAX_AXISFLASHMAP
	default "65536"
	help
	  Byte-offset of the partition table in the first flash chip.
	  The default value is 64kB and should not be changed unless
	  you know exactly what you are doing. The only valid reason
	  for changing this is when the flash block size is bigger
	  than 64kB (e.g. when using two parallel 16 bit flashes).

config ETRAX_NANDFLASH
	bool "NAND flash support"
	depends on ETRAX_ARCH_V32
	select MTD_NAND
	select MTD_NAND_IDS
	help
	  This option enables MTD mapping of NAND flash devices.  Needed to use
	  NAND flash memories.  If unsure, say Y.

443 444 445 446 447 448 449 450
config ETRAX_NANDBOOT
	bool "Boot from NAND flash"
	depends on ETRAX_NANDFLASH
	help
	  This options enables booting from NAND flash devices.
	  Say Y if your boot code, kernel and root file system is in
	  NAND flash. Say N if they are in NOR flash.

451 452 453 454
config ETRAX_I2C
	bool "I2C driver"
	depends on ETRAX_ARCH_V32
	help
455
	  This option enables the I2C driver used by e.g. the RTC driver.
456

457
config ETRAX_V32_I2C_DATA_PORT
458 459 460 461 462
	string "I2C data pin"
	depends on ETRAX_I2C
	help
	  The pin to use for I2C data.

463
config ETRAX_V32_I2C_CLK_PORT
464 465 466 467 468 469 470 471 472 473 474 475 476 477 478 479 480 481 482 483
	string "I2C clock pin"
	depends on ETRAX_I2C
	help
	  The pin to use for I2C clock.

config ETRAX_GPIO
	bool "GPIO support"
	depends on ETRAX_ARCH_V32
	---help---
	  Enables the ETRAX general port device (major 120, minors 0-4).
	  You can use this driver to access the general port bits. It supports
	  these ioctl's:
	  #include <linux/etraxgpio.h>
	  fd = open("/dev/gpioa", O_RDWR); // or /dev/gpiob
	  ioctl(fd, _IO(ETRAXGPIO_IOCTYPE, IO_SETBITS), bits_to_set);
	  ioctl(fd, _IO(ETRAXGPIO_IOCTYPE, IO_CLRBITS), bits_to_clear);
	  err = ioctl(fd, _IO(ETRAXGPIO_IOCTYPE, IO_READ_INBITS), &val);
	  Remember that you need to setup the port directions appropriately in
	  the General configuration.

484 485
config ETRAX_VIRTUAL_GPIO
	bool "Virtual GPIO support"
486 487
	depends on ETRAX_GPIO
	help
488 489 490 491 492 493 494 495 496
	  Enables the virtual Etrax general port device (major 120, minor 6).
	  It uses an I/O expander for the I2C-bus.

config ETRAX_VIRTUAL_GPIO_INTERRUPT_PA_PIN
	int "Virtual GPIO interrupt pin on PA pin"
	range 0 7
	depends on ETRAX_VIRTUAL_GPIO
	help
	  The pin to use on PA for virtual gpio interrupt.
497 498 499 500

config ETRAX_PA_CHANGEABLE_DIR
	hex "PA user changeable dir mask"
	depends on ETRAX_GPIO
501 502
	default "0x00" if ETRAXFS
	default "0x00000000" if !ETRAXFS
503 504 505 506
	help
	  This is a bitmask (8 bits) with information of what bits in PA that a
	  user can change direction on using ioctl's.
	  Bit set = changeable.
507
	  You probably want 0 here, but it depends on your hardware.
508 509 510 511

config ETRAX_PA_CHANGEABLE_BITS
	hex "PA user changeable bits mask"
	depends on ETRAX_GPIO
512 513
	default "0x00" if ETRAXFS
	default "0x00000000" if !ETRAXFS
514 515 516 517 518 519 520 521
	help
	  This is a bitmask (8 bits) with information of what bits in PA
	  that a user can change the value on using ioctl's.
	  Bit set = changeable.

config ETRAX_PB_CHANGEABLE_DIR
	hex "PB user changeable dir mask"
	depends on ETRAX_GPIO
522 523
	default "0x00000" if ETRAXFS
	default "0x00000000" if !ETRAXFS
524 525 526 527
	help
	  This is a bitmask (18 bits) with information of what bits in PB
	  that a user can change direction on using ioctl's.
	  Bit set = changeable.
528
	  You probably want 0 here, but it depends on your hardware.
529 530 531 532

config ETRAX_PB_CHANGEABLE_BITS
	hex "PB user changeable bits mask"
	depends on ETRAX_GPIO
533 534
	default "0x00000" if ETRAXFS
	default "0x00000000" if !ETRAXFS
535 536 537 538 539 540 541 542
	help
	  This is a bitmask (18 bits) with information of what bits in PB
	  that a user can change the value on using ioctl's.
	  Bit set = changeable.

config ETRAX_PC_CHANGEABLE_DIR
	hex "PC user changeable dir mask"
	depends on ETRAX_GPIO
543 544
	default "0x00000" if ETRAXFS
	default "0x00000000" if !ETRAXFS
545 546 547 548
	help
	  This is a bitmask (18 bits) with information of what bits in PC
	  that a user can change direction on using ioctl's.
	  Bit set = changeable.
549
	  You probably want 0 here, but it depends on your hardware.
550 551 552 553

config ETRAX_PC_CHANGEABLE_BITS
	hex "PC user changeable bits mask"
	depends on ETRAX_GPIO
554 555
	default "0x00000" if ETRAXFS
	default "0x00000000" if ETRAXFS
556 557 558 559 560 561 562
	help
	  This is a bitmask (18 bits) with information of what bits in PC
	  that a user can change the value on using ioctl's.
	  Bit set = changeable.

config ETRAX_PD_CHANGEABLE_DIR
	hex "PD user changeable dir mask"
563
	depends on ETRAX_GPIO && ETRAXFS
564 565 566 567 568 569 570 571 572
	default "0x00000"
	help
	  This is a bitmask (18 bits) with information of what bits in PD
	  that a user can change direction on using ioctl's.
	  Bit set = changeable.
	  You probably want 0x00000 here, but it depends on your hardware.

config ETRAX_PD_CHANGEABLE_BITS
	hex "PD user changeable bits mask"
573
	depends on ETRAX_GPIO && ETRAXFS
574 575 576 577 578 579 580 581
	default "0x00000"
	help
	  This is a bitmask (18 bits) with information of what bits in PD
	  that a user can change the value on using ioctl's.
	  Bit set = changeable.

config ETRAX_PE_CHANGEABLE_DIR
	hex "PE user changeable dir mask"
582
	depends on ETRAX_GPIO && ETRAXFS
583 584 585 586 587 588 589 590 591
	default "0x00000"
	help
	  This is a bitmask (18 bits) with information of what bits in PE
	  that a user can change direction on using ioctl's.
	  Bit set = changeable.
	  You probably want 0x00000 here, but it depends on your hardware.

config ETRAX_PE_CHANGEABLE_BITS
	hex "PE user changeable bits mask"
592
 	depends on ETRAX_GPIO && ETRAXFS
593 594 595 596 597 598
	default "0x00000"
	help
	  This is a bitmask (18 bits) with information of what bits in PE
	  that a user can change the value on using ioctl's.
	  Bit set = changeable.

599 600 601 602 603 604 605 606 607 608 609 610 611 612 613 614 615 616 617
config ETRAX_PV_CHANGEABLE_DIR
	hex "PV user changeable dir mask"
	depends on ETRAX_VIRTUAL_GPIO
	default "0x0000"
	help
	  This is a bitmask (16 bits) with information of what bits in PV
	  that a user can change direction on using ioctl's.
	  Bit set = changeable.
	  You probably want 0x0000 here, but it depends on your hardware.

config ETRAX_PV_CHANGEABLE_BITS
	hex "PV user changeable bits mask"
	depends on ETRAX_VIRTUAL_GPIO
	default "0x0000"
	help
	  This is a bitmask (16 bits) with information of what bits in PV
	  that a user can change the value on using ioctl's.
	  Bit set = changeable.

618 619 620 621 622
config ETRAX_CARDBUS
        bool "Cardbus support"
        depends on ETRAX_ARCH_V32
        select HOTPLUG
        help
623
	 Enabled the ETRAX Cardbus driver.
624 625 626 627 628

config PCI
       bool
       depends on ETRAX_CARDBUS
       default y
629
       select HAVE_GENERIC_DMA_COHERENT
630 631 632 633 634 635 636 637 638 639 640 641 642 643

config ETRAX_IOP_FW_LOAD
	tristate "IO-processor hotplug firmware loading support"
	depends on ETRAX_ARCH_V32
	select FW_LOADER
	help
	  Enables IO-processor hotplug firmware loading support.

config ETRAX_STREAMCOPROC
	tristate "Stream co-processor driver enabled"
	depends on ETRAX_ARCH_V32
	help
	  This option enables a driver for the stream co-processor
	  for cryptographic operations.
644

645 646 647 648 649 650 651 652 653 654 655 656 657 658 659 660 661 662 663 664 665 666 667 668 669 670 671 672 673 674 675 676 677 678 679 680 681 682 683 684 685 686 687 688 689 690 691 692 693 694 695 696 697 698 699 700 701 702 703 704 705 706 707 708 709 710 711 712 713 714 715 716 717 718 719 720 721 722 723 724 725 726 727 728 729 730 731 732 733 734 735 736 737 738 739 740 741 742 743 744 745 746 747 748 749 750 751 752 753 754 755 756 757 758 759 760 761 762 763 764 765 766 767 768 769 770 771 772 773 774 775 776 777 778 779 780 781 782 783 784 785 786 787 788 789 790 791 792 793 794 795 796 797 798 799 800 801 802 803 804 805 806 807 808 809 810 811 812 813 814 815 816 817 818 819 820 821 822 823 824 825 826 827 828 829 830 831 832 833 834 835 836 837 838 839 840 841 842
source drivers/mmc/Kconfig

config ETRAX_MMC_IOP
	tristate "MMC/SD host driver using IO-processor"
	depends on ETRAX_ARCH_V32 && MMC
	help
	  This option enables the SD/MMC host controller interface.
	  The host controller is implemented using the built in
	  IO-Processor. Only the SPU is used in this implementation.

config ETRAX_SPI_MMC
# Make this one of several "choices" (possible simultaneously but
# suggested uniquely) when an IOP driver emerges for "real" MMC/SD
# protocol support.
	tristate
	depends on !ETRAX_MMC_IOP
	default MMC
	select SPI
	select MMC_SPI
	select ETRAX_SPI_MMC_BOARD

# For the parts that can't be a module (due to restrictions in
# framework elsewhere).
config ETRAX_SPI_MMC_BOARD
       boolean
       default n

# While the board info is MMC_SPI only, the drivers are written to be
# independent of MMC_SPI, so we'll keep SPI non-dependent on the
# MMC_SPI config choices (well, except for a single depends-on-line
# for the board-info file until a separate non-MMC SPI board file
# emerges).
# FIXME: When that happens, we'll need to be able to ask for and
# configure non-MMC SPI ports together with MMC_SPI ports (if multiple
# SPI ports are enabled).

config SPI_ETRAX_SSER
	tristate
	depends on SPI_MASTER && ETRAX_ARCH_V32 && EXPERIMENTAL
	select SPI_BITBANG
	help
	  This enables using an synchronous serial (sser) port as a
	  SPI master controller on Axis ETRAX FS and later.  The
	  driver can be configured to use any sser port.

config SPI_ETRAX_GPIO
	tristate
	depends on SPI_MASTER && ETRAX_ARCH_V32 && EXPERIMENTAL
	select SPI_BITBANG
	help
	  This enables using GPIO pins port as a SPI master controller
	  on Axis ETRAX FS and later.  The driver can be configured to
	  use any GPIO pins.

config ETRAX_SPI_SSER0
	tristate "SPI using synchronous serial port 0 (sser0)"
	depends on ETRAX_SPI_MMC
	default m if MMC_SPI=m
	default y if MMC_SPI=y
	default y if MMC_SPI=n
	select SPI_ETRAX_SSER
	help
	  Say Y for an MMC/SD socket connected to synchronous serial port 0,
	  or for devices using the SPI protocol on that port.  Say m if you
	  want to build it as a module, which will be named spi_crisv32_sser.
	  (You need to select MMC separately.)

config ETRAX_SPI_SSER0_DMA
	bool "DMA for SPI on sser0 enabled"
	depends on ETRAX_SPI_SSER0
	depends on !ETRAX_SERIAL_PORT1_DMA4_OUT && !ETRAX_SERIAL_PORT1_DMA5_IN
	default y
	help
	  Say Y if using DMA (dma4/dma5) for SPI on synchronous serial port 0.

config ETRAX_SPI_MMC_CD_SSER0_PIN
	string "MMC/SD card detect pin for SPI on sser0"
	depends on ETRAX_SPI_SSER0 && MMC_SPI
	default "pd11"
	help
	  The pin to use for SD/MMC card detect.  This pin should be pulled up
	  and grounded when a card is present.  If defined as " " (space), no
	  pin is selected.  A card must then always be inserted for proper
	  action.

config ETRAX_SPI_MMC_WP_SSER0_PIN
	string "MMC/SD card write-protect pin for SPI on sser0"
	depends on ETRAX_SPI_SSER0 && MMC_SPI
	default "pd10"
	help
	  The pin to use for the SD/MMC write-protect signal for a memory
	  card.  If defined as " " (space), the card is considered writable.

config ETRAX_SPI_SSER1
	tristate "SPI using synchronous serial port 1 (sser1)"
	depends on ETRAX_SPI_MMC
	default m if MMC_SPI=m && ETRAX_SPI_SSER0=n
	default y if MMC_SPI=y && ETRAX_SPI_SSER0=n
	default y if MMC_SPI=n && ETRAX_SPI_SSER0=n
	select SPI_ETRAX_SSER
	help
	  Say Y for an MMC/SD socket connected to synchronous serial port 1,
	  or for devices using the SPI protocol on that port.  Say m if you
	  want to build it as a module, which will be named spi_crisv32_sser.
	  (You need to select MMC separately.)

config ETRAX_SPI_SSER1_DMA
	bool "DMA for SPI on sser1 enabled"
	depends on ETRAX_SPI_SSER1 && !ETRAX_ETHERNET_IFACE1
	depends on !ETRAX_SERIAL_PORT0_DMA6_OUT && !ETRAX_SERIAL_PORT0_DMA7_IN
	default y
	help
	  Say Y if using DMA (dma6/dma7) for SPI on synchronous serial port 1.

config ETRAX_SPI_MMC_CD_SSER1_PIN
	string "MMC/SD card detect pin for SPI on sser1"
	depends on ETRAX_SPI_SSER1 && MMC_SPI
	default "pd12"
	help
	  The pin to use for SD/MMC card detect.  This pin should be pulled up
	  and grounded when a card is present.  If defined as " " (space), no
	  pin is selected.  A card must then always be inserted for proper
	  action.

config ETRAX_SPI_MMC_WP_SSER1_PIN
	string "MMC/SD card write-protect pin for SPI on sser1"
	depends on ETRAX_SPI_SSER1 && MMC_SPI
	default "pd9"
	help
	  The pin to use for the SD/MMC write-protect signal for a memory
	  card.  If defined as " " (space), the card is considered writable.

config ETRAX_SPI_GPIO
	tristate "Bitbanged SPI using gpio pins"
	depends on ETRAX_SPI_MMC
	select SPI_ETRAX_GPIO
	default m if MMC_SPI=m && ETRAX_SPI_SSER0=n && ETRAX_SPI_SSER1=n
	default y if MMC_SPI=y && ETRAX_SPI_SSER0=n && ETRAX_SPI_SSER1=n
	default y if MMC_SPI=n && ETRAX_SPI_SSER0=n && ETRAX_SPI_SSER1=n
	help
	  Say Y for an MMC/SD socket connected to general I/O pins (but not
	  a complete synchronous serial ports), or for devices using the SPI
	  protocol on general I/O pins.  Slow and slows down the system.
	  Say m to build it as a module, which will be called spi_crisv32_gpio.
	  (You need to select MMC separately.)

# The default match that of sser0, only because that's how it was tested.
config ETRAX_SPI_CS_PIN
	string "SPI chip select pin"
	depends on ETRAX_SPI_GPIO
	default "pc3"
	help
	  The pin to use for SPI chip select.

config ETRAX_SPI_CLK_PIN
	string "SPI clock pin"
	depends on ETRAX_SPI_GPIO
	default "pc1"
	help
	  The pin to use for the SPI clock.

config ETRAX_SPI_DATAIN_PIN
	string "SPI MISO (data in) pin"
	depends on ETRAX_SPI_GPIO
	default "pc16"
	help
	  The pin to use for SPI data in from the device.

config ETRAX_SPI_DATAOUT_PIN
	string "SPI MOSI (data out) pin"
	depends on ETRAX_SPI_GPIO
	default "pc0"
	help
	  The pin to use for SPI data out to the device.

config ETRAX_SPI_MMC_CD_GPIO_PIN
	string "MMC/SD card detect pin for SPI using gpio (space for none)"
	depends on ETRAX_SPI_GPIO && MMC_SPI
	default "pd11"
	help
	  The pin to use for SD/MMC card detect.  This pin should be pulled up
	  and grounded when a card is present.  If defined as " " (space), no
	  pin is selected.  A card must then always be inserted for proper
	  action.

config ETRAX_SPI_MMC_WP_GPIO_PIN
	string "MMC/SD card write-protect pin for SPI using gpio (space for none)"
	depends on ETRAX_SPI_GPIO && MMC_SPI
	default "pd10"
	help
	  The pin to use for the SD/MMC write-protect signal for a memory
	  card.  If defined as " " (space), the card is considered writable.

# Avoid choices causing non-working configs by conditionalizing the inclusion.
if ETRAX_SPI_MMC
source drivers/spi/Kconfig
endif

843
endif