locks: allow lockd to process blocked locks during grace period
[safe/jmp/linux-2.6] / drivers / ata / Kconfig
1 #
2 # SATA/PATA driver configuration
3 #
4
5 menuconfig 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
24 if ATA
25
26 config ATA_NONSTANDARD
27        bool
28        default n
29
30 config 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
44 config 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
51 config 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
59 config 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
67 config 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
76 config 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
94 if ATA_SFF
95
96 config 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
105 config 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
115 config 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
124 config 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
132 config 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
140 config 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
148 config 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
156 config 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
164 config 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
172 config 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
183 config 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
191 config 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
199 config 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
207 config 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
213 config 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
222 config 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
231 config 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
240 config 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
248 config 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
257 config 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
266 config 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
276 config 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
285 config 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
294 config 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
303 config 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
312 config 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
321 config 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
330 config 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
339 config 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
348 config 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
357 config 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
366 config 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
375 config 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
384 config 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
392 config 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
401 config 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
411 config 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
420 config 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
429 config 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
438 config 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
447 config 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
458 config 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
467 config 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
475 config 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
483 config 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
492 config 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
501 config 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
510 config 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
519 config 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
528 config 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
538 config 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
547 config 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
556 config 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
562 config 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
571 config 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
580 config 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
589 config 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
598 config 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
607 config 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
615 config 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
623 config 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
631 config 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
640 config 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
649 config 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
656 config 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
664 config 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
673 config 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
683 config 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
691 config 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
701 config 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
710 config 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
719 config 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
728 endif # ATA_SFF
729 endif # ATA