libata: separate out ata_host_alloc() and ata_host_register()
[linux-2.6] / drivers / ata / Kconfig
1 #
2 # SATA/PATA driver configuration
3 #
4
5 menu "Serial ATA (prod) and Parallel ATA (experimental) drivers"
6
7 config ATA
8         tristate "ATA device support"
9         depends on BLOCK
10         depends on !(M32R || M68K) || BROKEN
11         depends on !SUN4 || BROKEN
12         select SCSI
13         ---help---
14           If you want to use a ATA hard disk, ATA tape drive, ATA CD-ROM or
15           any other ATA device under Linux, say Y and make sure that you know
16           the name of your ATA host adapter (the card inside your computer
17           that "speaks" the ATA protocol, also called ATA controller),
18           because you will be asked for it.
19
20 if ATA
21
22 config ATA_NONSTANDARD
23        bool
24        default n
25
26 config SATA_AHCI
27         tristate "AHCI SATA support"
28         depends on PCI
29         help
30           This option enables support for AHCI Serial ATA.
31
32           If unsure, say N.
33
34 config SATA_SVW
35         tristate "ServerWorks Frodo / Apple K2 SATA support"
36         depends on PCI
37         help
38           This option enables support for Broadcom/Serverworks/Apple K2
39           SATA support.
40
41           If unsure, say N.
42
43 config ATA_PIIX
44         tristate "Intel ESB, ICH, PIIX3, PIIX4 PATA/SATA support"
45         depends on PCI
46         help
47           This option enables support for ICH5/6/7/8 Serial ATA
48           and support for PATA on the Intel ESB/ICH/PIIX3/PIIX4 series
49           host controllers.
50
51           If unsure, say N.
52
53 config SATA_MV
54         tristate "Marvell SATA support (HIGHLY EXPERIMENTAL)"
55         depends on PCI && EXPERIMENTAL
56         help
57           This option enables support for the Marvell Serial ATA family.
58           Currently supports 88SX[56]0[48][01] chips.
59
60           If unsure, say N.
61
62 config SATA_NV
63         tristate "NVIDIA SATA support"
64         depends on PCI
65         help
66           This option enables support for NVIDIA Serial ATA.
67
68           If unsure, say N.
69
70 config PDC_ADMA
71         tristate "Pacific Digital ADMA support"
72         depends on PCI
73         help
74           This option enables support for Pacific Digital ADMA controllers
75
76           If unsure, say N.
77
78 config SATA_QSTOR
79         tristate "Pacific Digital SATA QStor support"
80         depends on PCI
81         help
82           This option enables support for Pacific Digital Serial ATA QStor.
83
84           If unsure, say N.
85
86 config SATA_PROMISE
87         tristate "Promise SATA TX2/TX4 support"
88         depends on PCI
89         help
90           This option enables support for Promise Serial ATA TX2/TX4.
91
92           If unsure, say N.
93
94 config SATA_SX4
95         tristate "Promise SATA SX4 support"
96         depends on PCI && EXPERIMENTAL
97         help
98           This option enables support for Promise Serial ATA SX4.
99
100           If unsure, say N.
101
102 config SATA_SIL
103         tristate "Silicon Image SATA support"
104         depends on PCI
105         help
106           This option enables support for Silicon Image Serial ATA.
107
108           If unsure, say N.
109
110 config SATA_SIL24
111         tristate "Silicon Image 3124/3132 SATA support"
112         depends on PCI
113         help
114           This option enables support for Silicon Image 3124/3132 Serial ATA.
115
116           If unsure, say N.
117
118 config SATA_SIS
119         tristate "SiS 964/965/966/180 SATA support"
120         depends on PCI
121         select PATA_SIS
122         help
123           This option enables support for SiS Serial ATA on 
124           SiS 964/965/966/180 and Parallel ATA on SiS 180.
125           The PATA support for SiS 180 requires additionally to
126           enable the PATA_SIS driver in the config.
127           If unsure, say N.
128
129 config SATA_ULI
130         tristate "ULi Electronics SATA support"
131         depends on PCI
132         help
133           This option enables support for ULi Electronics SATA.
134
135           If unsure, say N.
136
137 config SATA_VIA
138         tristate "VIA SATA support"
139         depends on PCI
140         help
141           This option enables support for VIA Serial ATA.
142
143           If unsure, say N.
144
145 config SATA_VITESSE
146         tristate "VITESSE VSC-7174 / INTEL 31244 SATA support"
147         depends on PCI
148         help
149           This option enables support for Vitesse VSC7174 and Intel 31244 Serial ATA.
150
151           If unsure, say N.
152
153 config SATA_INIC162X
154         tristate "Initio 162x SATA support (HIGHLY EXPERIMENTAL)"
155         depends on PCI && EXPERIMENTAL
156         help
157           This option enables support for Initio 162x Serial ATA.
158
159 config SATA_ACPI
160         bool
161         depends on ACPI && PCI
162         default y
163         help
164           This option adds support for SATA-related ACPI objects.
165           These ACPI objects add the ability to retrieve taskfiles
166           from the ACPI BIOS and write them to the disk controller.
167           These objects may be related to performance, security,
168           power management, or other areas.
169           You can disable this at kernel boot time by using the
170           option libata.noacpi=1
171
172 config PATA_ALI
173         tristate "ALi PATA support (Experimental)"
174         depends on PCI && EXPERIMENTAL
175         help
176           This option enables support for the ALi ATA interfaces
177           found on the many ALi chipsets.
178
179           If unsure, say N.
180
181 config PATA_AMD
182         tristate "AMD/NVidia PATA support"
183         depends on PCI
184         help
185           This option enables support for the AMD and NVidia PATA
186           interfaces found on the chipsets for Athlon/Athlon64.
187
188           If unsure, say N.
189
190 config PATA_ARTOP
191         tristate "ARTOP 6210/6260 PATA support (Experimental)"
192         depends on PCI && EXPERIMENTAL
193         help
194           This option enables support for ARTOP PATA controllers.
195
196           If unsure, say N.
197
198 config PATA_ATIIXP
199         tristate "ATI PATA support (Experimental)"
200         depends on PCI && EXPERIMENTAL
201         help
202           This option enables support for the ATI ATA interfaces
203           found on the many ATI chipsets.
204
205           If unsure, say N.
206
207 config PATA_CMD640_PCI
208         tristate "CMD640 PCI PATA support (Very Experimental)"
209         depends on PCI && EXPERIMENTAL
210         help
211           This option enables support for the CMD640 PCI IDE
212           interface chip. Only the primary channel is currently
213           supported.
214
215           If unsure, say N.
216
217 config PATA_CMD64X
218         tristate "CMD64x PATA support (Very Experimental)"
219         depends on PCI&& EXPERIMENTAL
220         help
221           This option enables support for the CMD64x series chips
222           except for the CMD640.
223
224           If unsure, say N.
225
226 config PATA_CS5520
227         tristate "CS5510/5520 PATA support"
228         depends on PCI
229         help
230           This option enables support for the Cyrix 5510/5520
231           companion chip used with the MediaGX/Geode processor family.
232
233           If unsure, say N.
234
235 config PATA_CS5530
236         tristate "CS5530 PATA support (Experimental)"
237         depends on PCI && EXPERIMENTAL
238         help
239           This option enables support for the Cyrix/NatSemi/AMD CS5530
240           companion chip used with the MediaGX/Geode processor family.
241
242           If unsure, say N.
243
244 config PATA_CS5535
245         tristate "CS5535 PATA support (Experimental)"
246         depends on PCI && X86 && !X86_64 && EXPERIMENTAL
247         help
248           This option enables support for the NatSemi/AMD CS5535
249           companion chip used with the Geode processor family.
250
251           If unsure, say N.
252
253 config PATA_CYPRESS
254         tristate "Cypress CY82C693 PATA support (Very Experimental)"
255         depends on PCI && EXPERIMENTAL
256         help
257           This option enables support for the Cypress/Contaq CY82C693
258           chipset found in some Alpha systems
259
260           If unsure, say N.
261
262 config PATA_EFAR
263         tristate "EFAR SLC90E66 support"
264         depends on PCI
265         help
266           This option enables support for the EFAR SLC90E66
267           IDE controller found on some older machines.
268
269           If unsure, say N.
270
271 config ATA_GENERIC
272         tristate "Generic ATA support"
273         depends on PCI
274         help
275           This option enables support for generic BIOS configured
276           ATA controllers via the new ATA layer
277
278           If unsure, say N.
279
280 config PATA_HPT366
281         tristate "HPT 366/368 PATA support (Experimental)"
282         depends on PCI && EXPERIMENTAL
283         help
284           This option enables support for the HPT 366 and 368
285           PATA controllers via the new ATA layer.
286
287           If unsure, say N.
288
289 config PATA_HPT37X
290         tristate "HPT 370/370A/371/372/374/302 PATA support (Experimental)"
291         depends on PCI && EXPERIMENTAL
292         help
293           This option enables support for the majority of the later HPT
294           PATA controllers via the new ATA layer.
295
296           If unsure, say N.
297
298 config PATA_HPT3X2N
299         tristate "HPT 372N/302N PATA support (Very Experimental)"
300         depends on PCI && EXPERIMENTAL
301         help
302           This option enables support for the N variant HPT PATA
303           controllers via the new ATA layer
304
305           If unsure, say N.
306
307 config PATA_HPT3X3
308         tristate "HPT 343/363 PATA support (Experimental)"
309         depends on PCI
310         help
311           This option enables support for the HPT 343/363
312           PATA controllers via the new ATA layer
313
314           If unsure, say N.
315
316 config PATA_ISAPNP
317         tristate "ISA Plug and Play PATA support (Experimental)"
318         depends on EXPERIMENTAL && ISAPNP
319         help
320           This option enables support for ISA plug & play ATA
321           controllers such as those found on old soundcards.
322
323           If unsure, say N.
324
325 config PATA_IT821X
326         tristate "IT8211/2 PATA support"
327         depends on PCI
328         help
329           This option enables support for the ITE 8211 and 8212
330           PATA controllers via the new ATA layer, including RAID
331           mode.
332
333           If unsure, say N.
334
335 config PATA_IT8213
336         tristate "IT8213 PATA support (Experimental)"
337         depends on PCI && EXPERIMENTAL
338         help
339           This option enables support for the ITE 821 PATA
340           controllers via the new ATA layer.
341
342           If unsure, say N.
343
344 config PATA_JMICRON
345         tristate "JMicron PATA support"
346         depends on PCI
347         help
348           Enable support for the JMicron IDE controller, via the new
349           ATA layer.
350
351           If unsure, say N.
352
353 config PATA_LEGACY
354         tristate "Legacy ISA PATA support (Experimental)"
355         depends on ISA && EXPERIMENTAL
356         help
357           This option enables support for ISA/VLB bus legacy PATA
358           ports and allows them to be accessed via the new ATA layer.
359
360           If unsure, say N.
361
362 config PATA_TRIFLEX
363         tristate "Compaq Triflex PATA support"
364         depends on PCI
365         help
366           Enable support for the Compaq 'Triflex' IDE controller as found
367           on many Compaq Pentium-Pro systems, via the new ATA layer.
368
369           If unsure, say N.
370
371 config PATA_MARVELL
372         tristate "Marvell PATA support via legacy mode"
373         depends on PCI
374         help
375           This option enables limited support for the Marvell 88SE6145 ATA
376           controller.
377
378           If unsure, say N.
379
380 config PATA_MPC52xx
381         tristate "Freescale MPC52xx SoC internal IDE"
382         depends on PPC_MPC52xx
383         help
384           This option enables support for integrated IDE controller
385           of the Freescale MPC52xx SoC.
386
387           If unsure, say N.
388
389 config PATA_MPIIX
390         tristate "Intel PATA MPIIX support"
391         depends on PCI
392         help
393           This option enables support for MPIIX PATA support.
394
395           If unsure, say N.
396
397 config PATA_OLDPIIX
398         tristate "Intel PATA old PIIX support"
399         depends on PCI
400         help
401           This option enables support for early PIIX PATA support.
402
403           If unsure, say N.
404
405 config PATA_NETCELL
406         tristate "NETCELL Revolution RAID support"
407         depends on PCI
408         help
409           This option enables support for the Netcell Revolution RAID
410           PATA controller.
411
412           If unsure, say N.
413
414 config PATA_NS87410
415         tristate "Nat Semi NS87410 PATA support (Experimental)"
416         depends on PCI && EXPERIMENTAL
417         help
418           This option enables support for the National Semiconductor
419           NS87410 PCI-IDE controller.
420
421           If unsure, say N.
422
423 config PATA_OPTI
424         tristate "OPTI621/6215 PATA support (Very Experimental)"
425         depends on PCI && EXPERIMENTAL
426         help
427           This option enables full PIO support for the early Opti ATA
428           controllers found on some old motherboards.
429
430           If unsure, say N.
431
432 config PATA_OPTIDMA
433         tristate "OPTI FireStar PATA support (Very Experimental)"
434         depends on PCI && EXPERIMENTAL
435         help
436           This option enables DMA/PIO support for the later OPTi
437           controllers found on some old motherboards and in some
438           latops
439
440           If unsure, say N.
441
442 config PATA_PCMCIA
443         tristate "PCMCIA PATA support"
444         depends on PCMCIA
445         help
446           This option enables support for PCMCIA ATA interfaces, including
447           compact flash card adapters via the new ATA layer.
448
449           If unsure, say N.
450
451 config PATA_PDC_OLD
452         tristate "Older Promise PATA controller support (Experimental)"
453         depends on PCI && EXPERIMENTAL
454         help
455           This option enables support for the Promise 20246, 20262, 20263,
456           20265 and 20267 adapters.
457
458           If unsure, say N.
459
460 config PATA_QDI
461         tristate "QDI VLB PATA support"
462         depends on ISA
463         help
464           Support for QDI 6500 and 6580 PATA controllers on VESA local bus.
465
466 config PATA_RADISYS
467         tristate "RADISYS 82600 PATA support (Very Experimental)"
468         depends on PCI && EXPERIMENTAL
469         help
470           This option enables support for the RADISYS 82600
471           PATA controllers via the new ATA layer
472
473           If unsure, say N.
474
475 config PATA_RZ1000
476         tristate "PC Tech RZ1000 PATA support"
477         depends on PCI
478         help
479           This option enables basic support for the PC Tech RZ1000/1
480           PATA controllers via the new ATA layer
481
482           If unsure, say N.
483
484 config PATA_SC1200
485         tristate "SC1200 PATA support (Very Experimental)"
486         depends on PCI && EXPERIMENTAL
487         help
488           This option enables support for the NatSemi/AMD SC1200 SoC
489           companion chip used with the Geode processor family.
490
491           If unsure, say N.
492
493 config PATA_SERVERWORKS
494         tristate "SERVERWORKS OSB4/CSB5/CSB6/HT1000 PATA support"
495         depends on PCI
496         help
497           This option enables support for the Serverworks OSB4/CSB5/CSB6 and
498           HT1000 PATA controllers, via the new ATA layer.
499
500           If unsure, say N.
501
502 config PATA_PDC2027X
503         tristate "Promise PATA 2027x support"
504         depends on PCI
505         help
506           This option enables support for Promise PATA pdc20268 to pdc20277 host adapters.
507
508           If unsure, say N.
509
510 config PATA_SIL680
511         tristate "CMD / Silicon Image 680 PATA support"
512         depends on PCI
513         help
514           This option enables support for CMD / Silicon Image 680 PATA.
515
516           If unsure, say N.
517
518 config PATA_SIS
519         tristate "SiS PATA support (Experimental)"
520         depends on PCI && EXPERIMENTAL
521         help
522           This option enables support for SiS PATA controllers
523
524           If unsure, say N.
525
526 config PATA_VIA
527         tristate "VIA PATA support"
528         depends on PCI
529         help
530           This option enables support for the VIA PATA interfaces
531           found on the many VIA chipsets.
532
533           If unsure, say N.
534
535 config PATA_WINBOND
536         tristate "Winbond SL82C105 PATA support"
537         depends on PCI
538         help
539           This option enables support for SL82C105 PATA devices found in the
540           Netwinder and some other systems
541
542           If unsure, say N.
543
544 config PATA_WINBOND_VLB
545         tristate "Winbond W83759A VLB PATA support (Experimental)"
546         depends on ISA && EXPERIMENTAL
547         help
548           Support for the Winbond W83759A controller on Vesa Local Bus
549           systems.
550
551 config PATA_PLATFORM
552         tristate "Generic platform device PATA support"
553         depends on EMBEDDED
554         help
555           This option enables support for generic directly connected ATA
556           devices commonly found on embedded systems.
557
558           If unsure, say N.
559
560 config PATA_IXP4XX_CF
561         tristate "IXP4XX Compact Flash support"
562         depends on ARCH_IXP4XX
563         help
564           This option enables support for a Compact Flash connected on
565           the ixp4xx expansion bus. This driver had been written for
566           Loft/Avila boards in mind but can work with others.
567
568           If unsure, say N.
569
570 config PATA_SCC
571         tristate "Toshiba's Cell Reference Set IDE support"
572         depends on PCI && PPC_CELLEB
573         help
574           This option enables support for the built-in IDE controller on
575           Toshiba Cell Reference Board.
576
577           If unsure, say N.
578
579 endif
580 endmenu
581