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