xref: /linux/drivers/ata/Kconfig (revision 40d3057ac036f2501c1930728a6179be4fca577b)
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	depends on !SUN4 || BROKEN
11	select SCSI
12	---help---
13	  If you want to use a ATA hard disk, ATA tape drive, ATA CD-ROM or
14	  any other ATA device under Linux, say Y and make sure that you know
15	  the name of your ATA host adapter (the card inside your computer
16	  that "speaks" the ATA protocol, also called ATA controller),
17	  because you will be asked for it.
18
19	  NOTE: ATA enables basic SCSI support; *however*,
20	  'SCSI disk support', 'SCSI tape support', or
21	  'SCSI CDROM support' may also be needed,
22	  depending on your hardware configuration.
23
24if ATA
25
26config ATA_NONSTANDARD
27       bool
28       default n
29
30config ATA_ACPI
31	bool "ATA ACPI Support"
32	depends on ACPI && PCI
33	select ACPI_DOCK
34	default y
35	help
36	  This option adds support for ATA-related ACPI objects.
37	  These ACPI objects add the ability to retrieve taskfiles
38	  from the ACPI BIOS and write them to the disk controller.
39	  These objects may be related to performance, security,
40	  power management, or other areas.
41	  You can disable this at kernel boot time by using the
42	  option libata.noacpi=1
43
44config SATA_PMP
45	bool "SATA Port Multiplier support"
46	default y
47	help
48	  This option adds support for SATA Port Multipliers
49	  (the SATA version of an ethernet hub, or SAS expander).
50
51config SATA_AHCI
52	tristate "AHCI SATA support"
53	depends on PCI
54	help
55	  This option enables support for AHCI Serial ATA.
56
57	  If unsure, say N.
58
59config SATA_SIL24
60	tristate "Silicon Image 3124/3132 SATA support"
61	depends on PCI
62	help
63	  This option enables support for Silicon Image 3124/3132 Serial ATA.
64
65	  If unsure, say N.
66
67config SATA_FSL
68	tristate "Freescale 3.0Gbps SATA support"
69	depends on FSL_SOC
70	help
71	  This option enables support for Freescale 3.0Gbps SATA controller.
72	  It can be found on MPC837x and MPC8315.
73
74	  If unsure, say N.
75
76config ATA_SFF
77	bool "ATA SFF support"
78	default y
79	help
80	  This option adds support for ATA controllers with SFF
81	  compliant or similar programming interface.
82
83	  SFF is the legacy IDE interface that has been around since
84	  the dawn of time.  Almost all PATA controllers have an
85	  SFF interface.  Many SATA controllers have an SFF interface
86	  when configured into a legacy compatibility mode.
87
88	  For users with exclusively modern controllers like AHCI,
89	  Silicon Image 3124, or Marvell 6440, you may choose to
90	  disable this uneeded SFF support.
91
92	  If unsure, say Y.
93
94if ATA_SFF
95
96config SATA_SVW
97	tristate "ServerWorks Frodo / Apple K2 SATA support"
98	depends on PCI
99	help
100	  This option enables support for Broadcom/Serverworks/Apple K2
101	  SATA support.
102
103	  If unsure, say N.
104
105config ATA_PIIX
106	tristate "Intel ESB, ICH, PIIX3, PIIX4 PATA/SATA support"
107	depends on PCI
108	help
109	  This option enables support for ICH5/6/7/8 Serial ATA
110	  and support for PATA on the Intel ESB/ICH/PIIX3/PIIX4 series
111	  host controllers.
112
113	  If unsure, say N.
114
115config SATA_MV
116	tristate "Marvell SATA support (HIGHLY EXPERIMENTAL)"
117	depends on EXPERIMENTAL
118	help
119	  This option enables support for the Marvell Serial ATA family.
120	  Currently supports 88SX[56]0[48][01] chips.
121
122	  If unsure, say N.
123
124config SATA_NV
125	tristate "NVIDIA SATA support"
126	depends on PCI
127	help
128	  This option enables support for NVIDIA Serial ATA.
129
130	  If unsure, say N.
131
132config PDC_ADMA
133	tristate "Pacific Digital ADMA support"
134	depends on PCI
135	help
136	  This option enables support for Pacific Digital ADMA controllers
137
138	  If unsure, say N.
139
140config SATA_QSTOR
141	tristate "Pacific Digital SATA QStor support"
142	depends on PCI
143	help
144	  This option enables support for Pacific Digital Serial ATA QStor.
145
146	  If unsure, say N.
147
148config SATA_PROMISE
149	tristate "Promise SATA TX2/TX4 support"
150	depends on PCI
151	help
152	  This option enables support for Promise Serial ATA TX2/TX4.
153
154	  If unsure, say N.
155
156config SATA_SX4
157	tristate "Promise SATA SX4 support"
158	depends on PCI && EXPERIMENTAL
159	help
160	  This option enables support for Promise Serial ATA SX4.
161
162	  If unsure, say N.
163
164config SATA_SIL
165	tristate "Silicon Image SATA support"
166	depends on PCI
167	help
168	  This option enables support for Silicon Image Serial ATA.
169
170	  If unsure, say N.
171
172config SATA_SIS
173	tristate "SiS 964/965/966/180 SATA support"
174	depends on PCI
175	select PATA_SIS
176	help
177	  This option enables support for SiS Serial ATA on
178	  SiS 964/965/966/180 and Parallel ATA on SiS 180.
179	  The PATA support for SiS 180 requires additionally to
180	  enable the PATA_SIS driver in the config.
181	  If unsure, say N.
182
183config SATA_ULI
184	tristate "ULi Electronics SATA support"
185	depends on PCI
186	help
187	  This option enables support for ULi Electronics SATA.
188
189	  If unsure, say N.
190
191config SATA_VIA
192	tristate "VIA SATA support"
193	depends on PCI
194	help
195	  This option enables support for VIA Serial ATA.
196
197	  If unsure, say N.
198
199config SATA_VITESSE
200	tristate "VITESSE VSC-7174 / INTEL 31244 SATA support"
201	depends on PCI
202	help
203	  This option enables support for Vitesse VSC7174 and Intel 31244 Serial ATA.
204
205	  If unsure, say N.
206
207config SATA_INIC162X
208	tristate "Initio 162x SATA support"
209	depends on PCI
210	help
211	  This option enables support for Initio 162x Serial ATA.
212
213config PATA_ACPI
214	tristate "ACPI firmware driver for PATA"
215	depends on ATA_ACPI
216	help
217	  This option enables an ACPI method driver which drives
218	  motherboard PATA controller interfaces through the ACPI
219	  firmware in the BIOS. This driver can sometimes handle
220	  otherwise unsupported hardware.
221
222config PATA_ALI
223	tristate "ALi PATA support (Experimental)"
224	depends on PCI && EXPERIMENTAL
225	help
226	  This option enables support for the ALi ATA interfaces
227	  found on the many ALi chipsets.
228
229	  If unsure, say N.
230
231config PATA_AMD
232	tristate "AMD/NVidia PATA support"
233	depends on PCI
234	help
235	  This option enables support for the AMD and NVidia PATA
236	  interfaces found on the chipsets for Athlon/Athlon64.
237
238	  If unsure, say N.
239
240config PATA_ARTOP
241	tristate "ARTOP 6210/6260 PATA support"
242	depends on PCI
243	help
244	  This option enables support for ARTOP PATA controllers.
245
246	  If unsure, say N.
247
248config PATA_AT32
249	tristate "Atmel AVR32 PATA support (Experimental)"
250	depends on AVR32 && PLATFORM_AT32AP && EXPERIMENTAL
251	help
252	  This option enables support for the IDE devices on the
253	  Atmel AT32AP platform.
254
255	  If unsure, say N.
256
257config PATA_ATIIXP
258	tristate "ATI PATA support"
259	depends on PCI
260	help
261	  This option enables support for the ATI ATA interfaces
262	  found on the many ATI chipsets.
263
264	  If unsure, say N.
265
266config PATA_CMD640_PCI
267	tristate "CMD640 PCI PATA support (Very Experimental)"
268	depends on PCI && EXPERIMENTAL
269	help
270	  This option enables support for the CMD640 PCI IDE
271	  interface chip. Only the primary channel is currently
272	  supported.
273
274	  If unsure, say N.
275
276config PATA_CMD64X
277	tristate "CMD64x PATA support"
278	depends on PCI
279	help
280	  This option enables support for the CMD64x series chips
281	  except for the CMD640.
282
283	  If unsure, say N.
284
285config PATA_CS5520
286	tristate "CS5510/5520 PATA support"
287	depends on PCI
288	help
289	  This option enables support for the Cyrix 5510/5520
290	  companion chip used with the MediaGX/Geode processor family.
291
292	  If unsure, say N.
293
294config PATA_CS5530
295	tristate "CS5530 PATA support (Experimental)"
296	depends on PCI && EXPERIMENTAL
297	help
298	  This option enables support for the Cyrix/NatSemi/AMD CS5530
299	  companion chip used with the MediaGX/Geode processor family.
300
301	  If unsure, say N.
302
303config PATA_CS5535
304	tristate "CS5535 PATA support (Experimental)"
305	depends on PCI && X86 && !X86_64 && EXPERIMENTAL
306	help
307	  This option enables support for the NatSemi/AMD CS5535
308	  companion chip used with the Geode processor family.
309
310	  If unsure, say N.
311
312config PATA_CS5536
313	tristate "CS5536 PATA support (Experimental)"
314	depends on PCI && X86 && !X86_64 && EXPERIMENTAL
315	help
316	  This option enables support for the AMD CS5536
317	  companion chip used with the Geode LX processor family.
318
319	  If unsure, say N.
320
321config PATA_CYPRESS
322	tristate "Cypress CY82C693 PATA support (Very Experimental)"
323	depends on PCI && EXPERIMENTAL
324	help
325	  This option enables support for the Cypress/Contaq CY82C693
326	  chipset found in some Alpha systems
327
328	  If unsure, say N.
329
330config PATA_EFAR
331	tristate "EFAR SLC90E66 support"
332	depends on PCI
333	help
334	  This option enables support for the EFAR SLC90E66
335	  IDE controller found on some older machines.
336
337	  If unsure, say N.
338
339config ATA_GENERIC
340	tristate "Generic ATA support"
341	depends on PCI
342	help
343	  This option enables support for generic BIOS configured
344	  ATA controllers via the new ATA layer
345
346	  If unsure, say N.
347
348config PATA_HPT366
349	tristate "HPT 366/368 PATA support"
350	depends on PCI
351	help
352	  This option enables support for the HPT 366 and 368
353	  PATA controllers via the new ATA layer.
354
355	  If unsure, say N.
356
357config PATA_HPT37X
358	tristate "HPT 370/370A/371/372/374/302 PATA support (Experimental)"
359	depends on PCI && EXPERIMENTAL
360	help
361	  This option enables support for the majority of the later HPT
362	  PATA controllers via the new ATA layer.
363
364	  If unsure, say N.
365
366config PATA_HPT3X2N
367	tristate "HPT 372N/302N PATA support (Very Experimental)"
368	depends on PCI && EXPERIMENTAL
369	help
370	  This option enables support for the N variant HPT PATA
371	  controllers via the new ATA layer
372
373	  If unsure, say N.
374
375config PATA_HPT3X3
376	tristate "HPT 343/363 PATA support"
377	depends on PCI
378	help
379	  This option enables support for the HPT 343/363
380	  PATA controllers via the new ATA layer
381
382	  If unsure, say N.
383
384config PATA_HPT3X3_DMA
385	bool "HPT 343/363 DMA support (Experimental)"
386	depends on PATA_HPT3X3
387	help
388	  This option enables DMA support for the HPT343/363
389	  controllers. Enable with care as there are still some
390	  problems with DMA on this chipset.
391
392config PATA_ISAPNP
393	tristate "ISA Plug and Play PATA support (Experimental)"
394	depends on EXPERIMENTAL && ISAPNP
395	help
396	  This option enables support for ISA plug & play ATA
397	  controllers such as those found on old soundcards.
398
399	  If unsure, say N.
400
401config PATA_IT821X
402	tristate "IT8211/2 PATA support"
403	depends on PCI
404	help
405	  This option enables support for the ITE 8211 and 8212
406	  PATA controllers via the new ATA layer, including RAID
407	  mode.
408
409	  If unsure, say N.
410
411config PATA_IT8213
412	tristate "IT8213 PATA support (Experimental)"
413	depends on PCI && EXPERIMENTAL
414	help
415	  This option enables support for the ITE 821 PATA
416          controllers via the new ATA layer.
417
418	  If unsure, say N.
419
420config PATA_JMICRON
421	tristate "JMicron PATA support"
422	depends on PCI
423	help
424	  Enable support for the JMicron IDE controller, via the new
425	  ATA layer.
426
427	  If unsure, say N.
428
429config PATA_LEGACY
430	tristate "Legacy ISA PATA support (Experimental)"
431	depends on ISA && EXPERIMENTAL
432	help
433	  This option enables support for ISA/VLB bus legacy PATA
434	  ports and allows them to be accessed via the new ATA layer.
435
436	  If unsure, say N.
437
438config PATA_TRIFLEX
439	tristate "Compaq Triflex PATA support"
440	depends on PCI
441	help
442	  Enable support for the Compaq 'Triflex' IDE controller as found
443	  on many Compaq Pentium-Pro systems, via the new ATA layer.
444
445	  If unsure, say N.
446
447config PATA_MARVELL
448	tristate "Marvell PATA support via legacy mode"
449	depends on PCI
450	help
451	  This option enables limited support for the Marvell 88SE61xx ATA
452	  controllers. If you wish to use only the SATA ports then select
453	  the AHCI driver alone. If you wish to the use the PATA port or
454	  both SATA and PATA include this driver.
455
456	  If unsure, say N.
457
458config PATA_MPC52xx
459	tristate "Freescale MPC52xx SoC internal IDE"
460	depends on PPC_MPC52xx
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 (Experimental)"
503	depends on PCI && EXPERIMENTAL
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 (Experimental)"
512	depends on PCI && EXPERIMENTAL
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 (Experimental)"
549	depends on PCI && EXPERIMENTAL
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 (Very 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 (Very Experimental)"
591	depends on PCI && EXPERIMENTAL
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 (Experimental)"
625	depends on PCI && EXPERIMENTAL
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 || ARCH_RPC || 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_SCC
702	tristate "Toshiba's Cell Reference Set IDE support"
703	depends on PCI && PPC_CELLEB
704	help
705	  This option enables support for the built-in IDE controller on
706	  Toshiba Cell Reference Board.
707
708	  If unsure, say N.
709
710config PATA_SCH
711	tristate "Intel SCH PATA support"
712	depends on PCI
713	help
714	  This option enables support for Intel SCH PATA on the Intel
715	  SCH (US15W, US15L, UL11L) series host controllers.
716
717	  If unsure, say N.
718
719config PATA_BF54X
720	tristate "Blackfin 54x ATAPI support"
721	depends on BF542 || BF548 || BF549
722	help
723	  This option enables support for the built-in ATAPI controller on
724	  Blackfin 54x family chips.
725
726	  If unsure, say N.
727
728endif # ATA_SFF
729endif # ATA
730