1# SPDX-License-Identifier: GPL-2.0 2# 3# SATA/PATA driver configuration 4# 5 6config HAVE_PATA_PLATFORM 7 bool 8 help 9 This is an internal configuration node for any machine that 10 uses pata-platform driver to enable the relevant driver in the 11 configuration structure without having to submit endless patches 12 to update the PATA_PLATFORM entry. 13 14menuconfig ATA 15 tristate "Serial ATA and Parallel ATA drivers (libata)" 16 depends on HAS_IOMEM 17 depends on BLOCK 18 select SCSI 19 select GLOB 20 help 21 If you want to use an ATA hard disk, ATA tape drive, ATA CD-ROM or 22 any other ATA device under Linux, say Y and make sure that you know 23 the name of your ATA host adapter (the card inside your computer 24 that "speaks" the ATA protocol, also called ATA controller), 25 because you will be asked for it. 26 27 NOTE: ATA enables basic SCSI support; *however*, 28 'SCSI disk support', 'SCSI tape support', or 29 'SCSI CDROM support' may also be needed, 30 depending on your hardware configuration. 31 32if ATA 33 34config ATA_NONSTANDARD 35 bool 36 37config SATA_HOST 38 bool 39 40config PATA_TIMINGS 41 bool 42 43config ATA_VERBOSE_ERROR 44 bool "Verbose ATA error reporting" 45 default y 46 help 47 This option adds parsing of ATA command descriptions and error bits 48 in libata kernel output, making it easier to interpret. 49 This option will enlarge the kernel by approx. 6KB. Disable it only 50 if kernel size is more important than ease of debugging. 51 52 If unsure, say Y. 53 54config ATA_FORCE 55 bool "\"libata.force=\" kernel parameter support" if EXPERT 56 default y 57 help 58 This option adds support for "libata.force=" kernel parameter for 59 forcing configuration settings. 60 61 For further information, please read 62 <file:Documentation/admin-guide/kernel-parameters.txt>. 63 64 This option will enlarge the kernel by approx. 3KB. Disable it if 65 kernel size is more important than ability to override the default 66 configuration settings. 67 68 If unsure, say Y. 69 70config ATA_ACPI 71 bool "ATA ACPI Support" 72 depends on ACPI 73 select PATA_TIMINGS 74 default y 75 help 76 This option adds support for ATA-related ACPI objects. 77 These ACPI objects add the ability to retrieve taskfiles 78 from the ACPI BIOS and write them to the disk controller. 79 These objects may be related to performance, security, 80 power management, or other areas. 81 You can disable this at kernel boot time by using the 82 option libata.noacpi=1 83 84config SATA_ZPODD 85 bool "SATA Zero Power Optical Disc Drive (ZPODD) support" 86 depends on ATA_ACPI && PM 87 help 88 This option adds support for SATA Zero Power Optical Disc 89 Drive (ZPODD). It requires both the ODD and the platform 90 support, and if enabled, will automatically power on/off the 91 ODD when certain condition is satisfied. This does not impact 92 end user's experience of the ODD, only power is saved when 93 the ODD is not in use (i.e. no disc inside). 94 95 If unsure, say N. 96 97config SATA_PMP 98 bool "SATA Port Multiplier support" 99 depends on SATA_HOST 100 default y 101 help 102 This option adds support for SATA Port Multipliers 103 (the SATA version of an ethernet hub, or SAS expander). 104 105if HAS_DMA 106 107comment "Controllers with non-SFF native interface" 108 109config SATA_AHCI 110 tristate "AHCI SATA support" 111 depends on PCI 112 select SATA_HOST 113 help 114 This option enables support for AHCI Serial ATA. 115 116 If unsure, say N. 117 118config SATA_MOBILE_LPM_POLICY 119 int "Default SATA Link Power Management policy" 120 range 0 4 121 default 0 122 depends on SATA_AHCI 123 help 124 Select the Default SATA Link Power Management (LPM) policy to use 125 for chipsets / "South Bridges" supporting low-power modes. Such 126 chipsets are ubiquitous across laptops, desktops and servers. 127 128 The value set has the following meanings: 129 0 => Keep firmware settings 130 1 => Maximum performance 131 2 => Medium power 132 3 => Medium power with Device Initiated PM enabled 133 4 => Minimum power 134 135 Note "Minimum power" is known to cause issues, including disk 136 corruption, with some disks and should not be used. 137 138config SATA_AHCI_PLATFORM 139 tristate "Platform AHCI SATA support" 140 select SATA_HOST 141 help 142 This option enables support for Platform AHCI Serial ATA 143 controllers. 144 145 If unsure, say N. 146 147config AHCI_BRCM 148 tristate "Broadcom AHCI SATA support" 149 depends on ARCH_BRCMSTB || BMIPS_GENERIC || ARCH_BCM_NSP || \ 150 ARCH_BCMBCA || COMPILE_TEST 151 select SATA_HOST 152 help 153 This option enables support for the AHCI SATA3 controller found on 154 Broadcom SoC's. 155 156 If unsure, say N. 157 158config AHCI_DA850 159 tristate "DaVinci DA850 AHCI SATA support" 160 depends on ARCH_DAVINCI_DA850 || COMPILE_TEST 161 select SATA_HOST 162 help 163 This option enables support for the DaVinci DA850 SoC's 164 onboard AHCI SATA. 165 166 If unsure, say N. 167 168config AHCI_DM816 169 tristate "DaVinci DM816 AHCI SATA support" 170 depends on ARCH_OMAP2PLUS || COMPILE_TEST 171 select SATA_HOST 172 help 173 This option enables support for the DaVinci DM816 SoC's 174 onboard AHCI SATA controller. 175 176 If unsure, say N. 177 178config AHCI_DWC 179 tristate "Synopsys DWC AHCI SATA support" 180 select SATA_HOST 181 select MFD_SYSCON if (MIPS_BAIKAL_T1 || COMPILE_TEST) 182 help 183 This option enables support for the Synopsys DWC AHCI SATA 184 controller implementation. 185 186 If unsure, say N. 187 188config AHCI_ST 189 tristate "ST AHCI SATA support" 190 depends on ARCH_STI || COMPILE_TEST 191 select SATA_HOST 192 help 193 This option enables support for ST AHCI SATA controller. 194 195 If unsure, say N. 196 197config AHCI_IMX 198 tristate "Freescale i.MX AHCI SATA support" 199 depends on MFD_SYSCON && (ARCH_MXC || COMPILE_TEST) 200 depends on (HWMON && (THERMAL || !THERMAL_OF)) || !HWMON 201 select SATA_HOST 202 help 203 This option enables support for the Freescale i.MX SoC's 204 onboard AHCI SATA. 205 206 If unsure, say N. 207 208config AHCI_CEVA 209 tristate "CEVA AHCI SATA support" 210 depends on OF 211 select SATA_HOST 212 help 213 This option enables support for the CEVA AHCI SATA. 214 It can be found on the Xilinx Zynq UltraScale+ MPSoC. 215 216 If unsure, say N. 217 218config AHCI_MTK 219 tristate "MediaTek AHCI SATA support" 220 depends on ARCH_MEDIATEK || COMPILE_TEST 221 select MFD_SYSCON 222 select SATA_HOST 223 help 224 This option enables support for the MediaTek SoC's 225 onboard AHCI SATA controller. 226 227 If unsure, say N. 228 229config AHCI_MVEBU 230 tristate "Marvell EBU AHCI SATA support" 231 depends on ARCH_MVEBU || COMPILE_TEST 232 select SATA_HOST 233 help 234 This option enables support for the Marvebu EBU SoC's 235 onboard AHCI SATA. 236 237 If unsure, say N. 238 239config AHCI_OCTEON 240 tristate "Cavium Octeon Soc Serial ATA" 241 depends on SATA_AHCI_PLATFORM && CAVIUM_OCTEON_SOC 242 default y 243 help 244 This option enables support for Cavium Octeon SoC Serial ATA. 245 246 If unsure, say N. 247 248config AHCI_SUNXI 249 tristate "Allwinner sunxi AHCI SATA support" 250 depends on ARCH_SUNXI || COMPILE_TEST 251 select SATA_HOST 252 help 253 This option enables support for the Allwinner sunxi SoC's 254 onboard AHCI SATA. 255 256 If unsure, say N. 257 258config AHCI_TEGRA 259 tristate "NVIDIA Tegra AHCI SATA support" 260 depends on ARCH_TEGRA || COMPILE_TEST 261 select SATA_HOST 262 help 263 This option enables support for the NVIDIA Tegra SoC's 264 onboard AHCI SATA. 265 266 If unsure, say N. 267 268config AHCI_XGENE 269 tristate "APM X-Gene 6.0Gbps AHCI SATA host controller support" 270 depends on PHY_XGENE || COMPILE_TEST 271 select SATA_HOST 272 help 273 This option enables support for APM X-Gene SoC SATA host controller. 274 275config AHCI_QORIQ 276 tristate "Freescale QorIQ AHCI SATA support" 277 depends on OF 278 depends on SOC_LS1021A || ARCH_LAYERSCAPE || COMPILE_TEST 279 select SATA_HOST 280 help 281 This option enables support for the Freescale QorIQ AHCI SoC's 282 onboard AHCI SATA. 283 284 If unsure, say N. 285 286config SATA_FSL 287 tristate "Freescale 3.0Gbps SATA support" 288 depends on FSL_SOC || COMPILE_TEST 289 select SATA_HOST 290 help 291 This option enables support for Freescale 3.0Gbps SATA controller. 292 It can be found on MPC837x and MPC8315. 293 294 If unsure, say N. 295 296config SATA_GEMINI 297 tristate "Gemini SATA bridge support" 298 depends on ARCH_GEMINI || COMPILE_TEST 299 select SATA_HOST 300 default ARCH_GEMINI 301 help 302 This enabled support for the FTIDE010 to SATA bridge 303 found in Cortina Systems Gemini platform. 304 305 If unsure, say N. 306 307config SATA_AHCI_SEATTLE 308 tristate "AMD Seattle 6.0Gbps AHCI SATA host controller support" 309 depends on ARCH_SEATTLE || COMPILE_TEST 310 select SATA_HOST 311 help 312 This option enables support for AMD Seattle SATA host controller. 313 314 If unsure, say N 315 316config SATA_INIC162X 317 tristate "Initio 162x SATA support (Very Experimental)" 318 depends on PCI 319 select SATA_HOST 320 help 321 This option enables support for Initio 162x Serial ATA. 322 323config SATA_ACARD_AHCI 324 tristate "ACard AHCI variant (ATP 8620)" 325 depends on PCI 326 select SATA_HOST 327 help 328 This option enables support for Acard. 329 330 If unsure, say N. 331 332config SATA_SIL24 333 tristate "Silicon Image 3124/3132 SATA support" 334 depends on PCI 335 select SATA_HOST 336 help 337 This option enables support for Silicon Image 3124/3132 Serial ATA. 338 339 If unsure, say N. 340 341endif # HAS_DMA 342 343config ATA_SFF 344 bool "ATA SFF support (for legacy IDE and PATA)" 345 default y 346 help 347 This option adds support for ATA controllers with SFF 348 compliant or similar programming interface. 349 350 SFF is the legacy IDE interface that has been around since 351 the dawn of time. Almost all PATA controllers have an 352 SFF interface. Many SATA controllers have an SFF interface 353 when configured into a legacy compatibility mode. 354 355 For users with exclusively modern controllers like AHCI, 356 Silicon Image 3124, or Marvell 6440, you may choose to 357 disable this unneeded SFF support. 358 359 If unsure, say Y. 360 361if ATA_SFF 362 363comment "SFF controllers with custom DMA interface" 364 365config PDC_ADMA 366 tristate "Pacific Digital ADMA support" 367 depends on PCI 368 help 369 This option enables support for Pacific Digital ADMA controllers 370 371 If unsure, say N. 372 373config PATA_OCTEON_CF 374 tristate "OCTEON Boot Bus Compact Flash support" 375 depends on CAVIUM_OCTEON_SOC 376 select PATA_TIMINGS 377 help 378 This option enables a polled compact flash driver for use with 379 compact flash cards attached to the OCTEON boot bus. 380 381 If unsure, say N. 382 383config SATA_QSTOR 384 tristate "Pacific Digital SATA QStor support" 385 depends on PCI 386 select SATA_HOST 387 help 388 This option enables support for Pacific Digital Serial ATA QStor. 389 390 If unsure, say N. 391 392config SATA_SX4 393 tristate "Promise SATA SX4 support (Experimental)" 394 depends on PCI 395 select SATA_HOST 396 help 397 This option enables support for Promise Serial ATA SX4. 398 399 If unsure, say N. 400 401config ATA_BMDMA 402 bool "ATA BMDMA support" 403 depends on HAS_DMA 404 default y 405 help 406 This option adds support for SFF ATA controllers with BMDMA 407 capability. BMDMA stands for bus-master DMA and is the 408 de facto DMA interface for SFF controllers. 409 410 If unsure, say Y. 411 412if ATA_BMDMA 413 414comment "SATA SFF controllers with BMDMA" 415 416config ATA_PIIX 417 tristate "Intel ESB, ICH, PIIX3, PIIX4 PATA/SATA support" 418 depends on PCI 419 select SATA_HOST 420 help 421 This option enables support for ICH5/6/7/8 Serial ATA 422 and support for PATA on the Intel ESB/ICH/PIIX3/PIIX4 series 423 host controllers. 424 425 If unsure, say N. 426 427config SATA_DWC 428 tristate "DesignWare Cores SATA support" 429 depends on DMADEVICES 430 select GENERIC_PHY 431 select SATA_HOST 432 help 433 This option enables support for the on-chip SATA controller of the 434 AppliedMicro processor 460EX. 435 436 If unsure, say N. 437 438config SATA_DWC_OLD_DMA 439 bool "Support old device trees" 440 depends on SATA_DWC 441 select DW_DMAC_CORE 442 default y if 460EX 443 help 444 This option enables support for old device trees without the 445 "dmas" property. 446 447config SATA_HIGHBANK 448 tristate "Calxeda Highbank SATA support" 449 depends on ARCH_HIGHBANK || COMPILE_TEST 450 select SATA_HOST 451 help 452 This option enables support for the Calxeda Highbank SoC's 453 onboard SATA. 454 455 If unsure, say N. 456 457config SATA_MV 458 tristate "Marvell SATA support" 459 depends on PCI || ARCH_DOVE || ARCH_MV78XX0 || \ 460 ARCH_MVEBU || ARCH_ORION5X || COMPILE_TEST 461 select GENERIC_PHY 462 select SATA_HOST 463 help 464 This option enables support for the Marvell Serial ATA family. 465 Currently supports 88SX[56]0[48][01] PCI(-X) chips, 466 as well as the newer [67]042 PCI-X/PCIe and SOC devices. 467 468 If unsure, say N. 469 470config SATA_NV 471 tristate "NVIDIA SATA support" 472 depends on PCI 473 select SATA_HOST 474 help 475 This option enables support for NVIDIA Serial ATA. 476 477 If unsure, say N. 478 479config SATA_PROMISE 480 tristate "Promise SATA TX2/TX4 support" 481 depends on PCI 482 select SATA_HOST 483 help 484 This option enables support for Promise Serial ATA TX2/TX4. 485 486 If unsure, say N. 487 488config SATA_RCAR 489 tristate "Renesas R-Car SATA support" 490 depends on ARCH_RENESAS || COMPILE_TEST 491 select SATA_HOST 492 help 493 This option enables support for Renesas R-Car Serial ATA. 494 495 If unsure, say N. 496 497config SATA_SIL 498 tristate "Silicon Image SATA support" 499 depends on PCI 500 select SATA_HOST 501 help 502 This option enables support for Silicon Image Serial ATA. 503 504 If unsure, say N. 505 506config SATA_SIS 507 tristate "SiS 964/965/966/180 SATA support" 508 depends on PCI 509 select PATA_SIS 510 select SATA_HOST 511 help 512 This option enables support for SiS Serial ATA on 513 SiS 964/965/966/180 and Parallel ATA on SiS 180. 514 The PATA support for SiS 180 requires additionally to 515 enable the PATA_SIS driver in the config. 516 If unsure, say N. 517 518config SATA_SVW 519 tristate "ServerWorks Frodo / Apple K2 SATA support" 520 depends on PCI 521 select SATA_HOST 522 help 523 This option enables support for Broadcom/Serverworks/Apple K2 524 SATA support. 525 526 If unsure, say N. 527 528config SATA_ULI 529 tristate "ULi Electronics SATA support" 530 depends on PCI 531 select SATA_HOST 532 help 533 This option enables support for ULi Electronics SATA. 534 535 If unsure, say N. 536 537config SATA_VIA 538 tristate "VIA SATA support" 539 depends on PCI 540 select SATA_HOST 541 help 542 This option enables support for VIA Serial ATA. 543 544 If unsure, say N. 545 546config SATA_VITESSE 547 tristate "VITESSE VSC-7174 / INTEL 31244 SATA support" 548 depends on PCI 549 select SATA_HOST 550 help 551 This option enables support for Vitesse VSC7174 and Intel 31244 Serial ATA. 552 553 If unsure, say N. 554 555comment "PATA SFF controllers with BMDMA" 556 557config PATA_ALI 558 tristate "ALi PATA support" 559 depends on PCI && HAS_IOPORT 560 select PATA_TIMINGS 561 help 562 This option enables support for the ALi ATA interfaces 563 found on the many ALi chipsets. 564 565 If unsure, say N. 566 567config PATA_AMD 568 tristate "AMD/NVidia PATA support" 569 depends on PCI && HAS_IOPORT 570 select PATA_TIMINGS 571 help 572 This option enables support for the AMD and NVidia PATA 573 interfaces found on the chipsets for Athlon/Athlon64. 574 575 If unsure, say N. 576 577config PATA_ARASAN_CF 578 tristate "ARASAN CompactFlash PATA Controller Support" 579 depends on ARCH_SPEAR13XX || COMPILE_TEST 580 depends on DMADEVICES 581 select DMA_ENGINE 582 help 583 Say Y here to support the ARASAN CompactFlash PATA controller 584 585config PATA_ARTOP 586 tristate "ARTOP 6210/6260 PATA support" 587 depends on PCI && HAS_IOPORT 588 help 589 This option enables support for ARTOP PATA controllers. 590 591 If unsure, say N. 592 593config PATA_ATIIXP 594 tristate "ATI PATA support" 595 depends on PCI 596 help 597 This option enables support for the ATI ATA interfaces 598 found on the many ATI chipsets. 599 600 If unsure, say N. 601 602config PATA_ATP867X 603 tristate "ARTOP/Acard ATP867X PATA support" 604 depends on PCI 605 select PATA_TIMINGS 606 help 607 This option enables support for ARTOP/Acard ATP867X PATA 608 controllers. 609 610 If unsure, say N. 611 612config PATA_CMD64X 613 tristate "CMD64x PATA support" 614 depends on PCI && HAS_IOPORT 615 select PATA_TIMINGS 616 help 617 This option enables support for the CMD64x series chips 618 except for the CMD640. 619 620 If unsure, say N. 621 622config PATA_CS5520 623 tristate "CS5510/5520 PATA support" 624 depends on PCI && (X86_32 || COMPILE_TEST) 625 help 626 This option enables support for the Cyrix 5510/5520 627 companion chip used with the MediaGX/Geode processor family. 628 629 If unsure, say N. 630 631config PATA_CS5530 632 tristate "CS5530 PATA support" 633 depends on PCI && (X86_32 || COMPILE_TEST) 634 help 635 This option enables support for the Cyrix/NatSemi/AMD CS5530 636 companion chip used with the MediaGX/Geode processor family. 637 638 If unsure, say N. 639 640config PATA_CS5535 641 tristate "CS5535 PATA support (Experimental)" 642 depends on PCI && (X86_32 || (X86_64 && COMPILE_TEST)) 643 depends on !UML 644 help 645 This option enables support for the NatSemi/AMD CS5535 646 companion chip used with the Geode processor family. 647 648 If unsure, say N. 649 650config PATA_CS5536 651 tristate "CS5536 PATA support" 652 depends on PCI && (X86_32 || MIPS || COMPILE_TEST) 653 help 654 This option enables support for the AMD CS5536 655 companion chip used with the Geode LX processor family. 656 657 If unsure, say N. 658 659config PATA_CYPRESS 660 tristate "Cypress CY82C693 PATA support (Very Experimental)" 661 depends on PCI && HAS_IOPORT 662 select PATA_TIMINGS 663 help 664 This option enables support for the Cypress/Contaq CY82C693 665 chipset found in some Alpha systems 666 667 If unsure, say N. 668 669config PATA_EFAR 670 tristate "EFAR SLC90E66 support" 671 depends on PCI 672 help 673 This option enables support for the EFAR SLC90E66 674 IDE controller found on some older machines. 675 676 If unsure, say N. 677 678config PATA_EP93XX 679 tristate "Cirrus Logic EP93xx PATA support" 680 depends on ARCH_EP93XX 681 select PATA_TIMINGS 682 help 683 This option enables support for the PATA controller in 684 the Cirrus Logic EP9312 and EP9315 ARM CPU. 685 686 If unsure, say N. 687 688config PATA_FTIDE010 689 tristate "Faraday Technology FTIDE010 PATA support" 690 depends on ARM || COMPILE_TEST 691 depends on SATA_GEMINI 692 help 693 This option enables support for the Faraday FTIDE010 694 PATA controller found in the Cortina Gemini SoCs. 695 696 If unsure, say N. 697 698config PATA_HPT366 699 tristate "HPT 366/368 PATA support" 700 depends on PCI 701 help 702 This option enables support for the HPT 366 and 368 703 PATA controllers via the new ATA layer. 704 705 If unsure, say N. 706 707config PATA_HPT37X 708 tristate "HPT 370/370A/371/372/374/302 PATA support" 709 depends on PCI && HAS_IOPORT 710 help 711 This option enables support for the majority of the later HPT 712 PATA controllers via the new ATA layer. 713 714 If unsure, say N. 715 716config PATA_HPT3X2N 717 tristate "HPT 371N/372N/302N PATA support" 718 depends on PCI && HAS_IOPORT 719 help 720 This option enables support for the N variant HPT PATA 721 controllers via the new ATA layer. 722 723 If unsure, say N. 724 725config PATA_HPT3X3 726 tristate "HPT 343/363 PATA support" 727 depends on PCI 728 help 729 This option enables support for the HPT 343/363 730 PATA controllers via the new ATA layer 731 732 If unsure, say N. 733 734config PATA_HPT3X3_DMA 735 bool "HPT 343/363 DMA support" 736 depends on PATA_HPT3X3 737 help 738 This option enables DMA support for the HPT343/363 739 controllers. Enable with care as there are still some 740 problems with DMA on this chipset. 741 742config PATA_ICSIDE 743 tristate "Acorn ICS PATA support" 744 depends on ARM && ARCH_ACORN 745 select PATA_TIMINGS 746 help 747 On Acorn systems, say Y here if you wish to use the ICS PATA 748 interface card. This is not required for ICS partition support. 749 If you are unsure, say N to this. 750 751config PATA_IMX 752 tristate "PATA support for Freescale iMX" 753 depends on ARCH_MXC || COMPILE_TEST 754 select PATA_TIMINGS 755 help 756 This option enables support for the PATA host available on Freescale 757 iMX SoCs. 758 759 If unsure, say N. 760 761config PATA_IT8213 762 tristate "IT8213 PATA support (Experimental)" 763 depends on PCI 764 help 765 This option enables support for the ITE 821 PATA 766 controllers via the new ATA layer. 767 768 If unsure, say N. 769 770config PATA_IT821X 771 tristate "IT8211/2 PATA support" 772 depends on PCI 773 help 774 This option enables support for the ITE 8211 and 8212 775 PATA controllers via the new ATA layer, including RAID 776 mode. 777 778 If unsure, say N. 779 780config PATA_JMICRON 781 tristate "JMicron PATA support" 782 depends on PCI 783 help 784 Enable support for the JMicron IDE controller, via the new 785 ATA layer. 786 787 If unsure, say N. 788 789config PATA_MACIO 790 tristate "Apple PowerMac/PowerBook internal 'MacIO' IDE" 791 depends on PPC_PMAC 792 help 793 Most IDE capable PowerMacs have IDE busses driven by a variant 794 of this controller which is part of the Apple chipset used on 795 most PowerMac models. Some models have multiple busses using 796 different chipsets, though generally, MacIO is one of them. 797 798config PATA_MARVELL 799 tristate "Marvell PATA support via legacy mode" 800 depends on PCI 801 help 802 This option enables limited support for the Marvell 88SE61xx ATA 803 controllers. If you wish to use only the SATA ports then select 804 the AHCI driver alone. If you wish to the use the PATA port or 805 both SATA and PATA include this driver. 806 807 If unsure, say N. 808 809config PATA_MPC52xx 810 tristate "Freescale MPC52xx SoC internal IDE" 811 depends on PPC_MPC52xx && PPC_BESTCOMM 812 select PPC_BESTCOMM_ATA 813 help 814 This option enables support for integrated IDE controller 815 of the Freescale MPC52xx SoC. 816 817 If unsure, say N. 818 819config PATA_NETCELL 820 tristate "NETCELL Revolution RAID support" 821 depends on PCI && HAS_IOPORT 822 help 823 This option enables support for the Netcell Revolution RAID 824 PATA controller. 825 826 If unsure, say N. 827 828config PATA_NINJA32 829 tristate "Ninja32/Delkin Cardbus ATA support" 830 depends on PCI 831 help 832 This option enables support for the Ninja32, Delkin and 833 possibly other brands of Cardbus ATA adapter 834 835 If unsure, say N. 836 837config PATA_NS87415 838 tristate "Nat Semi NS87415 PATA support" 839 depends on PCI 840 select PATA_TIMINGS 841 help 842 This option enables support for the National Semiconductor 843 NS87415 PCI-IDE controller. 844 845 If unsure, say N. 846 847config PATA_OLDPIIX 848 tristate "Intel PATA old PIIX support" 849 depends on PCI 850 help 851 This option enables support for early PIIX PATA support. 852 853 If unsure, say N. 854 855config PATA_OPTIDMA 856 tristate "OPTI FireStar PATA support (Very Experimental)" 857 depends on PCI && HAS_IOPORT 858 help 859 This option enables DMA/PIO support for the later OPTi 860 controllers found on some old motherboards and in some 861 laptops. 862 863 If unsure, say N. 864 865config PATA_PDC2027X 866 tristate "Promise PATA 2027x support" 867 depends on PCI && HAS_IOPORT 868 help 869 This option enables support for Promise PATA pdc20268 to pdc20277 host adapters. 870 871 If unsure, say N. 872 873config PATA_PDC_OLD 874 tristate "Older Promise PATA controller support" 875 depends on PCI && HAS_IOPORT 876 help 877 This option enables support for the Promise 20246, 20262, 20263, 878 20265 and 20267 adapters. 879 880 If unsure, say N. 881 882config PATA_RADISYS 883 tristate "RADISYS 82600 PATA support (Experimental)" 884 depends on PCI 885 help 886 This option enables support for the RADISYS 82600 887 PATA controllers via the new ATA layer 888 889 If unsure, say N. 890 891config PATA_RDC 892 tristate "RDC PATA support" 893 depends on PCI 894 help 895 This option enables basic support for the later RDC PATA controllers 896 controllers via the new ATA layer. For the RDC 1010, you need to 897 enable the IT821X driver instead. 898 899 If unsure, say N. 900 901config PATA_SC1200 902 tristate "SC1200 PATA support" 903 depends on PCI && (X86_32 || COMPILE_TEST) && HAS_IOPORT 904 help 905 This option enables support for the NatSemi/AMD SC1200 SoC 906 companion chip used with the Geode processor family. 907 908 If unsure, say N. 909 910config PATA_SCH 911 tristate "Intel SCH PATA support" 912 depends on PCI 913 help 914 This option enables support for Intel SCH PATA on the Intel 915 SCH (US15W, US15L, UL11L) series host controllers. 916 917 If unsure, say N. 918 919config PATA_SERVERWORKS 920 tristate "SERVERWORKS OSB4/CSB5/CSB6/HT1000 PATA support" 921 depends on PCI && HAS_IOPORT 922 help 923 This option enables support for the Serverworks OSB4/CSB5/CSB6 and 924 HT1000 PATA controllers, via the new ATA layer. 925 926 If unsure, say N. 927 928config PATA_SIL680 929 tristate "CMD / Silicon Image 680 PATA support" 930 depends on PCI 931 help 932 This option enables support for CMD / Silicon Image 680 PATA. 933 934 If unsure, say N. 935 936config PATA_SIS 937 tristate "SiS PATA support" 938 depends on PCI 939 help 940 This option enables support for SiS PATA controllers 941 942 If unsure, say N. 943 944config PATA_TOSHIBA 945 tristate "Toshiba Piccolo support (Experimental)" 946 depends on PCI 947 help 948 Support for the Toshiba Piccolo controllers. Currently only the 949 primary channel is supported by this driver. 950 951 If unsure, say N. 952 953config PATA_TRIFLEX 954 tristate "Compaq Triflex PATA support" 955 depends on PCI 956 help 957 Enable support for the Compaq 'Triflex' IDE controller as found 958 on many Compaq Pentium-Pro systems, via the new ATA layer. 959 960 If unsure, say N. 961 962config PATA_VIA 963 tristate "VIA PATA support" 964 depends on PCI 965 select PATA_TIMINGS 966 help 967 This option enables support for the VIA PATA interfaces 968 found on the many VIA chipsets. 969 970 If unsure, say N. 971 972config PATA_PXA 973 tristate "PXA DMA-capable PATA support" 974 depends on ARCH_PXA || COMPILE_TEST 975 help 976 This option enables support for harddrive attached to PXA CPU's bus. 977 978 NOTE: This driver utilizes PXA DMA controller, in case your hardware 979 is not capable of doing MWDMA, use pata_platform instead. 980 981 If unsure, say N. 982 983config PATA_WINBOND 984 tristate "Winbond SL82C105 PATA support" 985 depends on PCI 986 help 987 This option enables support for SL82C105 PATA devices found in the 988 Netwinder and some other systems 989 990 If unsure, say N. 991 992endif # ATA_BMDMA 993 994comment "PIO-only SFF controllers" 995 996config PATA_CMD640_PCI 997 tristate "CMD640 PCI PATA support (Experimental)" 998 depends on PCI 999 select PATA_TIMINGS 1000 help 1001 This option enables support for the CMD640 PCI IDE 1002 interface chip. Only the primary channel is currently 1003 supported. 1004 1005 If unsure, say N. 1006 1007config PATA_FALCON 1008 tristate "Atari Falcon and Q40/Q60 PATA support" 1009 depends on M68K && (ATARI || Q40) 1010 help 1011 This option enables support for the on-board IDE 1012 interface on the Atari Falcon and Q40/Q60. 1013 1014 If unsure, say N. 1015 1016config PATA_GAYLE 1017 tristate "Amiga Gayle PATA support" 1018 depends on M68K && AMIGA 1019 help 1020 This option enables support for the on-board IDE 1021 interfaces on some Amiga models (A600, A1200, 1022 A4000 and A4000T) and also for IDE interfaces on 1023 the Zorro expansion bus (M-Tech E-Matrix 530 1024 expansion card). 1025 1026 If unsure, say N. 1027 1028config PATA_BUDDHA 1029 tristate "Buddha/Catweasel/X-Surf PATA support" 1030 depends on ZORRO 1031 help 1032 This option enables support for the IDE interfaces 1033 on the Buddha, Catweasel and X-Surf expansion boards 1034 on the Zorro expansion bus. It supports up to two 1035 interfaces on the Buddha, three on the Catweasel and 1036 two on the X-Surf. 1037 1038 If unsure, say N. 1039 1040config PATA_ISAPNP 1041 tristate "ISA Plug and Play PATA support" 1042 depends on ISAPNP 1043 help 1044 This option enables support for ISA plug & play ATA 1045 controllers such as those found on old soundcards. 1046 1047 If unsure, say N. 1048 1049config PATA_IXP4XX_CF 1050 tristate "IXP4XX Compact Flash support" 1051 depends on ARCH_IXP4XX || COMPILE_TEST 1052 help 1053 This option enables support for a Compact Flash connected on 1054 the ixp4xx expansion bus. This driver had been written for 1055 Loft/Avila boards in mind but can work with others. 1056 1057 If unsure, say N. 1058 1059config PATA_MPIIX 1060 tristate "Intel PATA MPIIX support" 1061 depends on PCI 1062 help 1063 This option enables support for MPIIX PATA support. 1064 1065 If unsure, say N. 1066 1067config PATA_NS87410 1068 tristate "Nat Semi NS87410 PATA support" 1069 depends on PCI 1070 select PATA_TIMINGS 1071 help 1072 This option enables support for the National Semiconductor 1073 NS87410 PCI-IDE controller. 1074 1075 If unsure, say N. 1076 1077config PATA_OPTI 1078 tristate "OPTI621/6215 PATA support (Very Experimental)" 1079 depends on PCI 1080 help 1081 This option enables full PIO support for the early Opti ATA 1082 controllers found on some old motherboards. 1083 1084 If unsure, say N. 1085 1086config PATA_PCMCIA 1087 tristate "PCMCIA PATA support" 1088 depends on PCMCIA 1089 help 1090 This option enables support for PCMCIA ATA interfaces, including 1091 compact flash card adapters via the new ATA layer. 1092 1093 If unsure, say N. 1094 1095config PATA_PLATFORM 1096 tristate "Generic platform device PATA support" if HAVE_PATA_PLATFORM 1097 help 1098 This option enables support for generic directly connected ATA 1099 devices commonly found on embedded systems. 1100 1101 If unsure, say N. 1102 1103config PATA_OF_PLATFORM 1104 tristate "OpenFirmware platform device PATA support" 1105 depends on OF 1106 select PATA_PLATFORM 1107 help 1108 This option enables support for generic directly connected ATA 1109 devices commonly found on embedded systems with OpenFirmware 1110 bindings. 1111 1112 If unsure, say N. 1113 1114config PATA_QDI 1115 tristate "QDI VLB PATA support" 1116 depends on ISA 1117 select PATA_LEGACY 1118 help 1119 Support for QDI 6500 and 6580 PATA controllers on VESA local bus. 1120 1121config PATA_RB532 1122 tristate "RouterBoard 532 PATA CompactFlash support" 1123 depends on MIKROTIK_RB532 1124 help 1125 This option enables support for the RouterBoard 532 1126 PATA CompactFlash controller. 1127 1128 If unsure, say N. 1129 1130config PATA_RZ1000 1131 tristate "PC Tech RZ1000 PATA support" 1132 depends on PCI 1133 help 1134 This option enables basic support for the PC Tech RZ1000/1 1135 PATA controllers via the new ATA layer 1136 1137 If unsure, say N. 1138 1139config PATA_WINBOND_VLB 1140 tristate "Winbond W83759A VLB PATA support (Experimental)" 1141 depends on ISA 1142 select PATA_LEGACY 1143 help 1144 Support for the Winbond W83759A controller on Vesa Local Bus 1145 systems. 1146 1147config PATA_PARPORT 1148 tristate "Parallel port IDE device support" 1149 depends on PARPORT_PC 1150 help 1151 There are many external CD-ROM and disk devices that connect through 1152 your computer's parallel port. Most of them are actually IDE devices 1153 using a parallel port IDE adapter. This option enables the 1154 PATA_PARPORT subsystem which contains drivers for many of these 1155 external drives. 1156 Read <file:Documentation/admin-guide/blockdev/paride.rst> for more 1157 information. 1158 1159source "drivers/ata/pata_parport/Kconfig" 1160 1161comment "Generic fallback / legacy drivers" 1162 1163config PATA_ACPI 1164 tristate "ACPI firmware driver for PATA" 1165 depends on ATA_ACPI && ATA_BMDMA && PCI 1166 select PATA_TIMINGS 1167 help 1168 This option enables an ACPI method driver which drives 1169 motherboard PATA controller interfaces through the ACPI 1170 firmware in the BIOS. This driver can sometimes handle 1171 otherwise unsupported hardware. 1172 1173config ATA_GENERIC 1174 tristate "Generic ATA support" 1175 depends on PCI && ATA_BMDMA 1176 select SATA_HOST 1177 help 1178 This option enables support for generic BIOS configured 1179 ATA controllers via the new ATA layer 1180 1181 If unsure, say N. 1182 1183config PATA_LEGACY 1184 tristate "Legacy ISA PATA support (Experimental)" 1185 depends on (ISA || PCI) && HAS_IOPORT 1186 select PATA_TIMINGS 1187 help 1188 This option enables support for ISA/VLB/PCI bus legacy PATA 1189 ports and allows them to be accessed via the new ATA layer. 1190 1191 If unsure, say N. 1192 1193endif # ATA_SFF 1194endif # ATA 1195