ata: libata: exclude FUA support for known buggy drives
[linux-2.6-block.git] / drivers / ata / Kconfig
CommitLineData
b2441318 1# SPDX-License-Identifier: GPL-2.0
421b20b9
JG
2#
3# SATA/PATA driver configuration
4#
5
2ad2c320
NB
6config HAVE_PATA_PLATFORM
7 bool
8 help
9 This is an internal configuration node for any machine that
10 uses pata-platform driver to enable the relevant driver in the
11 configuration structure without having to submit endless patches
12 to update the PATA_PLATFORM entry.
13
b196fc69 14menuconfig ATA
e478cffd 15 tristate "Serial ATA and Parallel ATA drivers (libata)"
e25df120 16 depends on HAS_IOMEM
bf2d401b 17 depends on BLOCK
81ce3c4b 18 select SCSI
428ac5fc 19 select GLOB
a7f7f624 20 help
e478cffd 21 If you want to use an ATA hard disk, ATA tape drive, ATA CD-ROM or
c6fd2807
JG
22 any other ATA device under Linux, say Y and make sure that you know
23 the name of your ATA host adapter (the card inside your computer
24 that "speaks" the ATA protocol, also called ATA controller),
25 because you will be asked for it.
26
abcdceb9
RD
27 NOTE: ATA enables basic SCSI support; *however*,
28 'SCSI disk support', 'SCSI tape support', or
29 'SCSI CDROM support' may also be needed,
30 depending on your hardware configuration.
31
81ce3c4b
JG
32if ATA
33
8cdf92a9
DW
34config ATA_NONSTANDARD
35 bool
8cdf92a9 36
bd322af1
BZ
37config SATA_HOST
38 bool
39
a9b2c120
BZ
40config PATA_TIMINGS
41 bool
42
6521148c
RH
43config ATA_VERBOSE_ERROR
44 bool "Verbose ATA error reporting"
45 default y
46 help
47 This option adds parsing of ATA command descriptions and error bits
48 in libata kernel output, making it easier to interpret.
49 This option will enlarge the kernel by approx. 6KB. Disable it only
50 if kernel size is more important than ease of debugging.
51
52 If unsure, say Y.
53
bf89b0bf
BZ
54config ATA_FORCE
55 bool "\"libata.force=\" kernel parameter support" if EXPERT
56 default y
57 help
58 This option adds support for "libata.force=" kernel parameter for
59 forcing configuration settings.
60
61 For further information, please read
62 <file:Documentation/admin-guide/kernel-parameters.txt>.
63
64 This option will enlarge the kernel by approx. 3KB. Disable it if
65 kernel size is more important than ability to override the default
66 configuration settings.
67
68 If unsure, say Y.
69
e92351bb 70config ATA_ACPI
c30484d7 71 bool "ATA ACPI Support"
2051e924 72 depends on ACPI
a9b2c120 73 select PATA_TIMINGS
e92351bb
TH
74 default y
75 help
76 This option adds support for ATA-related ACPI objects.
77 These ACPI objects add the ability to retrieve taskfiles
78 from the ACPI BIOS and write them to the disk controller.
79 These objects may be related to performance, security,
80 power management, or other areas.
81 You can disable this at kernel boot time by using the
82 option libata.noacpi=1
83
afe75951 84config SATA_ZPODD
e189551b 85 bool "SATA Zero Power Optical Disc Drive (ZPODD) support"
1b3e3aa6 86 depends on ATA_ACPI && PM
afe75951 87 help
e189551b
AL
88 This option adds support for SATA Zero Power Optical Disc
89 Drive (ZPODD). It requires both the ODD and the platform
90 support, and if enabled, will automatically power on/off the
91 ODD when certain condition is satisfied. This does not impact
92 end user's experience of the ODD, only power is saved when
93 the ODD is not in use (i.e. no disc inside).
afe75951
AL
94
95 If unsure, say N.
96
88fcd562
TH
97config SATA_PMP
98 bool "SATA Port Multiplier support"
bd322af1 99 depends on SATA_HOST
88fcd562
TH
100 default y
101 help
f3360ebf
JG
102 This option adds support for SATA Port Multipliers
103 (the SATA version of an ethernet hub, or SAS expander).
88fcd562 104
b16a0168
GU
105if HAS_DMA
106
9a7780c9
TH
107comment "Controllers with non-SFF native interface"
108
8ad92ba7 109config SATA_AHCI
c6fd2807 110 tristate "AHCI SATA support"
81ce3c4b 111 depends on PCI
bd322af1 112 select SATA_HOST
c6fd2807
JG
113 help
114 This option enables support for AHCI Serial ATA.
115
116 If unsure, say N.
117
55b01415 118config SATA_MOBILE_LPM_POLICY
4dd4d3de 119 int "Default SATA Link Power Management policy for low power chipsets"
ebb82e3c
HG
120 range 0 4
121 default 0
122 depends on SATA_AHCI
123 help
124 Select the Default SATA Link Power Management (LPM) policy to use
55b01415
ML
125 for chipsets / "South Bridges" supporting low-power modes. Such
126 chipsets are typically found on most laptops but desktops and
127 servers now also widely use chipsets supporting low power modes.
ebb82e3c
HG
128
129 The value set has the following meanings:
130 0 => Keep firmware settings
131 1 => Maximum performance
132 2 => Medium power
133 3 => Medium power with Device Initiated PM enabled
134 4 => Minimum power
135
136 Note "Minimum power" is known to cause issues, including disk
137 corruption, with some disks and should not be used.
138
1c2a49f6
AV
139config SATA_AHCI_PLATFORM
140 tristate "Platform AHCI SATA support"
bd322af1 141 select SATA_HOST
1c2a49f6
AV
142 help
143 This option enables support for Platform AHCI Serial ATA
144 controllers.
145
146 If unsure, say N.
147
eba68f82
YRDR
148config AHCI_BRCM
149 tristate "Broadcom AHCI SATA support"
7fb44929 150 depends on ARCH_BRCMSTB || BMIPS_GENERIC || ARCH_BCM_NSP || \
c4d2c775 151 ARCH_BCMBCA || COMPILE_TEST
bd322af1 152 select SATA_HOST
766a2d97
BN
153 help
154 This option enables support for the AHCI SATA3 controller found on
eba68f82 155 Broadcom SoC's.
766a2d97
BN
156
157 If unsure, say N.
158
ae8723f8
BZ
159config AHCI_DA850
160 tristate "DaVinci DA850 AHCI SATA support"
e73d7378 161 depends on ARCH_DAVINCI_DA850 || COMPILE_TEST
bd322af1 162 select SATA_HOST
ae8723f8
BZ
163 help
164 This option enables support for the DaVinci DA850 SoC's
165 onboard AHCI SATA.
166
167 If unsure, say N.
168
df46e6a4
BG
169config AHCI_DM816
170 tristate "DaVinci DM816 AHCI SATA support"
56e18702 171 depends on ARCH_OMAP2PLUS || COMPILE_TEST
bd322af1 172 select SATA_HOST
df46e6a4
BG
173 help
174 This option enables support for the DaVinci DM816 SoC's
175 onboard AHCI SATA controller.
176
177 If unsure, say N.
178
33629d35
SS
179config AHCI_DWC
180 tristate "Synopsys DWC AHCI SATA support"
181 select SATA_HOST
9628711a 182 select MFD_SYSCON if (MIPS_BAIKAL_T1 || COMPILE_TEST)
33629d35
SS
183 help
184 This option enables support for the Synopsys DWC AHCI SATA
185 controller implementation.
186
187 If unsure, say N.
188
4a2e5123
LJ
189config AHCI_ST
190 tristate "ST AHCI SATA support"
ecf8322f 191 depends on ARCH_STI || COMPILE_TEST
bd322af1 192 select SATA_HOST
76884cb2 193 help
4a2e5123 194 This option enables support for ST AHCI SATA controller.
76884cb2
LJ
195
196 If unsure, say N.
197
9e54eae2
RZ
198config AHCI_IMX
199 tristate "Freescale i.MX AHCI SATA support"
f5f85ee0 200 depends on MFD_SYSCON && (ARCH_MXC || COMPILE_TEST)
d7969f59 201 depends on (HWMON && (THERMAL || !THERMAL_OF)) || !HWMON
bd322af1 202 select SATA_HOST
9e54eae2
RZ
203 help
204 This option enables support for the Freescale i.MX SoC's
205 onboard AHCI SATA.
206
207 If unsure, say N.
208
a73ed350
SG
209config AHCI_CEVA
210 tristate "CEVA AHCI SATA support"
211 depends on OF
bd322af1 212 select SATA_HOST
a73ed350
SG
213 help
214 This option enables support for the CEVA AHCI SATA.
215 It can be found on the Xilinx Zynq UltraScale+ MPSoC.
216
217 If unsure, say N.
218
47269605
RL
219config AHCI_MTK
220 tristate "MediaTek AHCI SATA support"
28a53d31 221 depends on ARCH_MEDIATEK || COMPILE_TEST
47269605 222 select MFD_SYSCON
bd322af1 223 select SATA_HOST
47269605
RL
224 help
225 This option enables support for the MediaTek SoC's
226 onboard AHCI SATA controller.
227
228 If unsure, say N.
229
a3464ed2
TP
230config AHCI_MVEBU
231 tristate "Marvell EBU AHCI SATA support"
368c7edc 232 depends on ARCH_MVEBU || COMPILE_TEST
bd322af1 233 select SATA_HOST
a3464ed2
TP
234 help
235 This option enables support for the Marvebu EBU SoC's
236 onboard AHCI SATA.
237
238 If unsure, say N.
239
a2127e40
AM
240config AHCI_OCTEON
241 tristate "Cavium Octeon Soc Serial ATA"
242 depends on SATA_AHCI_PLATFORM && CAVIUM_OCTEON_SOC
243 default y
244 help
245 This option enables support for Cavium Octeon SoC Serial ATA.
246
247 If unsure, say N.
248
c5754b52
OS
249config AHCI_SUNXI
250 tristate "Allwinner sunxi AHCI SATA support"
c05b911a 251 depends on ARCH_SUNXI || COMPILE_TEST
bd322af1 252 select SATA_HOST
c5754b52
OS
253 help
254 This option enables support for the Allwinner sunxi SoC's
255 onboard AHCI SATA.
256
257 If unsure, say N.
258
ccfde508 259config AHCI_TEGRA
34d232eb 260 tristate "NVIDIA Tegra AHCI SATA support"
3d98cbf7 261 depends on ARCH_TEGRA || COMPILE_TEST
bd322af1 262 select SATA_HOST
ccfde508 263 help
34d232eb 264 This option enables support for the NVIDIA Tegra SoC's
ccfde508
MP
265 onboard AHCI SATA.
266
267 If unsure, say N.
268
81d01bfa
LH
269config AHCI_XGENE
270 tristate "APM X-Gene 6.0Gbps AHCI SATA host controller support"
b7c9b00f 271 depends on PHY_XGENE || COMPILE_TEST
bd322af1 272 select SATA_HOST
81d01bfa
LH
273 help
274 This option enables support for APM X-Gene SoC SATA host controller.
275
ecfb4598
TY
276config AHCI_QORIQ
277 tristate "Freescale QorIQ AHCI SATA support"
278 depends on OF
bd322af1 279 select SATA_HOST
ecfb4598
TY
280 help
281 This option enables support for the Freescale QorIQ AHCI SoC's
282 onboard AHCI SATA.
283
284 If unsure, say N.
285
9a7780c9
TH
286config SATA_FSL
287 tristate "Freescale 3.0Gbps SATA support"
87924c5b 288 depends on FSL_SOC || COMPILE_TEST
bd322af1 289 select SATA_HOST
127102ae 290 help
9a7780c9
TH
291 This option enables support for Freescale 3.0Gbps SATA controller.
292 It can be found on MPC837x and MPC8315.
127102ae
TH
293
294 If unsure, say N.
295
be4e456e
LW
296config SATA_GEMINI
297 tristate "Gemini SATA bridge support"
6c4c900b 298 depends on ARCH_GEMINI || COMPILE_TEST
bd322af1 299 select SATA_HOST
be4e456e
LW
300 default ARCH_GEMINI
301 help
302 This enabled support for the FTIDE010 to SATA bridge
303 found in Cortina Systems Gemini platform.
304
305 If unsure, say N.
306
535dac4a
BS
307config SATA_AHCI_SEATTLE
308 tristate "AMD Seattle 6.0Gbps AHCI SATA host controller support"
a33a348d 309 depends on ARCH_SEATTLE || COMPILE_TEST
bd322af1 310 select SATA_HOST
535dac4a
BS
311 help
312 This option enables support for AMD Seattle SATA host controller.
313
314 If unsure, say N
315
6f791460 316config SATA_INIC162X
bb969619 317 tristate "Initio 162x SATA support (Very Experimental)"
6f791460 318 depends on PCI
bd322af1 319 select SATA_HOST
6f791460
TH
320 help
321 This option enables support for Initio 162x Serial ATA.
322
02cdfcf0
DM
323config SATA_ACARD_AHCI
324 tristate "ACard AHCI variant (ATP 8620)"
325 depends on PCI
bd322af1 326 select SATA_HOST
02cdfcf0
DM
327 help
328 This option enables support for Acard.
329
330 If unsure, say N.
331
9a7780c9
TH
332config SATA_SIL24
333 tristate "Silicon Image 3124/3132 SATA support"
334 depends on PCI
bd322af1 335 select SATA_HOST
127102ae 336 help
9a7780c9 337 This option enables support for Silicon Image 3124/3132 Serial ATA.
127102ae
TH
338
339 If unsure, say N.
340
b16a0168
GU
341endif # HAS_DMA
342
127102ae 343config ATA_SFF
ebd60028 344 bool "ATA SFF support (for legacy IDE and PATA)"
127102ae
TH
345 default y
346 help
347 This option adds support for ATA controllers with SFF
348 compliant or similar programming interface.
349
f3360ebf
JG
350 SFF is the legacy IDE interface that has been around since
351 the dawn of time. Almost all PATA controllers have an
352 SFF interface. Many SATA controllers have an SFF interface
353 when configured into a legacy compatibility mode.
354
355 For users with exclusively modern controllers like AHCI,
356 Silicon Image 3124, or Marvell 6440, you may choose to
692105b8 357 disable this unneeded SFF support.
f3360ebf
JG
358
359 If unsure, say Y.
360
127102ae
TH
361if ATA_SFF
362
9a7780c9
TH
363comment "SFF controllers with custom DMA interface"
364
365config PDC_ADMA
366 tristate "Pacific Digital ADMA support"
81ce3c4b 367 depends on PCI
c6fd2807 368 help
9a7780c9
TH
369 This option enables support for Pacific Digital ADMA controllers
370
371 If unsure, say N.
372
9a7780c9
TH
373config PATA_OCTEON_CF
374 tristate "OCTEON Boot Bus Compact Flash support"
9ddebc46 375 depends on CAVIUM_OCTEON_SOC
a9b2c120 376 select PATA_TIMINGS
9a7780c9
TH
377 help
378 This option enables a polled compact flash driver for use with
379 compact flash cards attached to the OCTEON boot bus.
380
381 If unsure, say N.
382
383config SATA_QSTOR
384 tristate "Pacific Digital SATA QStor support"
385 depends on PCI
bd322af1 386 select SATA_HOST
9a7780c9
TH
387 help
388 This option enables support for Pacific Digital Serial ATA QStor.
389
390 If unsure, say N.
391
392config SATA_SX4
393 tristate "Promise SATA SX4 support (Experimental)"
48b3de21 394 depends on PCI
bd322af1 395 select SATA_HOST
9a7780c9
TH
396 help
397 This option enables support for Promise Serial ATA SX4.
c6fd2807
JG
398
399 If unsure, say N.
400
9a7780c9
TH
401config ATA_BMDMA
402 bool "ATA BMDMA support"
7bc7ab1e 403 depends on HAS_DMA
9a7780c9
TH
404 default y
405 help
406 This option adds support for SFF ATA controllers with BMDMA
ed4e2f80
SR
407 capability. BMDMA stands for bus-master DMA and is the
408 de facto DMA interface for SFF controllers.
9a7780c9 409
ed4e2f80 410 If unsure, say Y.
9a7780c9
TH
411
412if ATA_BMDMA
413
414comment "SATA SFF controllers with BMDMA"
415
8ad92ba7 416config ATA_PIIX
2c7620d5 417 tristate "Intel ESB, ICH, PIIX3, PIIX4 PATA/SATA support"
81ce3c4b 418 depends on PCI
bd322af1 419 select SATA_HOST
c6fd2807 420 help
2bfc3611 421 This option enables support for ICH5/6/7/8 Serial ATA
2c7620d5
A
422 and support for PATA on the Intel ESB/ICH/PIIX3/PIIX4 series
423 host controllers.
c6fd2807
JG
424
425 If unsure, say N.
426
62936009
RS
427config SATA_DWC
428 tristate "DesignWare Cores SATA support"
7598469a 429 depends on DMADEVICES
0f48debd 430 select GENERIC_PHY
bd322af1 431 select SATA_HOST
62936009
RS
432 help
433 This option enables support for the on-chip SATA controller of the
434 AppliedMicro processor 460EX.
435
436 If unsure, say N.
437
50b43375
MR
438config SATA_DWC_OLD_DMA
439 bool "Support old device trees"
440 depends on SATA_DWC
441 select DW_DMAC_CORE
442 default y if 460EX
443 help
444 This option enables support for old device trees without the
445 "dmas" property.
446
8996b89d
ML
447config SATA_HIGHBANK
448 tristate "Calxeda Highbank SATA support"
0b99f864 449 depends on ARCH_HIGHBANK || COMPILE_TEST
bd322af1 450 select SATA_HOST
8996b89d
ML
451 help
452 This option enables support for the Calxeda Highbank SoC's
453 onboard SATA.
454
455 If unsure, say N.
456
8ad92ba7 457config SATA_MV
f9228c7f 458 tristate "Marvell SATA support"
4efded05 459 depends on PCI || ARCH_DOVE || ARCH_MV78XX0 || \
03803ef6 460 ARCH_MVEBU || ARCH_ORION5X || COMPILE_TEST
49c8f1ff 461 select GENERIC_PHY
bd322af1 462 select SATA_HOST
c6fd2807
JG
463 help
464 This option enables support for the Marvell Serial ATA family.
f9228c7f
ML
465 Currently supports 88SX[56]0[48][01] PCI(-X) chips,
466 as well as the newer [67]042 PCI-X/PCIe and SOC devices.
c6fd2807
JG
467
468 If unsure, say N.
469
8ad92ba7 470config SATA_NV
c6fd2807 471 tristate "NVIDIA SATA support"
81ce3c4b 472 depends on PCI
bd322af1 473 select SATA_HOST
c6fd2807
JG
474 help
475 This option enables support for NVIDIA Serial ATA.
476
477 If unsure, say N.
478
8ad92ba7 479config SATA_PROMISE
c6fd2807 480 tristate "Promise SATA TX2/TX4 support"
81ce3c4b 481 depends on PCI
bd322af1 482 select SATA_HOST
c6fd2807
JG
483 help
484 This option enables support for Promise Serial ATA TX2/TX4.
485
486 If unsure, say N.
487
163cf81d
VB
488config SATA_RCAR
489 tristate "Renesas R-Car SATA support"
51b1b286 490 depends on ARCH_RENESAS || COMPILE_TEST
bd322af1 491 select SATA_HOST
163cf81d
VB
492 help
493 This option enables support for Renesas R-Car Serial ATA.
494
495 If unsure, say N.
c6fd2807 496
8ad92ba7 497config SATA_SIL
c6fd2807 498 tristate "Silicon Image SATA support"
81ce3c4b 499 depends on PCI
bd322af1 500 select SATA_HOST
c6fd2807
JG
501 help
502 This option enables support for Silicon Image Serial ATA.
503
504 If unsure, say N.
505
8ad92ba7 506config SATA_SIS
9b14dec5 507 tristate "SiS 964/965/966/180 SATA support"
81ce3c4b 508 depends on PCI
9b14dec5 509 select PATA_SIS
bd322af1 510 select SATA_HOST
c6fd2807 511 help
a617c09f 512 This option enables support for SiS Serial ATA on
9b14dec5
A
513 SiS 964/965/966/180 and Parallel ATA on SiS 180.
514 The PATA support for SiS 180 requires additionally to
515 enable the PATA_SIS driver in the config.
c6fd2807
JG
516 If unsure, say N.
517
9a7780c9
TH
518config SATA_SVW
519 tristate "ServerWorks Frodo / Apple K2 SATA support"
520 depends on PCI
bd322af1 521 select SATA_HOST
9a7780c9
TH
522 help
523 This option enables support for Broadcom/Serverworks/Apple K2
524 SATA support.
525
526 If unsure, say N.
527
8ad92ba7 528config SATA_ULI
c6fd2807 529 tristate "ULi Electronics SATA support"
81ce3c4b 530 depends on PCI
bd322af1 531 select SATA_HOST
c6fd2807
JG
532 help
533 This option enables support for ULi Electronics SATA.
534
535 If unsure, say N.
536
8ad92ba7 537config SATA_VIA
c6fd2807 538 tristate "VIA SATA support"
81ce3c4b 539 depends on PCI
bd322af1 540 select SATA_HOST
c6fd2807
JG
541 help
542 This option enables support for VIA Serial ATA.
543
544 If unsure, say N.
545
8ad92ba7 546config SATA_VITESSE
c6fd2807 547 tristate "VITESSE VSC-7174 / INTEL 31244 SATA support"
81ce3c4b 548 depends on PCI
bd322af1 549 select SATA_HOST
c6fd2807
JG
550 help
551 This option enables support for Vitesse VSC7174 and Intel 31244 Serial ATA.
552
553 If unsure, say N.
554
9a7780c9 555comment "PATA SFF controllers with BMDMA"
025621f9 556
669a5db4 557config PATA_ALI
e3389cbc
AC
558 tristate "ALi PATA support"
559 depends on PCI
a9b2c120 560 select PATA_TIMINGS
669a5db4
JG
561 help
562 This option enables support for the ALi ATA interfaces
563 found on the many ALi chipsets.
564
565 If unsure, say N.
566
567config PATA_AMD
942d0947 568 tristate "AMD/NVidia PATA support"
669a5db4 569 depends on PCI
a9b2c120 570 select PATA_TIMINGS
669a5db4
JG
571 help
572 This option enables support for the AMD and NVidia PATA
573 interfaces found on the chipsets for Athlon/Athlon64.
574
575 If unsure, say N.
576
a480167b
VK
577config PATA_ARASAN_CF
578 tristate "ARASAN CompactFlash PATA Controller Support"
e638433b 579 depends on ARCH_SPEAR13XX || COMPILE_TEST
3b5ec274 580 depends on DMADEVICES
a480167b
VK
581 select DMA_ENGINE
582 help
583 Say Y here to support the ARASAN CompactFlash PATA controller
584
669a5db4 585config PATA_ARTOP
c645fd34
AC
586 tristate "ARTOP 6210/6260 PATA support"
587 depends on PCI
669a5db4
JG
588 help
589 This option enables support for ARTOP PATA controllers.
590
591 If unsure, say N.
592
9a7780c9
TH
593config PATA_ATIIXP
594 tristate "ATI PATA support"
d15d6e6c
JJIL
595 depends on PCI
596 help
9a7780c9
TH
597 This option enables support for the ATI ATA interfaces
598 found on the many ATI chipsets.
7c9ef8e4
KNG
599
600 If unsure, say N.
601
9a7780c9
TH
602config PATA_ATP867X
603 tristate "ARTOP/Acard ATP867X PATA support"
c645fd34 604 depends on PCI
a9b2c120 605 select PATA_TIMINGS
669a5db4 606 help
9a7780c9
TH
607 This option enables support for ARTOP/Acard ATP867X PATA
608 controllers.
669a5db4
JG
609
610 If unsure, say N.
611
612config PATA_CMD64X
c645fd34
AC
613 tristate "CMD64x PATA support"
614 depends on PCI
a9b2c120 615 select PATA_TIMINGS
669a5db4
JG
616 help
617 This option enables support for the CMD64x series chips
618 except for the CMD640.
619
620 If unsure, say N.
621
622config PATA_CS5520
623 tristate "CS5510/5520 PATA support"
9236a76d 624 depends on PCI && (X86_32 || COMPILE_TEST)
669a5db4
JG
625 help
626 This option enables support for the Cyrix 5510/5520
627 companion chip used with the MediaGX/Geode processor family.
628
629 If unsure, say N.
630
631config PATA_CS5530
e3389cbc 632 tristate "CS5530 PATA support"
9236a76d 633 depends on PCI && (X86_32 || COMPILE_TEST)
669a5db4
JG
634 help
635 This option enables support for the Cyrix/NatSemi/AMD CS5530
636 companion chip used with the MediaGX/Geode processor family.
637
638 If unsure, say N.
639
640config PATA_CS5535
641 tristate "CS5535 PATA support (Experimental)"
dc5d7b3c 642 depends on PCI && (X86_32 || (X86_64 && COMPILE_TEST))
669a5db4
JG
643 help
644 This option enables support for the NatSemi/AMD CS5535
645 companion chip used with the Geode processor family.
646
647 If unsure, say N.
648
3957df61 649config PATA_CS5536
e3389cbc 650 tristate "CS5536 PATA support"
9236a76d 651 depends on PCI && (X86_32 || MIPS || COMPILE_TEST)
3957df61
MP
652 help
653 This option enables support for the AMD CS5536
654 companion chip used with the Geode LX processor family.
655
656 If unsure, say N.
657
669a5db4
JG
658config PATA_CYPRESS
659 tristate "Cypress CY82C693 PATA support (Very Experimental)"
48b3de21 660 depends on PCI
a9b2c120 661 select PATA_TIMINGS
669a5db4
JG
662 help
663 This option enables support for the Cypress/Contaq CY82C693
664 chipset found in some Alpha systems
665
666 If unsure, say N.
667
668config PATA_EFAR
669 tristate "EFAR SLC90E66 support"
670 depends on PCI
671 help
672 This option enables support for the EFAR SLC90E66
673 IDE controller found on some older machines.
674
675 If unsure, say N.
676
2fff2751
RP
677config PATA_EP93XX
678 tristate "Cirrus Logic EP93xx PATA support"
679 depends on ARCH_EP93XX
a9b2c120 680 select PATA_TIMINGS
2fff2751
RP
681 help
682 This option enables support for the PATA controller in
683 the Cirrus Logic EP9312 and EP9315 ARM CPU.
684
685 If unsure, say N.
686
be4e456e
LW
687config PATA_FTIDE010
688 tristate "Faraday Technology FTIDE010 PATA support"
2aa56671 689 depends on ARM || COMPILE_TEST
accd0473 690 depends on SATA_GEMINI
be4e456e
LW
691 help
692 This option enables support for the Faraday FTIDE010
693 PATA controller found in the Cortina Gemini SoCs.
694
695 If unsure, say N.
696
669a5db4 697config PATA_HPT366
c645fd34
AC
698 tristate "HPT 366/368 PATA support"
699 depends on PCI
669a5db4
JG
700 help
701 This option enables support for the HPT 366 and 368
702 PATA controllers via the new ATA layer.
703
704 If unsure, say N.
705
706config PATA_HPT37X
be315d46
AC
707 tristate "HPT 370/370A/371/372/374/302 PATA support"
708 depends on PCI
669a5db4
JG
709 help
710 This option enables support for the majority of the later HPT
711 PATA controllers via the new ATA layer.
712
713 If unsure, say N.
714
715config PATA_HPT3X2N
0ca646db 716 tristate "HPT 371N/372N/302N PATA support"
be315d46 717 depends on PCI
669a5db4
JG
718 help
719 This option enables support for the N variant HPT PATA
0ca646db 720 controllers via the new ATA layer.
669a5db4
JG
721
722 If unsure, say N.
723
724config PATA_HPT3X3
66e7da4e 725 tristate "HPT 343/363 PATA support"
669a5db4
JG
726 depends on PCI
727 help
728 This option enables support for the HPT 343/363
729 PATA controllers via the new ATA layer
730
731 If unsure, say N.
732
66e7da4e 733config PATA_HPT3X3_DMA
be315d46 734 bool "HPT 343/363 DMA support"
66e7da4e
AC
735 depends on PATA_HPT3X3
736 help
737 This option enables DMA support for the HPT343/363
738 controllers. Enable with care as there are still some
739 problems with DMA on this chipset.
740
9a7780c9
TH
741config PATA_ICSIDE
742 tristate "Acorn ICS PATA support"
743 depends on ARM && ARCH_ACORN
a9b2c120 744 select PATA_TIMINGS
669a5db4 745 help
9a7780c9
TH
746 On Acorn systems, say Y here if you wish to use the ICS PATA
747 interface card. This is not required for ICS partition support.
748 If you are unsure, say N to this.
749
e39c75cf
APR
750config PATA_IMX
751 tristate "PATA support for Freescale iMX"
7dc3c053 752 depends on ARCH_MXC || COMPILE_TEST
a9b2c120 753 select PATA_TIMINGS
e39c75cf
APR
754 help
755 This option enables support for the PATA host available on Freescale
756 iMX SoCs.
757
758 If unsure, say N.
759
9a7780c9
TH
760config PATA_IT8213
761 tristate "IT8213 PATA support (Experimental)"
48b3de21 762 depends on PCI
9a7780c9
TH
763 help
764 This option enables support for the ITE 821 PATA
765 controllers via the new ATA layer.
669a5db4
JG
766
767 If unsure, say N.
768
669a5db4 769config PATA_IT821X
942d0947
AC
770 tristate "IT8211/2 PATA support"
771 depends on PCI
669a5db4
JG
772 help
773 This option enables support for the ITE 8211 and 8212
774 PATA controllers via the new ATA layer, including RAID
775 mode.
776
777 If unsure, say N.
778
406176ee
JG
779config PATA_JMICRON
780 tristate "JMicron PATA support"
781 depends on PCI
782 help
783 Enable support for the JMicron IDE controller, via the new
784 ATA layer.
785
786 If unsure, say N.
787
9a7780c9
TH
788config PATA_MACIO
789 tristate "Apple PowerMac/PowerBook internal 'MacIO' IDE"
790 depends on PPC_PMAC
669a5db4 791 help
9a7780c9
TH
792 Most IDE capable PowerMacs have IDE busses driven by a variant
793 of this controller which is part of the Apple chipset used on
794 most PowerMac models. Some models have multiple busses using
795 different chipsets, though generally, MacIO is one of them.
669a5db4 796
75742cb4
AC
797config PATA_MARVELL
798 tristate "Marvell PATA support via legacy mode"
799 depends on PCI
800 help
5b66c829
AC
801 This option enables limited support for the Marvell 88SE61xx ATA
802 controllers. If you wish to use only the SATA ports then select
803 the AHCI driver alone. If you wish to the use the PATA port or
804 both SATA and PATA include this driver.
75742cb4
AC
805
806 If unsure, say N.
807
869934ad
WS
808config PATA_MPC52xx
809 tristate "Freescale MPC52xx SoC internal IDE"
810 depends on PPC_MPC52xx && PPC_BESTCOMM
811 select PPC_BESTCOMM_ATA
812 help
813 This option enables support for integrated IDE controller
814 of the Freescale MPC52xx SoC.
815
816 If unsure, say N.
817
669a5db4
JG
818config PATA_NETCELL
819 tristate "NETCELL Revolution RAID support"
820 depends on PCI
821 help
822 This option enables support for the Netcell Revolution RAID
823 PATA controller.
824
825 If unsure, say N.
826
51dbd490 827config PATA_NINJA32
be315d46
AC
828 tristate "Ninja32/Delkin Cardbus ATA support"
829 depends on PCI
51dbd490
AC
830 help
831 This option enables support for the Ninja32, Delkin and
832 possibly other brands of Cardbus ATA adapter
833
834 If unsure, say N.
835
c4b5b7b6 836config PATA_NS87415
e3389cbc
AC
837 tristate "Nat Semi NS87415 PATA support"
838 depends on PCI
a9b2c120 839 select PATA_TIMINGS
c4b5b7b6
AC
840 help
841 This option enables support for the National Semiconductor
842 NS87415 PCI-IDE controller.
843
844 If unsure, say N.
845
9a7780c9
TH
846config PATA_OLDPIIX
847 tristate "Intel PATA old PIIX support"
848 depends on PCI
669a5db4 849 help
9a7780c9 850 This option enables support for early PIIX PATA support.
669a5db4
JG
851
852 If unsure, say N.
853
854config PATA_OPTIDMA
516e72cb 855 tristate "OPTI FireStar PATA support (Very Experimental)"
48b3de21 856 depends on PCI
669a5db4
JG
857 help
858 This option enables DMA/PIO support for the later OPTi
859 controllers found on some old motherboards and in some
3dde6ad8 860 laptops.
669a5db4
JG
861
862 If unsure, say N.
863
be315d46
AC
864config PATA_PDC2027X
865 tristate "Promise PATA 2027x support"
866 depends on PCI
867 help
868 This option enables support for Promise PATA pdc20268 to pdc20277 host adapters.
869
870 If unsure, say N.
871
669a5db4 872config PATA_PDC_OLD
e3389cbc
AC
873 tristate "Older Promise PATA controller support"
874 depends on PCI
669a5db4
JG
875 help
876 This option enables support for the Promise 20246, 20262, 20263,
877 20265 and 20267 adapters.
878
879 If unsure, say N.
880
669a5db4 881config PATA_RADISYS
e3389cbc 882 tristate "RADISYS 82600 PATA support (Experimental)"
48b3de21 883 depends on PCI
669a5db4
JG
884 help
885 This option enables support for the RADISYS 82600
886 PATA controllers via the new ATA layer
887
888 If unsure, say N.
889
6b406782
AC
890config PATA_RDC
891 tristate "RDC PATA support"
892 depends on PCI
893 help
894 This option enables basic support for the later RDC PATA controllers
895 controllers via the new ATA layer. For the RDC 1010, you need to
896 enable the IT821X driver instead.
897
898 If unsure, say N.
899
9a7780c9
TH
900config PATA_SC1200
901 tristate "SC1200 PATA support"
840aa787 902 depends on PCI && (X86_32 || COMPILE_TEST)
669a5db4 903 help
9a7780c9
TH
904 This option enables support for the NatSemi/AMD SC1200 SoC
905 companion chip used with the Geode processor family.
669a5db4
JG
906
907 If unsure, say N.
908
9a7780c9
TH
909config PATA_SCH
910 tristate "Intel SCH PATA support"
e3389cbc 911 depends on PCI
669a5db4 912 help
9a7780c9
TH
913 This option enables support for Intel SCH PATA on the Intel
914 SCH (US15W, US15L, UL11L) series host controllers.
669a5db4
JG
915
916 If unsure, say N.
917
918config PATA_SERVERWORKS
942d0947
AC
919 tristate "SERVERWORKS OSB4/CSB5/CSB6/HT1000 PATA support"
920 depends on PCI
669a5db4
JG
921 help
922 This option enables support for the Serverworks OSB4/CSB5/CSB6 and
923 HT1000 PATA controllers, via the new ATA layer.
924
925 If unsure, say N.
926
669a5db4
JG
927config PATA_SIL680
928 tristate "CMD / Silicon Image 680 PATA support"
929 depends on PCI
930 help
931 This option enables support for CMD / Silicon Image 680 PATA.
932
933 If unsure, say N.
934
935config PATA_SIS
e3389cbc
AC
936 tristate "SiS PATA support"
937 depends on PCI
669a5db4
JG
938 help
939 This option enables support for SiS PATA controllers
940
941 If unsure, say N.
942
8e182a90
AC
943config PATA_TOSHIBA
944 tristate "Toshiba Piccolo support (Experimental)"
48b3de21 945 depends on PCI
8e182a90
AC
946 help
947 Support for the Toshiba Piccolo controllers. Currently only the
948 primary channel is supported by this driver.
949
950 If unsure, say N.
951
9a7780c9
TH
952config PATA_TRIFLEX
953 tristate "Compaq Triflex PATA support"
954 depends on PCI
955 help
956 Enable support for the Compaq 'Triflex' IDE controller as found
957 on many Compaq Pentium-Pro systems, via the new ATA layer.
958
959 If unsure, say N.
960
669a5db4
JG
961config PATA_VIA
962 tristate "VIA PATA support"
963 depends on PCI
a9b2c120 964 select PATA_TIMINGS
669a5db4
JG
965 help
966 This option enables support for the VIA PATA interfaces
967 found on the many VIA chipsets.
968
969 If unsure, say N.
970
2dc6c6f1
MV
971config PATA_PXA
972 tristate "PXA DMA-capable PATA support"
7767c73a 973 depends on ARCH_PXA || COMPILE_TEST
2dc6c6f1
MV
974 help
975 This option enables support for harddrive attached to PXA CPU's bus.
976
977 NOTE: This driver utilizes PXA DMA controller, in case your hardware
978 is not capable of doing MWDMA, use pata_platform instead.
979
980 If unsure, say N.
981
669a5db4
JG
982config PATA_WINBOND
983 tristate "Winbond SL82C105 PATA support"
984 depends on PCI
985 help
986 This option enables support for SL82C105 PATA devices found in the
987 Netwinder and some other systems
988
989 If unsure, say N.
990
9a7780c9
TH
991endif # ATA_BMDMA
992
993comment "PIO-only SFF controllers"
994
9a7780c9
TH
995config PATA_CMD640_PCI
996 tristate "CMD640 PCI PATA support (Experimental)"
48b3de21 997 depends on PCI
a9b2c120 998 select PATA_TIMINGS
9a7780c9
TH
999 help
1000 This option enables support for the CMD640 PCI IDE
1001 interface chip. Only the primary channel is currently
1002 supported.
1003
1004 If unsure, say N.
1005
7e11aabd 1006config PATA_FALCON
44b1fbc0
FT
1007 tristate "Atari Falcon and Q40/Q60 PATA support"
1008 depends on M68K && (ATARI || Q40)
7e11aabd
BZ
1009 help
1010 This option enables support for the on-board IDE
44b1fbc0 1011 interface on the Atari Falcon and Q40/Q60.
7e11aabd
BZ
1012
1013 If unsure, say N.
1014
9ab27d1d
BZ
1015config PATA_GAYLE
1016 tristate "Amiga Gayle PATA support"
1017 depends on M68K && AMIGA
1018 help
1019 This option enables support for the on-board IDE
1020 interfaces on some Amiga models (A600, A1200,
1021 A4000 and A4000T) and also for IDE interfaces on
1022 the Zorro expansion bus (M-Tech E-Matrix 530
1023 expansion card).
1024
1025 If unsure, say N.
1026
740c68a0
BZ
1027config PATA_BUDDHA
1028 tristate "Buddha/Catweasel/X-Surf PATA support"
1029 depends on ZORRO
1030 help
1031 This option enables support for the IDE interfaces
1032 on the Buddha, Catweasel and X-Surf expansion boards
1033 on the Zorro expansion bus. It supports up to two
1034 interfaces on the Buddha, three on the Catweasel and
1035 two on the X-Surf.
1036
1037 If unsure, say N.
1038
9a7780c9
TH
1039config PATA_ISAPNP
1040 tristate "ISA Plug and Play PATA support"
1041 depends on ISAPNP
1042 help
1043 This option enables support for ISA plug & play ATA
1044 controllers such as those found on old soundcards.
1045
1046 If unsure, say N.
1047
1048config PATA_IXP4XX_CF
1049 tristate "IXP4XX Compact Flash support"
55712627 1050 depends on ARCH_IXP4XX || COMPILE_TEST
9a7780c9
TH
1051 help
1052 This option enables support for a Compact Flash connected on
1053 the ixp4xx expansion bus. This driver had been written for
1054 Loft/Avila boards in mind but can work with others.
1055
1056 If unsure, say N.
1057
1058config PATA_MPIIX
1059 tristate "Intel PATA MPIIX support"
1060 depends on PCI
1061 help
1062 This option enables support for MPIIX PATA support.
1063
1064 If unsure, say N.
1065
1066config PATA_NS87410
1067 tristate "Nat Semi NS87410 PATA support"
1068 depends on PCI
a9b2c120 1069 select PATA_TIMINGS
9a7780c9
TH
1070 help
1071 This option enables support for the National Semiconductor
1072 NS87410 PCI-IDE controller.
1073
1074 If unsure, say N.
1075
1076config PATA_OPTI
1077 tristate "OPTI621/6215 PATA support (Very Experimental)"
48b3de21 1078 depends on PCI
9a7780c9
TH
1079 help
1080 This option enables full PIO support for the early Opti ATA
1081 controllers found on some old motherboards.
1082
1083 If unsure, say N.
1084
1085config PATA_PALMLD
1086 tristate "Palm LifeDrive PATA support"
1087 depends on MACH_PALMLD
1088 help
1089 This option enables support for Palm LifeDrive's internal ATA
1090 port via the new ATA layer.
1091
1092 If unsure, say N.
1093
1094config PATA_PCMCIA
1095 tristate "PCMCIA PATA support"
1096 depends on PCMCIA
1097 help
1098 This option enables support for PCMCIA ATA interfaces, including
1099 compact flash card adapters via the new ATA layer.
1100
1101 If unsure, say N.
7e45b0e5 1102
a20c9e82 1103config PATA_PLATFORM
d3243965 1104 tristate "Generic platform device PATA support" if HAVE_PATA_PLATFORM
a20c9e82
PM
1105 help
1106 This option enables support for generic directly connected ATA
1107 devices commonly found on embedded systems.
1108
1109 If unsure, say N.
61f71621
AV
1110
1111config PATA_OF_PLATFORM
1112 tristate "OpenFirmware platform device PATA support"
3ebe59a5
LB
1113 depends on OF
1114 select PATA_PLATFORM
61f71621
AV
1115 help
1116 This option enables support for generic directly connected ATA
1117 devices commonly found on embedded systems with OpenFirmware
1118 bindings.
1119
1120 If unsure, say N.
a20c9e82 1121
9a7780c9
TH
1122config PATA_QDI
1123 tristate "QDI VLB PATA support"
1124 depends on ISA
0dcd0a76 1125 select PATA_LEGACY
73b6a2be 1126 help
9a7780c9 1127 Support for QDI 6500 and 6580 PATA controllers on VESA local bus.
73b6a2be 1128
9a7780c9
TH
1129config PATA_RB532
1130 tristate "RouterBoard 532 PATA CompactFlash support"
1131 depends on MIKROTIK_RB532
0df0d0a0 1132 help
9a7780c9
TH
1133 This option enables support for the RouterBoard 532
1134 PATA CompactFlash controller.
0df0d0a0
AZ
1135
1136 If unsure, say N.
1137
9a7780c9
TH
1138config PATA_RZ1000
1139 tristate "PC Tech RZ1000 PATA support"
1140 depends on PCI
3c929c6f 1141 help
9a7780c9
TH
1142 This option enables basic support for the PC Tech RZ1000/1
1143 PATA controllers via the new ATA layer
3c929c6f
DD
1144
1145 If unsure, say N.
1146
155bf48f
AK
1147config PATA_SAMSUNG_CF
1148 tristate "Samsung SoC PATA support"
b6a64a86 1149 depends on SAMSUNG_DEV_IDE || COMPILE_TEST
a9b2c120 1150 select PATA_TIMINGS
155bf48f
AK
1151 help
1152 This option enables basic support for Samsung's S3C/S5P board
1153 PATA controllers via the new ATA layer
1154
1155 If unsure, say N.
1156
9a7780c9
TH
1157config PATA_WINBOND_VLB
1158 tristate "Winbond W83759A VLB PATA support (Experimental)"
48b3de21 1159 depends on ISA
6d981b9a 1160 select PATA_LEGACY
a619f981 1161 help
9a7780c9
TH
1162 Support for the Winbond W83759A controller on Vesa Local Bus
1163 systems.
a619f981 1164
9a7780c9 1165comment "Generic fallback / legacy drivers"
a619f981 1166
9a7780c9
TH
1167config PATA_ACPI
1168 tristate "ACPI firmware driver for PATA"
995592bc 1169 depends on ATA_ACPI && ATA_BMDMA && PCI
a9b2c120 1170 select PATA_TIMINGS
07ab85de 1171 help
9a7780c9
TH
1172 This option enables an ACPI method driver which drives
1173 motherboard PATA controller interfaces through the ACPI
1174 firmware in the BIOS. This driver can sometimes handle
1175 otherwise unsupported hardware.
07ab85de 1176
9a7780c9
TH
1177config ATA_GENERIC
1178 tristate "Generic ATA support"
1179 depends on PCI && ATA_BMDMA
bd322af1 1180 select SATA_HOST
d830d173 1181 help
9a7780c9
TH
1182 This option enables support for generic BIOS configured
1183 ATA controllers via the new ATA layer
d830d173
SZ
1184
1185 If unsure, say N.
1186
9a7780c9
TH
1187config PATA_LEGACY
1188 tristate "Legacy ISA PATA support (Experimental)"
48b3de21 1189 depends on (ISA || PCI)
a9b2c120 1190 select PATA_TIMINGS
88358ab0 1191 help
9a7780c9
TH
1192 This option enables support for ISA/VLB/PCI bus legacy PATA
1193 ports and allows them to be accessed via the new ATA layer.
88358ab0 1194
9a7780c9 1195 If unsure, say N.
88358ab0 1196
127102ae 1197endif # ATA_SFF
b196fc69 1198endif # ATA