MAINTAINERS: update the LSM maintainer info
[platform/kernel/linux-starfive.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
37 config SATA_HOST
38         bool
39
40 config PATA_TIMINGS
41         bool
42
43 config 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
54 config 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
70 config 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
84 config 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
97 config 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
105 if HAS_DMA
106
107 comment "Controllers with non-SFF native interface"
108
109 config 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
118 config SATA_MOBILE_LPM_POLICY
119         int "Default SATA Link Power Management policy for low power chipsets"
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 typically found on most laptops but desktops and
127           servers now also widely use chipsets supporting low power modes.
128
129           The value set has the following meanings:
130                 0 => Keep firmware settings
131                 1 => Maximum performance
132                 2 => Medium power
133                 3 => Medium power with Device Initiated PM enabled
134                 4 => Minimum power
135
136           Note "Minimum power" is known to cause issues, including disk
137           corruption, with some disks and should not be used.
138
139 config SATA_AHCI_PLATFORM
140         tristate "Platform AHCI SATA support"
141         select SATA_HOST
142         help
143           This option enables support for Platform AHCI Serial ATA
144           controllers.
145
146           If unsure, say N.
147
148 config AHCI_BRCM
149         tristate "Broadcom AHCI SATA support"
150         depends on ARCH_BRCMSTB || BMIPS_GENERIC || ARCH_BCM_NSP || \
151                    ARCH_BCM_63XX || COMPILE_TEST
152         select SATA_HOST
153         help
154           This option enables support for the AHCI SATA3 controller found on
155           Broadcom SoC's.
156
157           If unsure, say N.
158
159 config AHCI_DA850
160         tristate "DaVinci DA850 AHCI SATA support"
161         depends on ARCH_DAVINCI_DA850 || COMPILE_TEST
162         select SATA_HOST
163         help
164           This option enables support for the DaVinci DA850 SoC's
165           onboard AHCI SATA.
166
167           If unsure, say N.
168
169 config AHCI_DM816
170         tristate "DaVinci DM816 AHCI SATA support"
171         depends on ARCH_OMAP2PLUS || COMPILE_TEST
172         select SATA_HOST
173         help
174           This option enables support for the DaVinci DM816 SoC's
175           onboard AHCI SATA controller.
176
177           If unsure, say N.
178
179 config AHCI_ST
180         tristate "ST AHCI SATA support"
181         depends on ARCH_STI
182         select SATA_HOST
183         help
184           This option enables support for ST AHCI SATA controller.
185
186           If unsure, say N.
187
188 config AHCI_IMX
189         tristate "Freescale i.MX AHCI SATA support"
190         depends on MFD_SYSCON && (ARCH_MXC || COMPILE_TEST)
191         depends on (HWMON && (THERMAL || !THERMAL_OF)) || !HWMON
192         select SATA_HOST
193         help
194           This option enables support for the Freescale i.MX SoC's
195           onboard AHCI SATA.
196
197           If unsure, say N.
198
199 config AHCI_CEVA
200         tristate "CEVA AHCI SATA support"
201         depends on OF
202         select SATA_HOST
203         help
204           This option enables support for the CEVA AHCI SATA.
205           It can be found on the Xilinx Zynq UltraScale+ MPSoC.
206
207           If unsure, say N.
208
209 config AHCI_MTK
210         tristate "MediaTek AHCI SATA support"
211         depends on ARCH_MEDIATEK || COMPILE_TEST
212         select MFD_SYSCON
213         select SATA_HOST
214         help
215           This option enables support for the MediaTek SoC's
216           onboard AHCI SATA controller.
217
218           If unsure, say N.
219
220 config AHCI_MVEBU
221         tristate "Marvell EBU AHCI SATA support"
222         depends on ARCH_MVEBU || COMPILE_TEST
223         select SATA_HOST
224         help
225           This option enables support for the Marvebu EBU SoC's
226           onboard AHCI SATA.
227
228           If unsure, say N.
229
230 config AHCI_OCTEON
231         tristate "Cavium Octeon Soc Serial ATA"
232         depends on SATA_AHCI_PLATFORM && CAVIUM_OCTEON_SOC
233         default y
234         help
235           This option enables support for Cavium Octeon SoC Serial ATA.
236
237           If unsure, say N.
238
239 config AHCI_SUNXI
240         tristate "Allwinner sunxi AHCI SATA support"
241         depends on ARCH_SUNXI || COMPILE_TEST
242         select SATA_HOST
243         help
244           This option enables support for the Allwinner sunxi SoC's
245           onboard AHCI SATA.
246
247           If unsure, say N.
248
249 config AHCI_TEGRA
250         tristate "NVIDIA Tegra AHCI SATA support"
251         depends on ARCH_TEGRA || COMPILE_TEST
252         select SATA_HOST
253         help
254           This option enables support for the NVIDIA Tegra SoC's
255           onboard AHCI SATA.
256
257           If unsure, say N.
258
259 config AHCI_XGENE
260         tristate "APM X-Gene 6.0Gbps AHCI SATA host controller support"
261         depends on PHY_XGENE || COMPILE_TEST
262         select SATA_HOST
263         help
264          This option enables support for APM X-Gene SoC SATA host controller.
265
266 config AHCI_QORIQ
267         tristate "Freescale QorIQ AHCI SATA support"
268         depends on OF
269         select SATA_HOST
270         help
271           This option enables support for the Freescale QorIQ AHCI SoC's
272           onboard AHCI SATA.
273
274           If unsure, say N.
275
276 config SATA_FSL
277         tristate "Freescale 3.0Gbps SATA support"
278         depends on FSL_SOC || COMPILE_TEST
279         select SATA_HOST
280         help
281           This option enables support for Freescale 3.0Gbps SATA controller.
282           It can be found on MPC837x and MPC8315.
283
284           If unsure, say N.
285
286 config SATA_GEMINI
287         tristate "Gemini SATA bridge support"
288         depends on ARCH_GEMINI || (OF && COMPILE_TEST)
289         select SATA_HOST
290         default ARCH_GEMINI
291         help
292           This enabled support for the FTIDE010 to SATA bridge
293           found in Cortina Systems Gemini platform.
294
295           If unsure, say N.
296
297 config SATA_AHCI_SEATTLE
298         tristate "AMD Seattle 6.0Gbps AHCI SATA host controller support"
299         depends on ARCH_SEATTLE || COMPILE_TEST
300         select SATA_HOST
301         help
302          This option enables support for AMD Seattle SATA host controller.
303
304          If unsure, say N
305
306 config SATA_INIC162X
307         tristate "Initio 162x SATA support (Very Experimental)"
308         depends on PCI
309         select SATA_HOST
310         help
311           This option enables support for Initio 162x Serial ATA.
312
313 config SATA_ACARD_AHCI
314         tristate "ACard AHCI variant (ATP 8620)"
315         depends on PCI
316         select SATA_HOST
317         help
318           This option enables support for Acard.
319
320           If unsure, say N.
321
322 config SATA_SIL24
323         tristate "Silicon Image 3124/3132 SATA support"
324         depends on PCI
325         select SATA_HOST
326         help
327           This option enables support for Silicon Image 3124/3132 Serial ATA.
328
329           If unsure, say N.
330
331 endif # HAS_DMA
332
333 config ATA_SFF
334         bool "ATA SFF support (for legacy IDE and PATA)"
335         default y
336         help
337           This option adds support for ATA controllers with SFF
338           compliant or similar programming interface.
339
340           SFF is the legacy IDE interface that has been around since
341           the dawn of time.  Almost all PATA controllers have an
342           SFF interface.  Many SATA controllers have an SFF interface
343           when configured into a legacy compatibility mode.
344
345           For users with exclusively modern controllers like AHCI,
346           Silicon Image 3124, or Marvell 6440, you may choose to
347           disable this unneeded SFF support.
348
349           If unsure, say Y.
350
351 if ATA_SFF
352
353 comment "SFF controllers with custom DMA interface"
354
355 config PDC_ADMA
356         tristate "Pacific Digital ADMA support"
357         depends on PCI
358         help
359           This option enables support for Pacific Digital ADMA controllers
360
361           If unsure, say N.
362
363 config PATA_OCTEON_CF
364         tristate "OCTEON Boot Bus Compact Flash support"
365         depends on CAVIUM_OCTEON_SOC
366         select PATA_TIMINGS
367         help
368           This option enables a polled compact flash driver for use with
369           compact flash cards attached to the OCTEON boot bus.
370
371           If unsure, say N.
372
373 config SATA_QSTOR
374         tristate "Pacific Digital SATA QStor support"
375         depends on PCI
376         select SATA_HOST
377         help
378           This option enables support for Pacific Digital Serial ATA QStor.
379
380           If unsure, say N.
381
382 config SATA_SX4
383         tristate "Promise SATA SX4 support (Experimental)"
384         depends on PCI
385         select SATA_HOST
386         help
387           This option enables support for Promise Serial ATA SX4.
388
389           If unsure, say N.
390
391 config ATA_BMDMA
392         bool "ATA BMDMA support"
393         depends on HAS_DMA
394         default y
395         help
396           This option adds support for SFF ATA controllers with BMDMA
397           capability.  BMDMA stands for bus-master DMA and is the
398           de facto DMA interface for SFF controllers.
399
400           If unsure, say Y.
401
402 if ATA_BMDMA
403
404 comment "SATA SFF controllers with BMDMA"
405
406 config ATA_PIIX
407         tristate "Intel ESB, ICH, PIIX3, PIIX4 PATA/SATA support"
408         depends on PCI
409         select SATA_HOST
410         help
411           This option enables support for ICH5/6/7/8 Serial ATA
412           and support for PATA on the Intel ESB/ICH/PIIX3/PIIX4 series
413           host controllers.
414
415           If unsure, say N.
416
417 config SATA_DWC
418         tristate "DesignWare Cores SATA support"
419         depends on DMADEVICES
420         select GENERIC_PHY
421         select SATA_HOST
422         help
423           This option enables support for the on-chip SATA controller of the
424           AppliedMicro processor 460EX.
425
426           If unsure, say N.
427
428 config SATA_DWC_OLD_DMA
429         bool "Support old device trees"
430         depends on SATA_DWC
431         select DW_DMAC_CORE
432         default y if 460EX
433         help
434           This option enables support for old device trees without the
435           "dmas" property.
436
437 config SATA_HIGHBANK
438         tristate "Calxeda Highbank SATA support"
439         depends on ARCH_HIGHBANK || COMPILE_TEST
440         select SATA_HOST
441         help
442           This option enables support for the Calxeda Highbank SoC's
443           onboard SATA.
444
445           If unsure, say N.
446
447 config SATA_MV
448         tristate "Marvell SATA support"
449         depends on PCI || ARCH_DOVE || ARCH_MV78XX0 || \
450                    ARCH_MVEBU || ARCH_ORION5X || COMPILE_TEST
451         select GENERIC_PHY
452         select SATA_HOST
453         help
454           This option enables support for the Marvell Serial ATA family.
455           Currently supports 88SX[56]0[48][01] PCI(-X) chips,
456           as well as the newer [67]042 PCI-X/PCIe and SOC devices.
457
458           If unsure, say N.
459
460 config SATA_NV
461         tristate "NVIDIA SATA support"
462         depends on PCI
463         select SATA_HOST
464         help
465           This option enables support for NVIDIA Serial ATA.
466
467           If unsure, say N.
468
469 config SATA_PROMISE
470         tristate "Promise SATA TX2/TX4 support"
471         depends on PCI
472         select SATA_HOST
473         help
474           This option enables support for Promise Serial ATA TX2/TX4.
475
476           If unsure, say N.
477
478 config SATA_RCAR
479         tristate "Renesas R-Car SATA support"
480         depends on ARCH_RENESAS || COMPILE_TEST
481         select SATA_HOST
482         help
483           This option enables support for Renesas R-Car Serial ATA.
484
485           If unsure, say N.
486
487 config SATA_SIL
488         tristate "Silicon Image SATA support"
489         depends on PCI
490         select SATA_HOST
491         help
492           This option enables support for Silicon Image Serial ATA.
493
494           If unsure, say N.
495
496 config SATA_SIS
497         tristate "SiS 964/965/966/180 SATA support"
498         depends on PCI
499         select PATA_SIS
500         select SATA_HOST
501         help
502           This option enables support for SiS Serial ATA on
503           SiS 964/965/966/180 and Parallel ATA on SiS 180.
504           The PATA support for SiS 180 requires additionally to
505           enable the PATA_SIS driver in the config.
506           If unsure, say N.
507
508 config SATA_SVW
509         tristate "ServerWorks Frodo / Apple K2 SATA support"
510         depends on PCI
511         select SATA_HOST
512         help
513           This option enables support for Broadcom/Serverworks/Apple K2
514           SATA support.
515
516           If unsure, say N.
517
518 config SATA_ULI
519         tristate "ULi Electronics SATA support"
520         depends on PCI
521         select SATA_HOST
522         help
523           This option enables support for ULi Electronics SATA.
524
525           If unsure, say N.
526
527 config SATA_VIA
528         tristate "VIA SATA support"
529         depends on PCI
530         select SATA_HOST
531         help
532           This option enables support for VIA Serial ATA.
533
534           If unsure, say N.
535
536 config SATA_VITESSE
537         tristate "VITESSE VSC-7174 / INTEL 31244 SATA support"
538         depends on PCI
539         select SATA_HOST
540         help
541           This option enables support for Vitesse VSC7174 and Intel 31244 Serial ATA.
542
543           If unsure, say N.
544
545 comment "PATA SFF controllers with BMDMA"
546
547 config PATA_ALI
548         tristate "ALi PATA support"
549         depends on PCI
550         select PATA_TIMINGS
551         help
552           This option enables support for the ALi ATA interfaces
553           found on the many ALi chipsets.
554
555           If unsure, say N.
556
557 config PATA_AMD
558         tristate "AMD/NVidia PATA support"
559         depends on PCI
560         select PATA_TIMINGS
561         help
562           This option enables support for the AMD and NVidia PATA
563           interfaces found on the chipsets for Athlon/Athlon64.
564
565           If unsure, say N.
566
567 config PATA_ARASAN_CF
568         tristate "ARASAN CompactFlash PATA Controller Support"
569         depends on ARCH_SPEAR13XX || COMPILE_TEST
570         depends on DMADEVICES
571         select DMA_ENGINE
572         help
573           Say Y here to support the ARASAN CompactFlash PATA controller
574
575 config PATA_ARTOP
576         tristate "ARTOP 6210/6260 PATA support"
577         depends on PCI
578         help
579           This option enables support for ARTOP PATA controllers.
580
581           If unsure, say N.
582
583 config PATA_ATIIXP
584         tristate "ATI PATA support"
585         depends on PCI
586         help
587           This option enables support for the ATI ATA interfaces
588           found on the many ATI chipsets.
589
590           If unsure, say N.
591
592 config PATA_ATP867X
593         tristate "ARTOP/Acard ATP867X PATA support"
594         depends on PCI
595         select PATA_TIMINGS
596         help
597           This option enables support for ARTOP/Acard ATP867X PATA
598           controllers.
599
600           If unsure, say N.
601
602 config PATA_BK3710
603         tristate "Palmchip BK3710 PATA support"
604         depends on ARCH_DAVINCI || COMPILE_TEST
605         select PATA_TIMINGS
606         help
607           This option enables support for the integrated IDE controller on
608           the TI DaVinci SoC.
609
610           If unsure, say N.
611
612 config PATA_CMD64X
613         tristate "CMD64x PATA support"
614         depends on PCI
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
622 config 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
631 config 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
640 config PATA_CS5535
641         tristate "CS5535 PATA support (Experimental)"
642         depends on PCI && (X86_32 || (X86_64 && COMPILE_TEST))
643         help
644           This option enables support for the NatSemi/AMD CS5535
645           companion chip used with the Geode processor family.
646
647           If unsure, say N.
648
649 config PATA_CS5536
650         tristate "CS5536 PATA support"
651         depends on PCI && (X86_32 || MIPS || COMPILE_TEST)
652         help
653           This option enables support for the AMD CS5536
654           companion chip used with the Geode LX processor family.
655
656           If unsure, say N.
657
658 config PATA_CYPRESS
659         tristate "Cypress CY82C693 PATA support (Very Experimental)"
660         depends on PCI
661         select PATA_TIMINGS
662         help
663           This option enables support for the Cypress/Contaq CY82C693
664           chipset found in some Alpha systems
665
666           If unsure, say N.
667
668 config PATA_EFAR
669         tristate "EFAR SLC90E66 support"
670         depends on PCI
671         help
672           This option enables support for the EFAR SLC90E66
673           IDE controller found on some older machines.
674
675           If unsure, say N.
676
677 config PATA_EP93XX
678         tristate "Cirrus Logic EP93xx PATA support"
679         depends on ARCH_EP93XX
680         select PATA_TIMINGS
681         help
682           This option enables support for the PATA controller in
683           the Cirrus Logic EP9312 and EP9315 ARM CPU.
684
685           If unsure, say N.
686
687 config PATA_FTIDE010
688         tristate "Faraday Technology FTIDE010 PATA support"
689         depends on OF
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
698 config 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
707 config PATA_HPT37X
708         tristate "HPT 370/370A/371/372/374/302 PATA support"
709         depends on PCI
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
716 config PATA_HPT3X2N
717         tristate "HPT 371N/372N/302N PATA support"
718         depends on PCI
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
725 config 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
734 config 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
742 config 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
751 config 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
761 config 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
770 config 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
780 config 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
789 config 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
798 config 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
809 config 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
819 config PATA_NETCELL
820         tristate "NETCELL Revolution RAID support"
821         depends on PCI
822         help
823           This option enables support for the Netcell Revolution RAID
824           PATA controller.
825
826           If unsure, say N.
827
828 config 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
837 config 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
847 config 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
855 config PATA_OPTIDMA
856         tristate "OPTI FireStar PATA support (Very Experimental)"
857         depends on PCI
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
865 config PATA_PDC2027X
866         tristate "Promise PATA 2027x support"
867         depends on PCI
868         help
869           This option enables support for Promise PATA pdc20268 to pdc20277 host adapters.
870
871           If unsure, say N.
872
873 config PATA_PDC_OLD
874         tristate "Older Promise PATA controller support"
875         depends on PCI
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
882 config 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
891 config 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
901 config PATA_SC1200
902         tristate "SC1200 PATA support"
903         depends on PCI && (X86_32 || COMPILE_TEST)
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
910 config 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
919 config PATA_SERVERWORKS
920         tristate "SERVERWORKS OSB4/CSB5/CSB6/HT1000 PATA support"
921         depends on PCI
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
928 config 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
936 config 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
944 config 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
953 config 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
962 config 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
972 config 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
983 config 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
992 endif # ATA_BMDMA
993
994 comment "PIO-only SFF controllers"
995
996 config 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
1007 config 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
1016 config 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
1028 config 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
1040 config 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
1049 config 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
1059 config 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
1067 config 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
1077 config 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
1086 config PATA_PALMLD
1087         tristate "Palm LifeDrive PATA support"
1088         depends on MACH_PALMLD
1089         help
1090           This option enables support for Palm LifeDrive's internal ATA
1091           port via the new ATA layer.
1092
1093           If unsure, say N.
1094
1095 config PATA_PCMCIA
1096         tristate "PCMCIA PATA support"
1097         depends on PCMCIA
1098         help
1099           This option enables support for PCMCIA ATA interfaces, including
1100           compact flash card adapters via the new ATA layer.
1101
1102           If unsure, say N.
1103
1104 config PATA_PLATFORM
1105         tristate "Generic platform device PATA support"
1106         depends on EXPERT || PPC || HAVE_PATA_PLATFORM
1107         help
1108           This option enables support for generic directly connected ATA
1109           devices commonly found on embedded systems.
1110
1111           If unsure, say N.
1112
1113 config PATA_OF_PLATFORM
1114         tristate "OpenFirmware platform device PATA support"
1115         depends on PATA_PLATFORM && OF
1116         help
1117           This option enables support for generic directly connected ATA
1118           devices commonly found on embedded systems with OpenFirmware
1119           bindings.
1120
1121           If unsure, say N.
1122
1123 config PATA_QDI
1124         tristate "QDI VLB PATA support"
1125         depends on ISA
1126         select PATA_LEGACY
1127         help
1128           Support for QDI 6500 and 6580 PATA controllers on VESA local bus.
1129
1130 config PATA_RB532
1131         tristate "RouterBoard 532 PATA CompactFlash support"
1132         depends on MIKROTIK_RB532
1133         help
1134           This option enables support for the RouterBoard 532
1135           PATA CompactFlash controller.
1136
1137           If unsure, say N.
1138
1139 config PATA_RZ1000
1140         tristate "PC Tech RZ1000 PATA support"
1141         depends on PCI
1142         help
1143           This option enables basic support for the PC Tech RZ1000/1
1144           PATA controllers via the new ATA layer
1145
1146           If unsure, say N.
1147
1148 config PATA_SAMSUNG_CF
1149         tristate "Samsung SoC PATA support"
1150         depends on SAMSUNG_DEV_IDE || COMPILE_TEST
1151         select PATA_TIMINGS
1152         help
1153           This option enables basic support for Samsung's S3C/S5P board
1154           PATA controllers via the new ATA layer
1155
1156           If unsure, say N.
1157
1158 config PATA_WINBOND_VLB
1159         tristate "Winbond W83759A VLB PATA support (Experimental)"
1160         depends on ISA
1161         select PATA_LEGACY
1162         help
1163           Support for the Winbond W83759A controller on Vesa Local Bus
1164           systems.
1165
1166 comment "Generic fallback / legacy drivers"
1167
1168 config PATA_ACPI
1169         tristate "ACPI firmware driver for PATA"
1170         depends on ATA_ACPI && ATA_BMDMA && PCI
1171         select PATA_TIMINGS
1172         help
1173           This option enables an ACPI method driver which drives
1174           motherboard PATA controller interfaces through the ACPI
1175           firmware in the BIOS. This driver can sometimes handle
1176           otherwise unsupported hardware.
1177
1178 config ATA_GENERIC
1179         tristate "Generic ATA support"
1180         depends on PCI && ATA_BMDMA
1181         select SATA_HOST
1182         help
1183           This option enables support for generic BIOS configured
1184           ATA controllers via the new ATA layer
1185
1186           If unsure, say N.
1187
1188 config PATA_LEGACY
1189         tristate "Legacy ISA PATA support (Experimental)"
1190         depends on (ISA || PCI)
1191         select PATA_TIMINGS
1192         help
1193           This option enables support for ISA/VLB/PCI bus legacy PATA
1194           ports and allows them to be accessed via the new ATA layer.
1195
1196           If unsure, say N.
1197
1198 endif # ATA_SFF
1199 endif # ATA