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