xref: /openbmc/linux/drivers/ata/Kconfig (revision b04b4f78)
1#
2# SATA/PATA driver configuration
3#
4
5menuconfig ATA
6	tristate "Serial ATA (prod) and Parallel ATA (experimental) drivers"
7	depends on HAS_IOMEM
8	depends on BLOCK
9	depends on !(M32R || M68K) || BROKEN
10	select SCSI
11	---help---
12	  If you want to use a ATA hard disk, ATA tape drive, ATA CD-ROM or
13	  any other ATA device under Linux, say Y and make sure that you know
14	  the name of your ATA host adapter (the card inside your computer
15	  that "speaks" the ATA protocol, also called ATA controller),
16	  because you will be asked for it.
17
18	  NOTE: ATA enables basic SCSI support; *however*,
19	  'SCSI disk support', 'SCSI tape support', or
20	  'SCSI CDROM support' may also be needed,
21	  depending on your hardware configuration.
22
23if ATA
24
25config ATA_NONSTANDARD
26       bool
27       default n
28
29config ATA_ACPI
30	bool "ATA ACPI Support"
31	depends on ACPI && PCI
32	select ACPI_DOCK
33	default y
34	help
35	  This option adds support for ATA-related ACPI objects.
36	  These ACPI objects add the ability to retrieve taskfiles
37	  from the ACPI BIOS and write them to the disk controller.
38	  These objects may be related to performance, security,
39	  power management, or other areas.
40	  You can disable this at kernel boot time by using the
41	  option libata.noacpi=1
42
43config SATA_PMP
44	bool "SATA Port Multiplier support"
45	default y
46	help
47	  This option adds support for SATA Port Multipliers
48	  (the SATA version of an ethernet hub, or SAS expander).
49
50config SATA_AHCI
51	tristate "AHCI SATA support"
52	depends on PCI
53	help
54	  This option enables support for AHCI Serial ATA.
55
56	  If unsure, say N.
57
58config SATA_SIL24
59	tristate "Silicon Image 3124/3132 SATA support"
60	depends on PCI
61	help
62	  This option enables support for Silicon Image 3124/3132 Serial ATA.
63
64	  If unsure, say N.
65
66config SATA_FSL
67	tristate "Freescale 3.0Gbps SATA support"
68	depends on FSL_SOC
69	help
70	  This option enables support for Freescale 3.0Gbps SATA controller.
71	  It can be found on MPC837x and MPC8315.
72
73	  If unsure, say N.
74
75config ATA_SFF
76	bool "ATA SFF support"
77	default y
78	help
79	  This option adds support for ATA controllers with SFF
80	  compliant or similar programming interface.
81
82	  SFF is the legacy IDE interface that has been around since
83	  the dawn of time.  Almost all PATA controllers have an
84	  SFF interface.  Many SATA controllers have an SFF interface
85	  when configured into a legacy compatibility mode.
86
87	  For users with exclusively modern controllers like AHCI,
88	  Silicon Image 3124, or Marvell 6440, you may choose to
89	  disable this unneeded SFF support.
90
91	  If unsure, say Y.
92
93if ATA_SFF
94
95config SATA_SVW
96	tristate "ServerWorks Frodo / Apple K2 SATA support"
97	depends on PCI
98	help
99	  This option enables support for Broadcom/Serverworks/Apple K2
100	  SATA support.
101
102	  If unsure, say N.
103
104config ATA_PIIX
105	tristate "Intel ESB, ICH, PIIX3, PIIX4 PATA/SATA support"
106	depends on PCI
107	help
108	  This option enables support for ICH5/6/7/8 Serial ATA
109	  and support for PATA on the Intel ESB/ICH/PIIX3/PIIX4 series
110	  host controllers.
111
112	  If unsure, say N.
113
114config SATA_MV
115	tristate "Marvell SATA support"
116	help
117	  This option enables support for the Marvell Serial ATA family.
118	  Currently supports 88SX[56]0[48][01] PCI(-X) chips,
119	  as well as the newer [67]042 PCI-X/PCIe and SOC devices.
120
121	  If unsure, say N.
122
123config SATA_NV
124	tristate "NVIDIA SATA support"
125	depends on PCI
126	help
127	  This option enables support for NVIDIA Serial ATA.
128
129	  If unsure, say N.
130
131config PDC_ADMA
132	tristate "Pacific Digital ADMA support"
133	depends on PCI
134	help
135	  This option enables support for Pacific Digital ADMA controllers
136
137	  If unsure, say N.
138
139config SATA_QSTOR
140	tristate "Pacific Digital SATA QStor support"
141	depends on PCI
142	help
143	  This option enables support for Pacific Digital Serial ATA QStor.
144
145	  If unsure, say N.
146
147config SATA_PROMISE
148	tristate "Promise SATA TX2/TX4 support"
149	depends on PCI
150	help
151	  This option enables support for Promise Serial ATA TX2/TX4.
152
153	  If unsure, say N.
154
155config SATA_SX4
156	tristate "Promise SATA SX4 support (Experimental)"
157	depends on PCI && EXPERIMENTAL
158	help
159	  This option enables support for Promise Serial ATA SX4.
160
161	  If unsure, say N.
162
163config SATA_SIL
164	tristate "Silicon Image SATA support"
165	depends on PCI
166	help
167	  This option enables support for Silicon Image Serial ATA.
168
169	  If unsure, say N.
170
171config SATA_SIS
172	tristate "SiS 964/965/966/180 SATA support"
173	depends on PCI
174	select PATA_SIS
175	help
176	  This option enables support for SiS Serial ATA on
177	  SiS 964/965/966/180 and Parallel ATA on SiS 180.
178	  The PATA support for SiS 180 requires additionally to
179	  enable the PATA_SIS driver in the config.
180	  If unsure, say N.
181
182config SATA_ULI
183	tristate "ULi Electronics SATA support"
184	depends on PCI
185	help
186	  This option enables support for ULi Electronics SATA.
187
188	  If unsure, say N.
189
190config SATA_VIA
191	tristate "VIA SATA support"
192	depends on PCI
193	help
194	  This option enables support for VIA Serial ATA.
195
196	  If unsure, say N.
197
198config SATA_VITESSE
199	tristate "VITESSE VSC-7174 / INTEL 31244 SATA support"
200	depends on PCI
201	help
202	  This option enables support for Vitesse VSC7174 and Intel 31244 Serial ATA.
203
204	  If unsure, say N.
205
206config SATA_INIC162X
207	tristate "Initio 162x SATA support"
208	depends on PCI
209	help
210	  This option enables support for Initio 162x Serial ATA.
211
212config PATA_ACPI
213	tristate "ACPI firmware driver for PATA"
214	depends on ATA_ACPI
215	help
216	  This option enables an ACPI method driver which drives
217	  motherboard PATA controller interfaces through the ACPI
218	  firmware in the BIOS. This driver can sometimes handle
219	  otherwise unsupported hardware.
220
221config PATA_ALI
222	tristate "ALi PATA support"
223	depends on PCI
224	help
225	  This option enables support for the ALi ATA interfaces
226	  found on the many ALi chipsets.
227
228	  If unsure, say N.
229
230config PATA_AMD
231	tristate "AMD/NVidia PATA support"
232	depends on PCI
233	help
234	  This option enables support for the AMD and NVidia PATA
235	  interfaces found on the chipsets for Athlon/Athlon64.
236
237	  If unsure, say N.
238
239config PATA_ARTOP
240	tristate "ARTOP 6210/6260 PATA support"
241	depends on PCI
242	help
243	  This option enables support for ARTOP PATA controllers.
244
245	  If unsure, say N.
246
247config PATA_AT32
248	tristate "Atmel AVR32 PATA support (Experimental)"
249	depends on AVR32 && PLATFORM_AT32AP && EXPERIMENTAL
250	help
251	  This option enables support for the IDE devices on the
252	  Atmel AT32AP platform.
253
254	  If unsure, say N.
255
256config PATA_ATIIXP
257	tristate "ATI PATA support"
258	depends on PCI
259	help
260	  This option enables support for the ATI ATA interfaces
261	  found on the many ATI chipsets.
262
263	  If unsure, say N.
264
265config PATA_CMD640_PCI
266	tristate "CMD640 PCI PATA support (Experimental)"
267	depends on PCI && EXPERIMENTAL
268	help
269	  This option enables support for the CMD640 PCI IDE
270	  interface chip. Only the primary channel is currently
271	  supported.
272
273	  If unsure, say N.
274
275config PATA_CMD64X
276	tristate "CMD64x PATA support"
277	depends on PCI
278	help
279	  This option enables support for the CMD64x series chips
280	  except for the CMD640.
281
282	  If unsure, say N.
283
284config PATA_CS5520
285	tristate "CS5510/5520 PATA support"
286	depends on PCI
287	help
288	  This option enables support for the Cyrix 5510/5520
289	  companion chip used with the MediaGX/Geode processor family.
290
291	  If unsure, say N.
292
293config PATA_CS5530
294	tristate "CS5530 PATA support"
295	depends on PCI
296	help
297	  This option enables support for the Cyrix/NatSemi/AMD CS5530
298	  companion chip used with the MediaGX/Geode processor family.
299
300	  If unsure, say N.
301
302config PATA_CS5535
303	tristate "CS5535 PATA support (Experimental)"
304	depends on PCI && X86 && !X86_64 && EXPERIMENTAL
305	help
306	  This option enables support for the NatSemi/AMD CS5535
307	  companion chip used with the Geode processor family.
308
309	  If unsure, say N.
310
311config PATA_CS5536
312	tristate "CS5536 PATA support"
313	depends on PCI && X86 && !X86_64
314	help
315	  This option enables support for the AMD CS5536
316	  companion chip used with the Geode LX processor family.
317
318	  If unsure, say N.
319
320config PATA_CYPRESS
321	tristate "Cypress CY82C693 PATA support (Very Experimental)"
322	depends on PCI && EXPERIMENTAL
323	help
324	  This option enables support for the Cypress/Contaq CY82C693
325	  chipset found in some Alpha systems
326
327	  If unsure, say N.
328
329config PATA_EFAR
330	tristate "EFAR SLC90E66 support"
331	depends on PCI
332	help
333	  This option enables support for the EFAR SLC90E66
334	  IDE controller found on some older machines.
335
336	  If unsure, say N.
337
338config ATA_GENERIC
339	tristate "Generic ATA support"
340	depends on PCI
341	help
342	  This option enables support for generic BIOS configured
343	  ATA controllers via the new ATA layer
344
345	  If unsure, say N.
346
347config PATA_HPT366
348	tristate "HPT 366/368 PATA support"
349	depends on PCI
350	help
351	  This option enables support for the HPT 366 and 368
352	  PATA controllers via the new ATA layer.
353
354	  If unsure, say N.
355
356config PATA_HPT37X
357	tristate "HPT 370/370A/371/372/374/302 PATA support (Experimental)"
358	depends on PCI && EXPERIMENTAL
359	help
360	  This option enables support for the majority of the later HPT
361	  PATA controllers via the new ATA layer.
362
363	  If unsure, say N.
364
365config PATA_HPT3X2N
366	tristate "HPT 372N/302N PATA support (Experimental)"
367	depends on PCI && EXPERIMENTAL
368	help
369	  This option enables support for the N variant HPT PATA
370	  controllers via the new ATA layer
371
372	  If unsure, say N.
373
374config PATA_HPT3X3
375	tristate "HPT 343/363 PATA support"
376	depends on PCI
377	help
378	  This option enables support for the HPT 343/363
379	  PATA controllers via the new ATA layer
380
381	  If unsure, say N.
382
383config PATA_HPT3X3_DMA
384	bool "HPT 343/363 DMA support (Experimental)"
385	depends on PATA_HPT3X3
386	help
387	  This option enables DMA support for the HPT343/363
388	  controllers. Enable with care as there are still some
389	  problems with DMA on this chipset.
390
391config PATA_ISAPNP
392	tristate "ISA Plug and Play PATA support"
393	depends on ISAPNP
394	help
395	  This option enables support for ISA plug & play ATA
396	  controllers such as those found on old soundcards.
397
398	  If unsure, say N.
399
400config PATA_IT821X
401	tristate "IT8211/2 PATA support"
402	depends on PCI
403	help
404	  This option enables support for the ITE 8211 and 8212
405	  PATA controllers via the new ATA layer, including RAID
406	  mode.
407
408	  If unsure, say N.
409
410config PATA_IT8213
411	tristate "IT8213 PATA support (Experimental)"
412	depends on PCI && EXPERIMENTAL
413	help
414	  This option enables support for the ITE 821 PATA
415          controllers via the new ATA layer.
416
417	  If unsure, say N.
418
419config PATA_JMICRON
420	tristate "JMicron PATA support"
421	depends on PCI
422	help
423	  Enable support for the JMicron IDE controller, via the new
424	  ATA layer.
425
426	  If unsure, say N.
427
428config PATA_LEGACY
429	tristate "Legacy ISA PATA support (Experimental)"
430	depends on ISA && EXPERIMENTAL
431	help
432	  This option enables support for ISA/VLB bus legacy PATA
433	  ports and allows them to be accessed via the new ATA layer.
434
435	  If unsure, say N.
436
437config PATA_TRIFLEX
438	tristate "Compaq Triflex PATA support"
439	depends on PCI
440	help
441	  Enable support for the Compaq 'Triflex' IDE controller as found
442	  on many Compaq Pentium-Pro systems, via the new ATA layer.
443
444	  If unsure, say N.
445
446config PATA_MARVELL
447	tristate "Marvell PATA support via legacy mode"
448	depends on PCI
449	help
450	  This option enables limited support for the Marvell 88SE61xx ATA
451	  controllers. If you wish to use only the SATA ports then select
452	  the AHCI driver alone. If you wish to the use the PATA port or
453	  both SATA and PATA include this driver.
454
455	  If unsure, say N.
456
457config PATA_MPC52xx
458	tristate "Freescale MPC52xx SoC internal IDE"
459	depends on PPC_MPC52xx && PPC_BESTCOMM
460	select PPC_BESTCOMM_ATA
461	help
462	  This option enables support for integrated IDE controller
463	  of the Freescale MPC52xx SoC.
464
465	  If unsure, say N.
466
467config PATA_MPIIX
468	tristate "Intel PATA MPIIX support"
469	depends on PCI
470	help
471	  This option enables support for MPIIX PATA support.
472
473	  If unsure, say N.
474
475config PATA_OLDPIIX
476	tristate "Intel PATA old PIIX support"
477	depends on PCI
478	help
479	  This option enables support for early PIIX PATA support.
480
481	  If unsure, say N.
482
483config PATA_NETCELL
484	tristate "NETCELL Revolution RAID support"
485	depends on PCI
486	help
487	  This option enables support for the Netcell Revolution RAID
488	  PATA controller.
489
490	  If unsure, say N.
491
492config PATA_NINJA32
493	tristate "Ninja32/Delkin Cardbus ATA support (Experimental)"
494	depends on PCI && EXPERIMENTAL
495	help
496	  This option enables support for the Ninja32, Delkin and
497	  possibly other brands of Cardbus ATA adapter
498
499	  If unsure, say N.
500
501config PATA_NS87410
502	tristate "Nat Semi NS87410 PATA support"
503	depends on PCI
504	help
505	  This option enables support for the National Semiconductor
506	  NS87410 PCI-IDE controller.
507
508	  If unsure, say N.
509
510config PATA_NS87415
511	tristate "Nat Semi NS87415 PATA support"
512	depends on PCI
513	help
514	  This option enables support for the National Semiconductor
515	  NS87415 PCI-IDE controller.
516
517	  If unsure, say N.
518
519config PATA_OPTI
520	tristate "OPTI621/6215 PATA support (Very Experimental)"
521	depends on PCI && EXPERIMENTAL
522	help
523	  This option enables full PIO support for the early Opti ATA
524	  controllers found on some old motherboards.
525
526	  If unsure, say N.
527
528config PATA_OPTIDMA
529	tristate "OPTI FireStar PATA support (Very Experimental)"
530	depends on PCI && EXPERIMENTAL
531	help
532	  This option enables DMA/PIO support for the later OPTi
533	  controllers found on some old motherboards and in some
534	  laptops.
535
536	  If unsure, say N.
537
538config PATA_PCMCIA
539	tristate "PCMCIA PATA support"
540	depends on PCMCIA
541	help
542	  This option enables support for PCMCIA ATA interfaces, including
543	  compact flash card adapters via the new ATA layer.
544
545	  If unsure, say N.
546
547config PATA_PDC_OLD
548	tristate "Older Promise PATA controller support"
549	depends on PCI
550	help
551	  This option enables support for the Promise 20246, 20262, 20263,
552	  20265 and 20267 adapters.
553
554	  If unsure, say N.
555
556config PATA_QDI
557	tristate "QDI VLB PATA support"
558	depends on ISA
559	help
560	  Support for QDI 6500 and 6580 PATA controllers on VESA local bus.
561
562config PATA_RADISYS
563	tristate "RADISYS 82600 PATA support (Experimental)"
564	depends on PCI && EXPERIMENTAL
565	help
566	  This option enables support for the RADISYS 82600
567	  PATA controllers via the new ATA layer
568
569	  If unsure, say N.
570
571config PATA_RB532
572	tristate "RouterBoard 532 PATA CompactFlash support"
573	depends on MIKROTIK_RB532
574	help
575	  This option enables support for the RouterBoard 532
576	  PATA CompactFlash controller.
577
578	  If unsure, say N.
579
580config PATA_RZ1000
581	tristate "PC Tech RZ1000 PATA support"
582	depends on PCI
583	help
584	  This option enables basic support for the PC Tech RZ1000/1
585	  PATA controllers via the new ATA layer
586
587	  If unsure, say N.
588
589config PATA_SC1200
590	tristate "SC1200 PATA support"
591	depends on PCI
592	help
593	  This option enables support for the NatSemi/AMD SC1200 SoC
594	  companion chip used with the Geode processor family.
595
596	  If unsure, say N.
597
598config PATA_SERVERWORKS
599	tristate "SERVERWORKS OSB4/CSB5/CSB6/HT1000 PATA support"
600	depends on PCI
601	help
602	  This option enables support for the Serverworks OSB4/CSB5/CSB6 and
603	  HT1000 PATA controllers, via the new ATA layer.
604
605	  If unsure, say N.
606
607config PATA_PDC2027X
608	tristate "Promise PATA 2027x support"
609	depends on PCI
610	help
611	  This option enables support for Promise PATA pdc20268 to pdc20277 host adapters.
612
613	  If unsure, say N.
614
615config PATA_SIL680
616	tristate "CMD / Silicon Image 680 PATA support"
617	depends on PCI
618	help
619	  This option enables support for CMD / Silicon Image 680 PATA.
620
621	  If unsure, say N.
622
623config PATA_SIS
624	tristate "SiS PATA support"
625	depends on PCI
626	help
627	  This option enables support for SiS PATA controllers
628
629	  If unsure, say N.
630
631config PATA_VIA
632	tristate "VIA PATA support"
633	depends on PCI
634	help
635	  This option enables support for the VIA PATA interfaces
636	  found on the many VIA chipsets.
637
638	  If unsure, say N.
639
640config PATA_WINBOND
641	tristate "Winbond SL82C105 PATA support"
642	depends on PCI
643	help
644	  This option enables support for SL82C105 PATA devices found in the
645	  Netwinder and some other systems
646
647	  If unsure, say N.
648
649config PATA_WINBOND_VLB
650	tristate "Winbond W83759A VLB PATA support (Experimental)"
651	depends on ISA && EXPERIMENTAL
652	help
653	  Support for the Winbond W83759A controller on Vesa Local Bus
654	  systems.
655
656config HAVE_PATA_PLATFORM
657	bool
658	help
659	  This is an internal configuration node for any machine that
660	  uses pata-platform driver to enable the relevant driver in the
661	  configuration structure without having to submit endless patches
662	  to update the PATA_PLATFORM entry.
663
664config PATA_PLATFORM
665	tristate "Generic platform device PATA support"
666	depends on EMBEDDED || PPC || HAVE_PATA_PLATFORM
667	help
668	  This option enables support for generic directly connected ATA
669	  devices commonly found on embedded systems.
670
671	  If unsure, say N.
672
673config PATA_OF_PLATFORM
674	tristate "OpenFirmware platform device PATA support"
675	depends on PATA_PLATFORM && PPC_OF
676	help
677	  This option enables support for generic directly connected ATA
678	  devices commonly found on embedded systems with OpenFirmware
679	  bindings.
680
681	  If unsure, say N.
682
683config PATA_ICSIDE
684	tristate "Acorn ICS PATA support"
685	depends on ARM && ARCH_ACORN
686	help
687	  On Acorn systems, say Y here if you wish to use the ICS PATA
688	  interface card.  This is not required for ICS partition support.
689	  If you are unsure, say N to this.
690
691config PATA_IXP4XX_CF
692	tristate "IXP4XX Compact Flash support"
693	depends on ARCH_IXP4XX
694	help
695	  This option enables support for a Compact Flash connected on
696	  the ixp4xx expansion bus. This driver had been written for
697	  Loft/Avila boards in mind but can work with others.
698
699	  If unsure, say N.
700
701config PATA_OCTEON_CF
702	tristate "OCTEON Boot Bus Compact Flash support"
703	depends on CPU_CAVIUM_OCTEON
704	help
705	  This option enables a polled compact flash driver for use with
706	  compact flash cards attached to the OCTEON boot bus.
707
708	  If unsure, say N.
709
710config PATA_SCC
711	tristate "Toshiba's Cell Reference Set IDE support"
712	depends on PCI && PPC_CELLEB
713	help
714	  This option enables support for the built-in IDE controller on
715	  Toshiba Cell Reference Board.
716
717	  If unsure, say N.
718
719config PATA_SCH
720	tristate "Intel SCH PATA support"
721	depends on PCI
722	help
723	  This option enables support for Intel SCH PATA on the Intel
724	  SCH (US15W, US15L, UL11L) series host controllers.
725
726	  If unsure, say N.
727
728config PATA_BF54X
729	tristate "Blackfin 54x ATAPI support"
730	depends on BF542 || BF548 || BF549
731	help
732	  This option enables support for the built-in ATAPI controller on
733	  Blackfin 54x family chips.
734
735	  If unsure, say N.
736
737endif # ATA_SFF
738endif # ATA
739