xref: /openbmc/linux/drivers/ata/Kconfig (revision 7c768f84)
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       default n
37
38config 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
49config 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
62config 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
76config 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
83if HAS_DMA
84
85comment "Controllers with non-SFF native interface"
86
87config 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
95config 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
114config 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
122config 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
131config 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
140config 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
149config 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
157config 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
167config 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
176config 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
186config 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
195config 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
204config 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
213config AHCI_TEGRA
214	tristate "NVIDIA Tegra AHCI SATA support"
215	depends on ARCH_TEGRA
216	help
217	  This option enables support for the NVIDIA Tegra SoC's
218	  onboard AHCI SATA.
219
220	  If unsure, say N.
221
222config 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
228config 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
237config 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
246config 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
256config 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
264config 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
270config 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
278config 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
286endif # HAS_DMA
287
288config 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
306if ATA_SFF
307
308comment "SFF controllers with custom DMA interface"
309
310config 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
318config 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
327config 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
335config 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
343config 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
354if ATA_BMDMA
355
356comment "SATA SFF controllers with BMDMA"
357
358config 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
368config 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
378config 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
387config 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
393config 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
399config SATA_HIGHBANK
400	tristate "Calxeda Highbank SATA support"
401	depends on ARCH_HIGHBANK || COMPILE_TEST
402	help
403	  This option enables support for the Calxeda Highbank SoC's
404	  onboard SATA.
405
406	  If unsure, say N.
407
408config SATA_MV
409	tristate "Marvell SATA support"
410	depends on PCI || ARCH_DOVE || ARCH_MV78XX0 || \
411		   ARCH_MVEBU || ARCH_ORION5X || COMPILE_TEST
412	select GENERIC_PHY
413	help
414	  This option enables support for the Marvell Serial ATA family.
415	  Currently supports 88SX[56]0[48][01] PCI(-X) chips,
416	  as well as the newer [67]042 PCI-X/PCIe and SOC devices.
417
418	  If unsure, say N.
419
420config SATA_NV
421	tristate "NVIDIA SATA support"
422	depends on PCI
423	help
424	  This option enables support for NVIDIA Serial ATA.
425
426	  If unsure, say N.
427
428config SATA_PROMISE
429	tristate "Promise SATA TX2/TX4 support"
430	depends on PCI
431	help
432	  This option enables support for Promise Serial ATA TX2/TX4.
433
434	  If unsure, say N.
435
436config SATA_RCAR
437	tristate "Renesas R-Car SATA support"
438	depends on ARCH_RENESAS || COMPILE_TEST
439	help
440	  This option enables support for Renesas R-Car Serial ATA.
441
442	  If unsure, say N.
443
444config SATA_SIL
445	tristate "Silicon Image SATA support"
446	depends on PCI
447	help
448	  This option enables support for Silicon Image Serial ATA.
449
450	  If unsure, say N.
451
452config SATA_SIS
453	tristate "SiS 964/965/966/180 SATA support"
454	depends on PCI
455	select PATA_SIS
456	help
457	  This option enables support for SiS Serial ATA on
458	  SiS 964/965/966/180 and Parallel ATA on SiS 180.
459	  The PATA support for SiS 180 requires additionally to
460	  enable the PATA_SIS driver in the config.
461	  If unsure, say N.
462
463config SATA_SVW
464	tristate "ServerWorks Frodo / Apple K2 SATA support"
465	depends on PCI
466	help
467	  This option enables support for Broadcom/Serverworks/Apple K2
468	  SATA support.
469
470	  If unsure, say N.
471
472config SATA_ULI
473	tristate "ULi Electronics SATA support"
474	depends on PCI
475	help
476	  This option enables support for ULi Electronics SATA.
477
478	  If unsure, say N.
479
480config SATA_VIA
481	tristate "VIA SATA support"
482	depends on PCI
483	help
484	  This option enables support for VIA Serial ATA.
485
486	  If unsure, say N.
487
488config SATA_VITESSE
489	tristate "VITESSE VSC-7174 / INTEL 31244 SATA support"
490	depends on PCI
491	help
492	  This option enables support for Vitesse VSC7174 and Intel 31244 Serial ATA.
493
494	  If unsure, say N.
495
496comment "PATA SFF controllers with BMDMA"
497
498config PATA_ALI
499	tristate "ALi PATA support"
500	depends on PCI
501	help
502	  This option enables support for the ALi ATA interfaces
503	  found on the many ALi chipsets.
504
505	  If unsure, say N.
506
507config PATA_AMD
508	tristate "AMD/NVidia PATA support"
509	depends on PCI
510	help
511	  This option enables support for the AMD and NVidia PATA
512	  interfaces found on the chipsets for Athlon/Athlon64.
513
514	  If unsure, say N.
515
516config PATA_ARASAN_CF
517	tristate "ARASAN CompactFlash PATA Controller Support"
518	depends on ARCH_SPEAR13XX || COMPILE_TEST
519	depends on DMADEVICES
520	select DMA_ENGINE
521	help
522	  Say Y here to support the ARASAN CompactFlash PATA controller
523
524config PATA_ARTOP
525	tristate "ARTOP 6210/6260 PATA support"
526	depends on PCI
527	help
528	  This option enables support for ARTOP PATA controllers.
529
530	  If unsure, say N.
531
532config PATA_ATIIXP
533	tristate "ATI PATA support"
534	depends on PCI
535	help
536	  This option enables support for the ATI ATA interfaces
537	  found on the many ATI chipsets.
538
539	  If unsure, say N.
540
541config PATA_ATP867X
542	tristate "ARTOP/Acard ATP867X PATA support"
543	depends on PCI
544	help
545	  This option enables support for ARTOP/Acard ATP867X PATA
546	  controllers.
547
548	  If unsure, say N.
549
550config PATA_BK3710
551	tristate "Palmchip BK3710 PATA support"
552	depends on ARCH_DAVINCI
553	help
554	  This option enables support for the integrated IDE controller on
555	  the TI DaVinci SoC.
556
557	  If unsure, say N.
558
559config PATA_CMD64X
560	tristate "CMD64x PATA support"
561	depends on PCI
562	help
563	  This option enables support for the CMD64x series chips
564	  except for the CMD640.
565
566	  If unsure, say N.
567
568config PATA_CS5520
569	tristate "CS5510/5520 PATA support"
570	depends on PCI && (X86_32 || COMPILE_TEST)
571	help
572	  This option enables support for the Cyrix 5510/5520
573	  companion chip used with the MediaGX/Geode processor family.
574
575	  If unsure, say N.
576
577config PATA_CS5530
578	tristate "CS5530 PATA support"
579	depends on PCI && (X86_32 || COMPILE_TEST)
580	help
581	  This option enables support for the Cyrix/NatSemi/AMD CS5530
582	  companion chip used with the MediaGX/Geode processor family.
583
584	  If unsure, say N.
585
586config PATA_CS5535
587	tristate "CS5535 PATA support (Experimental)"
588	depends on PCI && X86_32
589	help
590	  This option enables support for the NatSemi/AMD CS5535
591	  companion chip used with the Geode processor family.
592
593	  If unsure, say N.
594
595config PATA_CS5536
596	tristate "CS5536 PATA support"
597	depends on PCI && (X86_32 || MIPS || COMPILE_TEST)
598	help
599	  This option enables support for the AMD CS5536
600	  companion chip used with the Geode LX processor family.
601
602	  If unsure, say N.
603
604config PATA_CYPRESS
605	tristate "Cypress CY82C693 PATA support (Very Experimental)"
606	depends on PCI
607	help
608	  This option enables support for the Cypress/Contaq CY82C693
609	  chipset found in some Alpha systems
610
611	  If unsure, say N.
612
613config PATA_EFAR
614	tristate "EFAR SLC90E66 support"
615	depends on PCI
616	help
617	  This option enables support for the EFAR SLC90E66
618	  IDE controller found on some older machines.
619
620	  If unsure, say N.
621
622config PATA_EP93XX
623	tristate "Cirrus Logic EP93xx PATA support"
624	depends on ARCH_EP93XX
625	help
626	  This option enables support for the PATA controller in
627	  the Cirrus Logic EP9312 and EP9315 ARM CPU.
628
629	  If unsure, say N.
630
631config PATA_FTIDE010
632	tristate "Faraday Technology FTIDE010 PATA support"
633	depends on OF
634	depends on ARM
635	depends on SATA_GEMINI
636	help
637	  This option enables support for the Faraday FTIDE010
638	  PATA controller found in the Cortina Gemini SoCs.
639
640	  If unsure, say N.
641
642config PATA_HPT366
643	tristate "HPT 366/368 PATA support"
644	depends on PCI
645	help
646	  This option enables support for the HPT 366 and 368
647	  PATA controllers via the new ATA layer.
648
649	  If unsure, say N.
650
651config PATA_HPT37X
652	tristate "HPT 370/370A/371/372/374/302 PATA support"
653	depends on PCI
654	help
655	  This option enables support for the majority of the later HPT
656	  PATA controllers via the new ATA layer.
657
658	  If unsure, say N.
659
660config PATA_HPT3X2N
661	tristate "HPT 371N/372N/302N PATA support"
662	depends on PCI
663	help
664	  This option enables support for the N variant HPT PATA
665	  controllers via the new ATA layer.
666
667	  If unsure, say N.
668
669config PATA_HPT3X3
670	tristate "HPT 343/363 PATA support"
671	depends on PCI
672	help
673	  This option enables support for the HPT 343/363
674	  PATA controllers via the new ATA layer
675
676	  If unsure, say N.
677
678config PATA_HPT3X3_DMA
679	bool "HPT 343/363 DMA support"
680	depends on PATA_HPT3X3
681	help
682	  This option enables DMA support for the HPT343/363
683	  controllers. Enable with care as there are still some
684	  problems with DMA on this chipset.
685
686config PATA_ICSIDE
687	tristate "Acorn ICS PATA support"
688	depends on ARM && ARCH_ACORN
689	help
690	  On Acorn systems, say Y here if you wish to use the ICS PATA
691	  interface card.  This is not required for ICS partition support.
692	  If you are unsure, say N to this.
693
694config PATA_IMX
695	tristate "PATA support for Freescale iMX"
696	depends on ARCH_MXC
697	help
698	  This option enables support for the PATA host available on Freescale
699          iMX SoCs.
700
701	  If unsure, say N.
702
703config PATA_IT8213
704	tristate "IT8213 PATA support (Experimental)"
705	depends on PCI
706	help
707	  This option enables support for the ITE 821 PATA
708          controllers via the new ATA layer.
709
710	  If unsure, say N.
711
712config PATA_IT821X
713	tristate "IT8211/2 PATA support"
714	depends on PCI
715	help
716	  This option enables support for the ITE 8211 and 8212
717	  PATA controllers via the new ATA layer, including RAID
718	  mode.
719
720	  If unsure, say N.
721
722config PATA_JMICRON
723	tristate "JMicron PATA support"
724	depends on PCI
725	help
726	  Enable support for the JMicron IDE controller, via the new
727	  ATA layer.
728
729	  If unsure, say N.
730
731config PATA_MACIO
732	tristate "Apple PowerMac/PowerBook internal 'MacIO' IDE"
733	depends on PPC_PMAC
734	help
735	  Most IDE capable PowerMacs have IDE busses driven by a variant
736          of this controller which is part of the Apple chipset used on
737          most PowerMac models. Some models have multiple busses using
738          different chipsets, though generally, MacIO is one of them.
739
740config PATA_MARVELL
741	tristate "Marvell PATA support via legacy mode"
742	depends on PCI
743	help
744	  This option enables limited support for the Marvell 88SE61xx ATA
745	  controllers. If you wish to use only the SATA ports then select
746	  the AHCI driver alone. If you wish to the use the PATA port or
747	  both SATA and PATA include this driver.
748
749	  If unsure, say N.
750
751config PATA_MPC52xx
752	tristate "Freescale MPC52xx SoC internal IDE"
753	depends on PPC_MPC52xx && PPC_BESTCOMM
754	select PPC_BESTCOMM_ATA
755	help
756	  This option enables support for integrated IDE controller
757	  of the Freescale MPC52xx SoC.
758
759	  If unsure, say N.
760
761config PATA_NETCELL
762	tristate "NETCELL Revolution RAID support"
763	depends on PCI
764	help
765	  This option enables support for the Netcell Revolution RAID
766	  PATA controller.
767
768	  If unsure, say N.
769
770config PATA_NINJA32
771	tristate "Ninja32/Delkin Cardbus ATA support"
772	depends on PCI
773	help
774	  This option enables support for the Ninja32, Delkin and
775	  possibly other brands of Cardbus ATA adapter
776
777	  If unsure, say N.
778
779config PATA_NS87415
780	tristate "Nat Semi NS87415 PATA support"
781	depends on PCI
782	help
783	  This option enables support for the National Semiconductor
784	  NS87415 PCI-IDE controller.
785
786	  If unsure, say N.
787
788config PATA_OLDPIIX
789	tristate "Intel PATA old PIIX support"
790	depends on PCI
791	help
792	  This option enables support for early PIIX PATA support.
793
794	  If unsure, say N.
795
796config PATA_OPTIDMA
797	tristate "OPTI FireStar PATA support (Very Experimental)"
798	depends on PCI
799	help
800	  This option enables DMA/PIO support for the later OPTi
801	  controllers found on some old motherboards and in some
802	  laptops.
803
804	  If unsure, say N.
805
806config PATA_PDC2027X
807	tristate "Promise PATA 2027x support"
808	depends on PCI
809	help
810	  This option enables support for Promise PATA pdc20268 to pdc20277 host adapters.
811
812	  If unsure, say N.
813
814config PATA_PDC_OLD
815	tristate "Older Promise PATA controller support"
816	depends on PCI
817	help
818	  This option enables support for the Promise 20246, 20262, 20263,
819	  20265 and 20267 adapters.
820
821	  If unsure, say N.
822
823config PATA_RADISYS
824	tristate "RADISYS 82600 PATA support (Experimental)"
825	depends on PCI
826	help
827	  This option enables support for the RADISYS 82600
828	  PATA controllers via the new ATA layer
829
830	  If unsure, say N.
831
832config PATA_RDC
833	tristate "RDC PATA support"
834	depends on PCI
835	help
836	  This option enables basic support for the later RDC PATA controllers
837	  controllers via the new ATA layer. For the RDC 1010, you need to
838	  enable the IT821X driver instead.
839
840	  If unsure, say N.
841
842config PATA_SC1200
843	tristate "SC1200 PATA support"
844	depends on PCI && (X86_32 || COMPILE_TEST)
845	help
846	  This option enables support for the NatSemi/AMD SC1200 SoC
847	  companion chip used with the Geode processor family.
848
849	  If unsure, say N.
850
851config PATA_SCH
852	tristate "Intel SCH PATA support"
853	depends on PCI
854	help
855	  This option enables support for Intel SCH PATA on the Intel
856	  SCH (US15W, US15L, UL11L) series host controllers.
857
858	  If unsure, say N.
859
860config PATA_SERVERWORKS
861	tristate "SERVERWORKS OSB4/CSB5/CSB6/HT1000 PATA support"
862	depends on PCI
863	help
864	  This option enables support for the Serverworks OSB4/CSB5/CSB6 and
865	  HT1000 PATA controllers, via the new ATA layer.
866
867	  If unsure, say N.
868
869config PATA_SIL680
870	tristate "CMD / Silicon Image 680 PATA support"
871	depends on PCI
872	help
873	  This option enables support for CMD / Silicon Image 680 PATA.
874
875	  If unsure, say N.
876
877config PATA_SIS
878	tristate "SiS PATA support"
879	depends on PCI
880	help
881	  This option enables support for SiS PATA controllers
882
883	  If unsure, say N.
884
885config PATA_TOSHIBA
886	tristate "Toshiba Piccolo support (Experimental)"
887	depends on PCI
888	help
889	  Support for the Toshiba Piccolo controllers. Currently only the
890	  primary channel is supported by this driver.
891
892	  If unsure, say N.
893
894config PATA_TRIFLEX
895	tristate "Compaq Triflex PATA support"
896	depends on PCI
897	help
898	  Enable support for the Compaq 'Triflex' IDE controller as found
899	  on many Compaq Pentium-Pro systems, via the new ATA layer.
900
901	  If unsure, say N.
902
903config PATA_VIA
904	tristate "VIA PATA support"
905	depends on PCI
906	help
907	  This option enables support for the VIA PATA interfaces
908	  found on the many VIA chipsets.
909
910	  If unsure, say N.
911
912config PATA_PXA
913	tristate "PXA DMA-capable PATA support"
914	depends on ARCH_PXA
915	help
916	  This option enables support for harddrive attached to PXA CPU's bus.
917
918	  NOTE: This driver utilizes PXA DMA controller, in case your hardware
919	        is not capable of doing MWDMA, use pata_platform instead.
920
921	  If unsure, say N.
922
923config PATA_WINBOND
924	tristate "Winbond SL82C105 PATA support"
925	depends on PCI
926	help
927	  This option enables support for SL82C105 PATA devices found in the
928	  Netwinder and some other systems
929
930	  If unsure, say N.
931
932endif # ATA_BMDMA
933
934comment "PIO-only SFF controllers"
935
936config PATA_CMD640_PCI
937	tristate "CMD640 PCI PATA support (Experimental)"
938	depends on PCI
939	help
940	  This option enables support for the CMD640 PCI IDE
941	  interface chip. Only the primary channel is currently
942	  supported.
943
944	  If unsure, say N.
945
946config PATA_FALCON
947	tristate "Atari Falcon PATA support"
948	depends on M68K && ATARI
949	help
950	  This option enables support for the on-board IDE
951	  interface on the Atari Falcon.
952
953	  If unsure, say N.
954
955config PATA_GAYLE
956	tristate "Amiga Gayle PATA support"
957	depends on M68K && AMIGA
958	help
959	  This option enables support for the on-board IDE
960	  interfaces on some Amiga models (A600, A1200,
961	  A4000 and A4000T) and also for IDE interfaces on
962	  the Zorro expansion bus (M-Tech E-Matrix 530
963	  expansion card).
964
965	  If unsure, say N.
966
967config PATA_ISAPNP
968	tristate "ISA Plug and Play PATA support"
969	depends on ISAPNP
970	help
971	  This option enables support for ISA plug & play ATA
972	  controllers such as those found on old soundcards.
973
974	  If unsure, say N.
975
976config PATA_IXP4XX_CF
977	tristate "IXP4XX Compact Flash support"
978	depends on ARCH_IXP4XX
979	help
980	  This option enables support for a Compact Flash connected on
981	  the ixp4xx expansion bus. This driver had been written for
982	  Loft/Avila boards in mind but can work with others.
983
984	  If unsure, say N.
985
986config PATA_MPIIX
987	tristate "Intel PATA MPIIX support"
988	depends on PCI
989	help
990	  This option enables support for MPIIX PATA support.
991
992	  If unsure, say N.
993
994config PATA_NS87410
995	tristate "Nat Semi NS87410 PATA support"
996	depends on PCI
997	help
998	  This option enables support for the National Semiconductor
999	  NS87410 PCI-IDE controller.
1000
1001	  If unsure, say N.
1002
1003config PATA_OPTI
1004	tristate "OPTI621/6215 PATA support (Very Experimental)"
1005	depends on PCI
1006	help
1007	  This option enables full PIO support for the early Opti ATA
1008	  controllers found on some old motherboards.
1009
1010	  If unsure, say N.
1011
1012config PATA_PALMLD
1013	tristate "Palm LifeDrive PATA support"
1014	depends on MACH_PALMLD
1015	help
1016	  This option enables support for Palm LifeDrive's internal ATA
1017	  port via the new ATA layer.
1018
1019	  If unsure, say N.
1020
1021config PATA_PCMCIA
1022	tristate "PCMCIA PATA support"
1023	depends on PCMCIA
1024	help
1025	  This option enables support for PCMCIA ATA interfaces, including
1026	  compact flash card adapters via the new ATA layer.
1027
1028	  If unsure, say N.
1029
1030config PATA_PLATFORM
1031	tristate "Generic platform device PATA support"
1032	depends on EXPERT || PPC || HAVE_PATA_PLATFORM
1033	help
1034	  This option enables support for generic directly connected ATA
1035	  devices commonly found on embedded systems.
1036
1037	  If unsure, say N.
1038
1039config PATA_OF_PLATFORM
1040	tristate "OpenFirmware platform device PATA support"
1041	depends on PATA_PLATFORM && OF
1042	help
1043	  This option enables support for generic directly connected ATA
1044	  devices commonly found on embedded systems with OpenFirmware
1045	  bindings.
1046
1047	  If unsure, say N.
1048
1049config PATA_QDI
1050	tristate "QDI VLB PATA support"
1051	depends on ISA
1052	select PATA_LEGACY
1053	help
1054	  Support for QDI 6500 and 6580 PATA controllers on VESA local bus.
1055
1056config PATA_RB532
1057	tristate "RouterBoard 532 PATA CompactFlash support"
1058	depends on MIKROTIK_RB532
1059	help
1060	  This option enables support for the RouterBoard 532
1061	  PATA CompactFlash controller.
1062
1063	  If unsure, say N.
1064
1065config PATA_RZ1000
1066	tristate "PC Tech RZ1000 PATA support"
1067	depends on PCI
1068	help
1069	  This option enables basic support for the PC Tech RZ1000/1
1070	  PATA controllers via the new ATA layer
1071
1072	  If unsure, say N.
1073
1074config PATA_SAMSUNG_CF
1075	tristate "Samsung SoC PATA support"
1076	depends on SAMSUNG_DEV_IDE
1077	help
1078	  This option enables basic support for Samsung's S3C/S5P board
1079	  PATA controllers via the new ATA layer
1080
1081	  If unsure, say N.
1082
1083config PATA_WINBOND_VLB
1084	tristate "Winbond W83759A VLB PATA support (Experimental)"
1085	depends on ISA
1086	select PATA_LEGACY
1087	help
1088	  Support for the Winbond W83759A controller on Vesa Local Bus
1089	  systems.
1090
1091comment "Generic fallback / legacy drivers"
1092
1093config PATA_ACPI
1094	tristate "ACPI firmware driver for PATA"
1095	depends on ATA_ACPI && ATA_BMDMA
1096	help
1097	  This option enables an ACPI method driver which drives
1098	  motherboard PATA controller interfaces through the ACPI
1099	  firmware in the BIOS. This driver can sometimes handle
1100	  otherwise unsupported hardware.
1101
1102config ATA_GENERIC
1103	tristate "Generic ATA support"
1104	depends on PCI && ATA_BMDMA
1105	help
1106	  This option enables support for generic BIOS configured
1107	  ATA controllers via the new ATA layer
1108
1109	  If unsure, say N.
1110
1111config PATA_LEGACY
1112	tristate "Legacy ISA PATA support (Experimental)"
1113	depends on (ISA || PCI)
1114	help
1115	  This option enables support for ISA/VLB/PCI bus legacy PATA
1116	  ports and allows them to be accessed via the new ATA layer.
1117
1118	  If unsure, say N.
1119
1120endif # ATA_SFF
1121endif # ATA
1122