xref: /openbmc/linux/drivers/ata/Kconfig (revision f15cbe6f)
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 88SE6145 ATA
452	  controller.
453
454	  If unsure, say N.
455
456config PATA_MPC52xx
457	tristate "Freescale MPC52xx SoC internal IDE"
458	depends on PPC_MPC52xx
459	help
460	  This option enables support for integrated IDE controller
461	  of the Freescale MPC52xx SoC.
462
463	  If unsure, say N.
464
465config PATA_MPIIX
466	tristate "Intel PATA MPIIX support"
467	depends on PCI
468	help
469	  This option enables support for MPIIX PATA support.
470
471	  If unsure, say N.
472
473config PATA_OLDPIIX
474	tristate "Intel PATA old PIIX support"
475	depends on PCI
476	help
477	  This option enables support for early PIIX PATA support.
478
479	  If unsure, say N.
480
481config PATA_NETCELL
482	tristate "NETCELL Revolution RAID support"
483	depends on PCI
484	help
485	  This option enables support for the Netcell Revolution RAID
486	  PATA controller.
487
488	  If unsure, say N.
489
490config PATA_NINJA32
491	tristate "Ninja32/Delkin Cardbus ATA support (Experimental)"
492	depends on PCI && EXPERIMENTAL
493	help
494	  This option enables support for the Ninja32, Delkin and
495	  possibly other brands of Cardbus ATA adapter
496
497	  If unsure, say N.
498
499config PATA_NS87410
500	tristate "Nat Semi NS87410 PATA support (Experimental)"
501	depends on PCI && EXPERIMENTAL
502	help
503	  This option enables support for the National Semiconductor
504	  NS87410 PCI-IDE controller.
505
506	  If unsure, say N.
507
508config PATA_NS87415
509	tristate "Nat Semi NS87415 PATA support (Experimental)"
510	depends on PCI && EXPERIMENTAL
511	help
512	  This option enables support for the National Semiconductor
513	  NS87415 PCI-IDE controller.
514
515	  If unsure, say N.
516
517config PATA_OPTI
518	tristate "OPTI621/6215 PATA support (Very Experimental)"
519	depends on PCI && EXPERIMENTAL
520	help
521	  This option enables full PIO support for the early Opti ATA
522	  controllers found on some old motherboards.
523
524	  If unsure, say N.
525
526config PATA_OPTIDMA
527	tristate "OPTI FireStar PATA support (Very Experimental)"
528	depends on PCI && EXPERIMENTAL
529	help
530	  This option enables DMA/PIO support for the later OPTi
531	  controllers found on some old motherboards and in some
532	  laptops.
533
534	  If unsure, say N.
535
536config PATA_PCMCIA
537	tristate "PCMCIA PATA support"
538	depends on PCMCIA
539	help
540	  This option enables support for PCMCIA ATA interfaces, including
541	  compact flash card adapters via the new ATA layer.
542
543	  If unsure, say N.
544
545config PATA_PDC_OLD
546	tristate "Older Promise PATA controller support (Experimental)"
547	depends on PCI && EXPERIMENTAL
548	help
549	  This option enables support for the Promise 20246, 20262, 20263,
550	  20265 and 20267 adapters.
551
552	  If unsure, say N.
553
554config PATA_QDI
555	tristate "QDI VLB PATA support"
556	depends on ISA
557	help
558	  Support for QDI 6500 and 6580 PATA controllers on VESA local bus.
559
560config PATA_RADISYS
561	tristate "RADISYS 82600 PATA support (Very Experimental)"
562	depends on PCI && EXPERIMENTAL
563	help
564	  This option enables support for the RADISYS 82600
565	  PATA controllers via the new ATA layer
566
567	  If unsure, say N.
568
569config PATA_RB532
570	tristate "RouterBoard 532 PATA CompactFlash support"
571	depends on MIKROTIK_RB532
572	help
573	  This option enables support for the RouterBoard 532
574	  PATA CompactFlash controller.
575
576	  If unsure, say N.
577
578config PATA_RZ1000
579	tristate "PC Tech RZ1000 PATA support"
580	depends on PCI
581	help
582	  This option enables basic support for the PC Tech RZ1000/1
583	  PATA controllers via the new ATA layer
584
585	  If unsure, say N.
586
587config PATA_SC1200
588	tristate "SC1200 PATA support (Very Experimental)"
589	depends on PCI && EXPERIMENTAL
590	help
591	  This option enables support for the NatSemi/AMD SC1200 SoC
592	  companion chip used with the Geode processor family.
593
594	  If unsure, say N.
595
596config PATA_SERVERWORKS
597	tristate "SERVERWORKS OSB4/CSB5/CSB6/HT1000 PATA support"
598	depends on PCI
599	help
600	  This option enables support for the Serverworks OSB4/CSB5/CSB6 and
601	  HT1000 PATA controllers, via the new ATA layer.
602
603	  If unsure, say N.
604
605config PATA_PDC2027X
606	tristate "Promise PATA 2027x support"
607	depends on PCI
608	help
609	  This option enables support for Promise PATA pdc20268 to pdc20277 host adapters.
610
611	  If unsure, say N.
612
613config PATA_SIL680
614	tristate "CMD / Silicon Image 680 PATA support"
615	depends on PCI
616	help
617	  This option enables support for CMD / Silicon Image 680 PATA.
618
619	  If unsure, say N.
620
621config PATA_SIS
622	tristate "SiS PATA support (Experimental)"
623	depends on PCI && EXPERIMENTAL
624	help
625	  This option enables support for SiS PATA controllers
626
627	  If unsure, say N.
628
629config PATA_VIA
630	tristate "VIA PATA support"
631	depends on PCI
632	help
633	  This option enables support for the VIA PATA interfaces
634	  found on the many VIA chipsets.
635
636	  If unsure, say N.
637
638config PATA_WINBOND
639	tristate "Winbond SL82C105 PATA support"
640	depends on PCI
641	help
642	  This option enables support for SL82C105 PATA devices found in the
643	  Netwinder and some other systems
644
645	  If unsure, say N.
646
647config PATA_WINBOND_VLB
648	tristate "Winbond W83759A VLB PATA support (Experimental)"
649	depends on ISA && EXPERIMENTAL
650	help
651	  Support for the Winbond W83759A controller on Vesa Local Bus
652	  systems.
653
654config HAVE_PATA_PLATFORM
655	bool
656	help
657	  This is an internal configuration node for any machine that
658	  uses pata-platform driver to enable the relevant driver in the
659	  configuration structure without having to submit endless patches
660	  to update the PATA_PLATFORM entry.
661
662config PATA_PLATFORM
663	tristate "Generic platform device PATA support"
664	depends on EMBEDDED || ARCH_RPC || PPC || HAVE_PATA_PLATFORM
665	help
666	  This option enables support for generic directly connected ATA
667	  devices commonly found on embedded systems.
668
669	  If unsure, say N.
670
671config PATA_OF_PLATFORM
672	tristate "OpenFirmware platform device PATA support"
673	depends on PATA_PLATFORM && PPC_OF
674	help
675	  This option enables support for generic directly connected ATA
676	  devices commonly found on embedded systems with OpenFirmware
677	  bindings.
678
679	  If unsure, say N.
680
681config PATA_ICSIDE
682	tristate "Acorn ICS PATA support"
683	depends on ARM && ARCH_ACORN
684	help
685	  On Acorn systems, say Y here if you wish to use the ICS PATA
686	  interface card.  This is not required for ICS partition support.
687	  If you are unsure, say N to this.
688
689config PATA_IXP4XX_CF
690	tristate "IXP4XX Compact Flash support"
691	depends on ARCH_IXP4XX
692	help
693	  This option enables support for a Compact Flash connected on
694	  the ixp4xx expansion bus. This driver had been written for
695	  Loft/Avila boards in mind but can work with others.
696
697	  If unsure, say N.
698
699config PATA_SCC
700	tristate "Toshiba's Cell Reference Set IDE support"
701	depends on PCI && PPC_CELLEB
702	help
703	  This option enables support for the built-in IDE controller on
704	  Toshiba Cell Reference Board.
705
706	  If unsure, say N.
707
708config PATA_SCH
709	tristate "Intel SCH PATA support"
710	depends on PCI
711	help
712	  This option enables support for Intel SCH PATA on the Intel
713	  SCH (US15W, US15L, UL11L) series host controllers.
714
715	  If unsure, say N.
716
717config PATA_BF54X
718	tristate "Blackfin 54x ATAPI support"
719	depends on BF542 || BF548 || BF549
720	help
721	  This option enables support for the built-in ATAPI controller on
722	  Blackfin 54x family chips.
723
724	  If unsure, say N.
725
726endif # ATA_SFF
727endif # ATA
728