Merge tag 'gnss-6.8-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/johan/gnss
[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
71424f05 279 depends on SOC_LS1021A || ARCH_LAYERSCAPE || COMPILE_TEST
bd322af1 280 select SATA_HOST
ecfb4598
TY
281 help
282 This option enables support for the Freescale QorIQ AHCI SoC's
283 onboard AHCI SATA.
284
285 If unsure, say N.
286
9a7780c9
TH
287config SATA_FSL
288 tristate "Freescale 3.0Gbps SATA support"
87924c5b 289 depends on FSL_SOC || COMPILE_TEST
bd322af1 290 select SATA_HOST
127102ae 291 help
9a7780c9
TH
292 This option enables support for Freescale 3.0Gbps SATA controller.
293 It can be found on MPC837x and MPC8315.
127102ae
TH
294
295 If unsure, say N.
296
be4e456e
LW
297config SATA_GEMINI
298 tristate "Gemini SATA bridge support"
6c4c900b 299 depends on ARCH_GEMINI || COMPILE_TEST
bd322af1 300 select SATA_HOST
be4e456e
LW
301 default ARCH_GEMINI
302 help
303 This enabled support for the FTIDE010 to SATA bridge
304 found in Cortina Systems Gemini platform.
305
306 If unsure, say N.
307
535dac4a
BS
308config SATA_AHCI_SEATTLE
309 tristate "AMD Seattle 6.0Gbps AHCI SATA host controller support"
a33a348d 310 depends on ARCH_SEATTLE || COMPILE_TEST
bd322af1 311 select SATA_HOST
535dac4a
BS
312 help
313 This option enables support for AMD Seattle SATA host controller.
314
315 If unsure, say N
316
6f791460 317config SATA_INIC162X
bb969619 318 tristate "Initio 162x SATA support (Very Experimental)"
6f791460 319 depends on PCI
bd322af1 320 select SATA_HOST
6f791460
TH
321 help
322 This option enables support for Initio 162x Serial ATA.
323
02cdfcf0
DM
324config SATA_ACARD_AHCI
325 tristate "ACard AHCI variant (ATP 8620)"
326 depends on PCI
bd322af1 327 select SATA_HOST
02cdfcf0
DM
328 help
329 This option enables support for Acard.
330
331 If unsure, say N.
332
9a7780c9
TH
333config SATA_SIL24
334 tristate "Silicon Image 3124/3132 SATA support"
335 depends on PCI
bd322af1 336 select SATA_HOST
127102ae 337 help
9a7780c9 338 This option enables support for Silicon Image 3124/3132 Serial ATA.
127102ae
TH
339
340 If unsure, say N.
341
b16a0168
GU
342endif # HAS_DMA
343
127102ae 344config ATA_SFF
ebd60028 345 bool "ATA SFF support (for legacy IDE and PATA)"
127102ae
TH
346 default y
347 help
348 This option adds support for ATA controllers with SFF
349 compliant or similar programming interface.
350
f3360ebf
JG
351 SFF is the legacy IDE interface that has been around since
352 the dawn of time. Almost all PATA controllers have an
353 SFF interface. Many SATA controllers have an SFF interface
354 when configured into a legacy compatibility mode.
355
356 For users with exclusively modern controllers like AHCI,
357 Silicon Image 3124, or Marvell 6440, you may choose to
692105b8 358 disable this unneeded SFF support.
f3360ebf
JG
359
360 If unsure, say Y.
361
127102ae
TH
362if ATA_SFF
363
9a7780c9
TH
364comment "SFF controllers with custom DMA interface"
365
366config PDC_ADMA
367 tristate "Pacific Digital ADMA support"
81ce3c4b 368 depends on PCI
c6fd2807 369 help
9a7780c9
TH
370 This option enables support for Pacific Digital ADMA controllers
371
372 If unsure, say N.
373
9a7780c9
TH
374config PATA_OCTEON_CF
375 tristate "OCTEON Boot Bus Compact Flash support"
9ddebc46 376 depends on CAVIUM_OCTEON_SOC
a9b2c120 377 select PATA_TIMINGS
9a7780c9
TH
378 help
379 This option enables a polled compact flash driver for use with
380 compact flash cards attached to the OCTEON boot bus.
381
382 If unsure, say N.
383
384config SATA_QSTOR
385 tristate "Pacific Digital SATA QStor support"
386 depends on PCI
bd322af1 387 select SATA_HOST
9a7780c9
TH
388 help
389 This option enables support for Pacific Digital Serial ATA QStor.
390
391 If unsure, say N.
392
393config SATA_SX4
394 tristate "Promise SATA SX4 support (Experimental)"
48b3de21 395 depends on PCI
bd322af1 396 select SATA_HOST
9a7780c9
TH
397 help
398 This option enables support for Promise Serial ATA SX4.
c6fd2807
JG
399
400 If unsure, say N.
401
9a7780c9
TH
402config ATA_BMDMA
403 bool "ATA BMDMA support"
7bc7ab1e 404 depends on HAS_DMA
9a7780c9
TH
405 default y
406 help
407 This option adds support for SFF ATA controllers with BMDMA
ed4e2f80
SR
408 capability. BMDMA stands for bus-master DMA and is the
409 de facto DMA interface for SFF controllers.
9a7780c9 410
ed4e2f80 411 If unsure, say Y.
9a7780c9
TH
412
413if ATA_BMDMA
414
415comment "SATA SFF controllers with BMDMA"
416
8ad92ba7 417config ATA_PIIX
2c7620d5 418 tristate "Intel ESB, ICH, PIIX3, PIIX4 PATA/SATA support"
81ce3c4b 419 depends on PCI
bd322af1 420 select SATA_HOST
c6fd2807 421 help
2bfc3611 422 This option enables support for ICH5/6/7/8 Serial ATA
2c7620d5
A
423 and support for PATA on the Intel ESB/ICH/PIIX3/PIIX4 series
424 host controllers.
c6fd2807
JG
425
426 If unsure, say N.
427
62936009
RS
428config SATA_DWC
429 tristate "DesignWare Cores SATA support"
7598469a 430 depends on DMADEVICES
0f48debd 431 select GENERIC_PHY
bd322af1 432 select SATA_HOST
62936009
RS
433 help
434 This option enables support for the on-chip SATA controller of the
435 AppliedMicro processor 460EX.
436
437 If unsure, say N.
438
50b43375
MR
439config SATA_DWC_OLD_DMA
440 bool "Support old device trees"
441 depends on SATA_DWC
442 select DW_DMAC_CORE
443 default y if 460EX
444 help
445 This option enables support for old device trees without the
446 "dmas" property.
447
8996b89d
ML
448config SATA_HIGHBANK
449 tristate "Calxeda Highbank SATA support"
0b99f864 450 depends on ARCH_HIGHBANK || COMPILE_TEST
bd322af1 451 select SATA_HOST
8996b89d
ML
452 help
453 This option enables support for the Calxeda Highbank SoC's
454 onboard SATA.
455
456 If unsure, say N.
457
8ad92ba7 458config SATA_MV
f9228c7f 459 tristate "Marvell SATA support"
4efded05 460 depends on PCI || ARCH_DOVE || ARCH_MV78XX0 || \
03803ef6 461 ARCH_MVEBU || ARCH_ORION5X || COMPILE_TEST
49c8f1ff 462 select GENERIC_PHY
bd322af1 463 select SATA_HOST
c6fd2807
JG
464 help
465 This option enables support for the Marvell Serial ATA family.
f9228c7f
ML
466 Currently supports 88SX[56]0[48][01] PCI(-X) chips,
467 as well as the newer [67]042 PCI-X/PCIe and SOC devices.
c6fd2807
JG
468
469 If unsure, say N.
470
8ad92ba7 471config SATA_NV
c6fd2807 472 tristate "NVIDIA SATA support"
81ce3c4b 473 depends on PCI
bd322af1 474 select SATA_HOST
c6fd2807
JG
475 help
476 This option enables support for NVIDIA Serial ATA.
477
478 If unsure, say N.
479
8ad92ba7 480config SATA_PROMISE
c6fd2807 481 tristate "Promise SATA TX2/TX4 support"
81ce3c4b 482 depends on PCI
bd322af1 483 select SATA_HOST
c6fd2807
JG
484 help
485 This option enables support for Promise Serial ATA TX2/TX4.
486
487 If unsure, say N.
488
163cf81d
VB
489config SATA_RCAR
490 tristate "Renesas R-Car SATA support"
51b1b286 491 depends on ARCH_RENESAS || COMPILE_TEST
bd322af1 492 select SATA_HOST
163cf81d
VB
493 help
494 This option enables support for Renesas R-Car Serial ATA.
495
496 If unsure, say N.
c6fd2807 497
8ad92ba7 498config SATA_SIL
c6fd2807 499 tristate "Silicon Image SATA support"
81ce3c4b 500 depends on PCI
bd322af1 501 select SATA_HOST
c6fd2807
JG
502 help
503 This option enables support for Silicon Image Serial ATA.
504
505 If unsure, say N.
506
8ad92ba7 507config SATA_SIS
9b14dec5 508 tristate "SiS 964/965/966/180 SATA support"
81ce3c4b 509 depends on PCI
9b14dec5 510 select PATA_SIS
bd322af1 511 select SATA_HOST
c6fd2807 512 help
a617c09f 513 This option enables support for SiS Serial ATA on
9b14dec5
A
514 SiS 964/965/966/180 and Parallel ATA on SiS 180.
515 The PATA support for SiS 180 requires additionally to
516 enable the PATA_SIS driver in the config.
c6fd2807
JG
517 If unsure, say N.
518
9a7780c9
TH
519config SATA_SVW
520 tristate "ServerWorks Frodo / Apple K2 SATA support"
521 depends on PCI
bd322af1 522 select SATA_HOST
9a7780c9
TH
523 help
524 This option enables support for Broadcom/Serverworks/Apple K2
525 SATA support.
526
527 If unsure, say N.
528
8ad92ba7 529config SATA_ULI
c6fd2807 530 tristate "ULi Electronics SATA support"
81ce3c4b 531 depends on PCI
bd322af1 532 select SATA_HOST
c6fd2807
JG
533 help
534 This option enables support for ULi Electronics SATA.
535
536 If unsure, say N.
537
8ad92ba7 538config SATA_VIA
c6fd2807 539 tristate "VIA SATA support"
81ce3c4b 540 depends on PCI
bd322af1 541 select SATA_HOST
c6fd2807
JG
542 help
543 This option enables support for VIA Serial ATA.
544
545 If unsure, say N.
546
8ad92ba7 547config SATA_VITESSE
c6fd2807 548 tristate "VITESSE VSC-7174 / INTEL 31244 SATA support"
81ce3c4b 549 depends on PCI
bd322af1 550 select SATA_HOST
c6fd2807
JG
551 help
552 This option enables support for Vitesse VSC7174 and Intel 31244 Serial ATA.
553
554 If unsure, say N.
555
9a7780c9 556comment "PATA SFF controllers with BMDMA"
025621f9 557
669a5db4 558config PATA_ALI
e3389cbc
AC
559 tristate "ALi PATA support"
560 depends on PCI
a9b2c120 561 select PATA_TIMINGS
669a5db4
JG
562 help
563 This option enables support for the ALi ATA interfaces
564 found on the many ALi chipsets.
565
566 If unsure, say N.
567
568config PATA_AMD
942d0947 569 tristate "AMD/NVidia PATA support"
669a5db4 570 depends on PCI
a9b2c120 571 select PATA_TIMINGS
669a5db4
JG
572 help
573 This option enables support for the AMD and NVidia PATA
574 interfaces found on the chipsets for Athlon/Athlon64.
575
576 If unsure, say N.
577
a480167b
VK
578config PATA_ARASAN_CF
579 tristate "ARASAN CompactFlash PATA Controller Support"
e638433b 580 depends on ARCH_SPEAR13XX || COMPILE_TEST
3b5ec274 581 depends on DMADEVICES
a480167b
VK
582 select DMA_ENGINE
583 help
584 Say Y here to support the ARASAN CompactFlash PATA controller
585
669a5db4 586config PATA_ARTOP
c645fd34
AC
587 tristate "ARTOP 6210/6260 PATA support"
588 depends on PCI
669a5db4
JG
589 help
590 This option enables support for ARTOP PATA controllers.
591
592 If unsure, say N.
593
9a7780c9
TH
594config PATA_ATIIXP
595 tristate "ATI PATA support"
d15d6e6c
JJIL
596 depends on PCI
597 help
9a7780c9
TH
598 This option enables support for the ATI ATA interfaces
599 found on the many ATI chipsets.
7c9ef8e4
KNG
600
601 If unsure, say N.
602
9a7780c9
TH
603config PATA_ATP867X
604 tristate "ARTOP/Acard ATP867X PATA support"
c645fd34 605 depends on PCI
a9b2c120 606 select PATA_TIMINGS
669a5db4 607 help
9a7780c9
TH
608 This option enables support for ARTOP/Acard ATP867X PATA
609 controllers.
669a5db4
JG
610
611 If unsure, say N.
612
613config PATA_CMD64X
c645fd34
AC
614 tristate "CMD64x PATA support"
615 depends on PCI
a9b2c120 616 select PATA_TIMINGS
669a5db4
JG
617 help
618 This option enables support for the CMD64x series chips
619 except for the CMD640.
620
621 If unsure, say N.
622
623config PATA_CS5520
624 tristate "CS5510/5520 PATA support"
9236a76d 625 depends on PCI && (X86_32 || COMPILE_TEST)
669a5db4
JG
626 help
627 This option enables support for the Cyrix 5510/5520
628 companion chip used with the MediaGX/Geode processor family.
629
630 If unsure, say N.
631
632config PATA_CS5530
e3389cbc 633 tristate "CS5530 PATA support"
9236a76d 634 depends on PCI && (X86_32 || COMPILE_TEST)
669a5db4
JG
635 help
636 This option enables support for the Cyrix/NatSemi/AMD CS5530
637 companion chip used with the MediaGX/Geode processor family.
638
639 If unsure, say N.
640
641config PATA_CS5535
642 tristate "CS5535 PATA support (Experimental)"
dc5d7b3c 643 depends on PCI && (X86_32 || (X86_64 && COMPILE_TEST))
22eebaa6 644 depends on !UML
669a5db4
JG
645 help
646 This option enables support for the NatSemi/AMD CS5535
647 companion chip used with the Geode processor family.
648
649 If unsure, say N.
650
3957df61 651config PATA_CS5536
e3389cbc 652 tristate "CS5536 PATA support"
9236a76d 653 depends on PCI && (X86_32 || MIPS || COMPILE_TEST)
3957df61
MP
654 help
655 This option enables support for the AMD CS5536
656 companion chip used with the Geode LX processor family.
657
658 If unsure, say N.
659
669a5db4
JG
660config PATA_CYPRESS
661 tristate "Cypress CY82C693 PATA support (Very Experimental)"
48b3de21 662 depends on PCI
a9b2c120 663 select PATA_TIMINGS
669a5db4
JG
664 help
665 This option enables support for the Cypress/Contaq CY82C693
666 chipset found in some Alpha systems
667
668 If unsure, say N.
669
670config PATA_EFAR
671 tristate "EFAR SLC90E66 support"
672 depends on PCI
673 help
674 This option enables support for the EFAR SLC90E66
675 IDE controller found on some older machines.
676
677 If unsure, say N.
678
2fff2751
RP
679config PATA_EP93XX
680 tristate "Cirrus Logic EP93xx PATA support"
681 depends on ARCH_EP93XX
a9b2c120 682 select PATA_TIMINGS
2fff2751
RP
683 help
684 This option enables support for the PATA controller in
685 the Cirrus Logic EP9312 and EP9315 ARM CPU.
686
687 If unsure, say N.
688
be4e456e
LW
689config PATA_FTIDE010
690 tristate "Faraday Technology FTIDE010 PATA support"
2aa56671 691 depends on ARM || COMPILE_TEST
accd0473 692 depends on SATA_GEMINI
be4e456e
LW
693 help
694 This option enables support for the Faraday FTIDE010
695 PATA controller found in the Cortina Gemini SoCs.
696
697 If unsure, say N.
698
669a5db4 699config PATA_HPT366
c645fd34
AC
700 tristate "HPT 366/368 PATA support"
701 depends on PCI
669a5db4
JG
702 help
703 This option enables support for the HPT 366 and 368
704 PATA controllers via the new ATA layer.
705
706 If unsure, say N.
707
708config PATA_HPT37X
be315d46
AC
709 tristate "HPT 370/370A/371/372/374/302 PATA support"
710 depends on PCI
669a5db4
JG
711 help
712 This option enables support for the majority of the later HPT
713 PATA controllers via the new ATA layer.
714
715 If unsure, say N.
716
717config PATA_HPT3X2N
0ca646db 718 tristate "HPT 371N/372N/302N PATA support"
be315d46 719 depends on PCI
669a5db4
JG
720 help
721 This option enables support for the N variant HPT PATA
0ca646db 722 controllers via the new ATA layer.
669a5db4
JG
723
724 If unsure, say N.
725
726config PATA_HPT3X3
66e7da4e 727 tristate "HPT 343/363 PATA support"
669a5db4
JG
728 depends on PCI
729 help
730 This option enables support for the HPT 343/363
731 PATA controllers via the new ATA layer
732
733 If unsure, say N.
734
66e7da4e 735config PATA_HPT3X3_DMA
be315d46 736 bool "HPT 343/363 DMA support"
66e7da4e
AC
737 depends on PATA_HPT3X3
738 help
739 This option enables DMA support for the HPT343/363
740 controllers. Enable with care as there are still some
741 problems with DMA on this chipset.
742
9a7780c9
TH
743config PATA_ICSIDE
744 tristate "Acorn ICS PATA support"
745 depends on ARM && ARCH_ACORN
a9b2c120 746 select PATA_TIMINGS
669a5db4 747 help
9a7780c9
TH
748 On Acorn systems, say Y here if you wish to use the ICS PATA
749 interface card. This is not required for ICS partition support.
750 If you are unsure, say N to this.
751
e39c75cf
APR
752config PATA_IMX
753 tristate "PATA support for Freescale iMX"
7dc3c053 754 depends on ARCH_MXC || COMPILE_TEST
a9b2c120 755 select PATA_TIMINGS
e39c75cf
APR
756 help
757 This option enables support for the PATA host available on Freescale
758 iMX SoCs.
759
760 If unsure, say N.
761
9a7780c9
TH
762config PATA_IT8213
763 tristate "IT8213 PATA support (Experimental)"
48b3de21 764 depends on PCI
9a7780c9
TH
765 help
766 This option enables support for the ITE 821 PATA
767 controllers via the new ATA layer.
669a5db4
JG
768
769 If unsure, say N.
770
669a5db4 771config PATA_IT821X
942d0947
AC
772 tristate "IT8211/2 PATA support"
773 depends on PCI
669a5db4
JG
774 help
775 This option enables support for the ITE 8211 and 8212
776 PATA controllers via the new ATA layer, including RAID
777 mode.
778
779 If unsure, say N.
780
406176ee
JG
781config PATA_JMICRON
782 tristate "JMicron PATA support"
783 depends on PCI
784 help
785 Enable support for the JMicron IDE controller, via the new
786 ATA layer.
787
788 If unsure, say N.
789
9a7780c9
TH
790config PATA_MACIO
791 tristate "Apple PowerMac/PowerBook internal 'MacIO' IDE"
792 depends on PPC_PMAC
669a5db4 793 help
9a7780c9
TH
794 Most IDE capable PowerMacs have IDE busses driven by a variant
795 of this controller which is part of the Apple chipset used on
796 most PowerMac models. Some models have multiple busses using
797 different chipsets, though generally, MacIO is one of them.
669a5db4 798
75742cb4
AC
799config PATA_MARVELL
800 tristate "Marvell PATA support via legacy mode"
801 depends on PCI
802 help
5b66c829
AC
803 This option enables limited support for the Marvell 88SE61xx ATA
804 controllers. If you wish to use only the SATA ports then select
805 the AHCI driver alone. If you wish to the use the PATA port or
806 both SATA and PATA include this driver.
75742cb4
AC
807
808 If unsure, say N.
809
869934ad
WS
810config PATA_MPC52xx
811 tristate "Freescale MPC52xx SoC internal IDE"
812 depends on PPC_MPC52xx && PPC_BESTCOMM
813 select PPC_BESTCOMM_ATA
814 help
815 This option enables support for integrated IDE controller
816 of the Freescale MPC52xx SoC.
817
818 If unsure, say N.
819
669a5db4
JG
820config PATA_NETCELL
821 tristate "NETCELL Revolution RAID support"
822 depends on PCI
823 help
824 This option enables support for the Netcell Revolution RAID
825 PATA controller.
826
827 If unsure, say N.
828
51dbd490 829config PATA_NINJA32
be315d46
AC
830 tristate "Ninja32/Delkin Cardbus ATA support"
831 depends on PCI
51dbd490
AC
832 help
833 This option enables support for the Ninja32, Delkin and
834 possibly other brands of Cardbus ATA adapter
835
836 If unsure, say N.
837
c4b5b7b6 838config PATA_NS87415
e3389cbc
AC
839 tristate "Nat Semi NS87415 PATA support"
840 depends on PCI
a9b2c120 841 select PATA_TIMINGS
c4b5b7b6
AC
842 help
843 This option enables support for the National Semiconductor
844 NS87415 PCI-IDE controller.
845
846 If unsure, say N.
847
9a7780c9
TH
848config PATA_OLDPIIX
849 tristate "Intel PATA old PIIX support"
850 depends on PCI
669a5db4 851 help
9a7780c9 852 This option enables support for early PIIX PATA support.
669a5db4
JG
853
854 If unsure, say N.
855
856config PATA_OPTIDMA
516e72cb 857 tristate "OPTI FireStar PATA support (Very Experimental)"
48b3de21 858 depends on PCI
669a5db4
JG
859 help
860 This option enables DMA/PIO support for the later OPTi
861 controllers found on some old motherboards and in some
3dde6ad8 862 laptops.
669a5db4
JG
863
864 If unsure, say N.
865
be315d46
AC
866config PATA_PDC2027X
867 tristate "Promise PATA 2027x support"
868 depends on PCI
869 help
870 This option enables support for Promise PATA pdc20268 to pdc20277 host adapters.
871
872 If unsure, say N.
873
669a5db4 874config PATA_PDC_OLD
e3389cbc
AC
875 tristate "Older Promise PATA controller support"
876 depends on PCI
669a5db4
JG
877 help
878 This option enables support for the Promise 20246, 20262, 20263,
879 20265 and 20267 adapters.
880
881 If unsure, say N.
882
669a5db4 883config PATA_RADISYS
e3389cbc 884 tristate "RADISYS 82600 PATA support (Experimental)"
48b3de21 885 depends on PCI
669a5db4
JG
886 help
887 This option enables support for the RADISYS 82600
888 PATA controllers via the new ATA layer
889
890 If unsure, say N.
891
6b406782
AC
892config PATA_RDC
893 tristate "RDC PATA support"
894 depends on PCI
895 help
896 This option enables basic support for the later RDC PATA controllers
897 controllers via the new ATA layer. For the RDC 1010, you need to
898 enable the IT821X driver instead.
899
900 If unsure, say N.
901
9a7780c9
TH
902config PATA_SC1200
903 tristate "SC1200 PATA support"
840aa787 904 depends on PCI && (X86_32 || COMPILE_TEST)
669a5db4 905 help
9a7780c9
TH
906 This option enables support for the NatSemi/AMD SC1200 SoC
907 companion chip used with the Geode processor family.
669a5db4
JG
908
909 If unsure, say N.
910
9a7780c9
TH
911config PATA_SCH
912 tristate "Intel SCH PATA support"
e3389cbc 913 depends on PCI
669a5db4 914 help
9a7780c9
TH
915 This option enables support for Intel SCH PATA on the Intel
916 SCH (US15W, US15L, UL11L) series host controllers.
669a5db4
JG
917
918 If unsure, say N.
919
920config PATA_SERVERWORKS
942d0947
AC
921 tristate "SERVERWORKS OSB4/CSB5/CSB6/HT1000 PATA support"
922 depends on PCI
669a5db4
JG
923 help
924 This option enables support for the Serverworks OSB4/CSB5/CSB6 and
925 HT1000 PATA controllers, via the new ATA layer.
926
927 If unsure, say N.
928
669a5db4
JG
929config PATA_SIL680
930 tristate "CMD / Silicon Image 680 PATA support"
931 depends on PCI
932 help
933 This option enables support for CMD / Silicon Image 680 PATA.
934
935 If unsure, say N.
936
937config PATA_SIS
e3389cbc
AC
938 tristate "SiS PATA support"
939 depends on PCI
669a5db4
JG
940 help
941 This option enables support for SiS PATA controllers
942
943 If unsure, say N.
944
8e182a90
AC
945config PATA_TOSHIBA
946 tristate "Toshiba Piccolo support (Experimental)"
48b3de21 947 depends on PCI
8e182a90
AC
948 help
949 Support for the Toshiba Piccolo controllers. Currently only the
950 primary channel is supported by this driver.
951
952 If unsure, say N.
953
9a7780c9
TH
954config PATA_TRIFLEX
955 tristate "Compaq Triflex PATA support"
956 depends on PCI
957 help
958 Enable support for the Compaq 'Triflex' IDE controller as found
959 on many Compaq Pentium-Pro systems, via the new ATA layer.
960
961 If unsure, say N.
962
669a5db4
JG
963config PATA_VIA
964 tristate "VIA PATA support"
965 depends on PCI
a9b2c120 966 select PATA_TIMINGS
669a5db4
JG
967 help
968 This option enables support for the VIA PATA interfaces
969 found on the many VIA chipsets.
970
971 If unsure, say N.
972
2dc6c6f1
MV
973config PATA_PXA
974 tristate "PXA DMA-capable PATA support"
7767c73a 975 depends on ARCH_PXA || COMPILE_TEST
2dc6c6f1
MV
976 help
977 This option enables support for harddrive attached to PXA CPU's bus.
978
979 NOTE: This driver utilizes PXA DMA controller, in case your hardware
980 is not capable of doing MWDMA, use pata_platform instead.
981
982 If unsure, say N.
983
669a5db4
JG
984config PATA_WINBOND
985 tristate "Winbond SL82C105 PATA support"
986 depends on PCI
987 help
988 This option enables support for SL82C105 PATA devices found in the
989 Netwinder and some other systems
990
991 If unsure, say N.
992
9a7780c9
TH
993endif # ATA_BMDMA
994
995comment "PIO-only SFF controllers"
996
9a7780c9
TH
997config PATA_CMD640_PCI
998 tristate "CMD640 PCI PATA support (Experimental)"
48b3de21 999 depends on PCI
a9b2c120 1000 select PATA_TIMINGS
9a7780c9
TH
1001 help
1002 This option enables support for the CMD640 PCI IDE
1003 interface chip. Only the primary channel is currently
1004 supported.
1005
1006 If unsure, say N.
1007
7e11aabd 1008config PATA_FALCON
44b1fbc0
FT
1009 tristate "Atari Falcon and Q40/Q60 PATA support"
1010 depends on M68K && (ATARI || Q40)
7e11aabd
BZ
1011 help
1012 This option enables support for the on-board IDE
44b1fbc0 1013 interface on the Atari Falcon and Q40/Q60.
7e11aabd
BZ
1014
1015 If unsure, say N.
1016
9ab27d1d
BZ
1017config PATA_GAYLE
1018 tristate "Amiga Gayle PATA support"
1019 depends on M68K && AMIGA
1020 help
1021 This option enables support for the on-board IDE
1022 interfaces on some Amiga models (A600, A1200,
1023 A4000 and A4000T) and also for IDE interfaces on
1024 the Zorro expansion bus (M-Tech E-Matrix 530
1025 expansion card).
1026
1027 If unsure, say N.
1028
740c68a0
BZ
1029config PATA_BUDDHA
1030 tristate "Buddha/Catweasel/X-Surf PATA support"
1031 depends on ZORRO
1032 help
1033 This option enables support for the IDE interfaces
1034 on the Buddha, Catweasel and X-Surf expansion boards
1035 on the Zorro expansion bus. It supports up to two
1036 interfaces on the Buddha, three on the Catweasel and
1037 two on the X-Surf.
1038
1039 If unsure, say N.
1040
9a7780c9
TH
1041config PATA_ISAPNP
1042 tristate "ISA Plug and Play PATA support"
1043 depends on ISAPNP
1044 help
1045 This option enables support for ISA plug & play ATA
1046 controllers such as those found on old soundcards.
1047
1048 If unsure, say N.
1049
1050config PATA_IXP4XX_CF
1051 tristate "IXP4XX Compact Flash support"
55712627 1052 depends on ARCH_IXP4XX || COMPILE_TEST
9a7780c9
TH
1053 help
1054 This option enables support for a Compact Flash connected on
1055 the ixp4xx expansion bus. This driver had been written for
1056 Loft/Avila boards in mind but can work with others.
1057
1058 If unsure, say N.
1059
1060config PATA_MPIIX
1061 tristate "Intel PATA MPIIX support"
1062 depends on PCI
1063 help
1064 This option enables support for MPIIX PATA support.
1065
1066 If unsure, say N.
1067
1068config PATA_NS87410
1069 tristate "Nat Semi NS87410 PATA support"
1070 depends on PCI
a9b2c120 1071 select PATA_TIMINGS
9a7780c9
TH
1072 help
1073 This option enables support for the National Semiconductor
1074 NS87410 PCI-IDE controller.
1075
1076 If unsure, say N.
1077
1078config PATA_OPTI
1079 tristate "OPTI621/6215 PATA support (Very Experimental)"
48b3de21 1080 depends on PCI
9a7780c9
TH
1081 help
1082 This option enables full PIO support for the early Opti ATA
1083 controllers found on some old motherboards.
1084
1085 If unsure, say N.
1086
9a7780c9
TH
1087config PATA_PCMCIA
1088 tristate "PCMCIA PATA support"
1089 depends on PCMCIA
1090 help
1091 This option enables support for PCMCIA ATA interfaces, including
1092 compact flash card adapters via the new ATA layer.
1093
1094 If unsure, say N.
7e45b0e5 1095
a20c9e82 1096config PATA_PLATFORM
d3243965 1097 tristate "Generic platform device PATA support" if HAVE_PATA_PLATFORM
a20c9e82
PM
1098 help
1099 This option enables support for generic directly connected ATA
1100 devices commonly found on embedded systems.
1101
1102 If unsure, say N.
61f71621
AV
1103
1104config PATA_OF_PLATFORM
1105 tristate "OpenFirmware platform device PATA support"
3ebe59a5
LB
1106 depends on OF
1107 select PATA_PLATFORM
61f71621
AV
1108 help
1109 This option enables support for generic directly connected ATA
1110 devices commonly found on embedded systems with OpenFirmware
1111 bindings.
1112
1113 If unsure, say N.
a20c9e82 1114
9a7780c9
TH
1115config PATA_QDI
1116 tristate "QDI VLB PATA support"
1117 depends on ISA
0dcd0a76 1118 select PATA_LEGACY
73b6a2be 1119 help
9a7780c9 1120 Support for QDI 6500 and 6580 PATA controllers on VESA local bus.
73b6a2be 1121
9a7780c9
TH
1122config PATA_RB532
1123 tristate "RouterBoard 532 PATA CompactFlash support"
1124 depends on MIKROTIK_RB532
0df0d0a0 1125 help
9a7780c9
TH
1126 This option enables support for the RouterBoard 532
1127 PATA CompactFlash controller.
0df0d0a0
AZ
1128
1129 If unsure, say N.
1130
9a7780c9
TH
1131config PATA_RZ1000
1132 tristate "PC Tech RZ1000 PATA support"
1133 depends on PCI
3c929c6f 1134 help
9a7780c9
TH
1135 This option enables basic support for the PC Tech RZ1000/1
1136 PATA controllers via the new ATA layer
3c929c6f
DD
1137
1138 If unsure, say N.
1139
9a7780c9
TH
1140config PATA_WINBOND_VLB
1141 tristate "Winbond W83759A VLB PATA support (Experimental)"
48b3de21 1142 depends on ISA
6d981b9a 1143 select PATA_LEGACY
a619f981 1144 help
9a7780c9
TH
1145 Support for the Winbond W83759A controller on Vesa Local Bus
1146 systems.
a619f981 1147
246a1c4c
OZ
1148config PATA_PARPORT
1149 tristate "Parallel port IDE device support"
7750d8b5 1150 depends on PARPORT_PC
246a1c4c
OZ
1151 help
1152 There are many external CD-ROM and disk devices that connect through
1153 your computer's parallel port. Most of them are actually IDE devices
1154 using a parallel port IDE adapter. This option enables the
1155 PATA_PARPORT subsystem which contains drivers for many of these
1156 external drives.
1157 Read <file:Documentation/admin-guide/blockdev/paride.rst> for more
1158 information.
1159
72f2b0b2 1160source "drivers/ata/pata_parport/Kconfig"
246a1c4c 1161
9a7780c9 1162comment "Generic fallback / legacy drivers"
a619f981 1163
9a7780c9
TH
1164config PATA_ACPI
1165 tristate "ACPI firmware driver for PATA"
995592bc 1166 depends on ATA_ACPI && ATA_BMDMA && PCI
a9b2c120 1167 select PATA_TIMINGS
07ab85de 1168 help
9a7780c9
TH
1169 This option enables an ACPI method driver which drives
1170 motherboard PATA controller interfaces through the ACPI
1171 firmware in the BIOS. This driver can sometimes handle
1172 otherwise unsupported hardware.
07ab85de 1173
9a7780c9
TH
1174config ATA_GENERIC
1175 tristate "Generic ATA support"
1176 depends on PCI && ATA_BMDMA
bd322af1 1177 select SATA_HOST
d830d173 1178 help
9a7780c9
TH
1179 This option enables support for generic BIOS configured
1180 ATA controllers via the new ATA layer
d830d173
SZ
1181
1182 If unsure, say N.
1183
9a7780c9
TH
1184config PATA_LEGACY
1185 tristate "Legacy ISA PATA support (Experimental)"
48b3de21 1186 depends on (ISA || PCI)
a9b2c120 1187 select PATA_TIMINGS
88358ab0 1188 help
9a7780c9
TH
1189 This option enables support for ISA/VLB/PCI bus legacy PATA
1190 ports and allows them to be accessed via the new ATA layer.
88358ab0 1191
9a7780c9 1192 If unsure, say N.
88358ab0 1193
127102ae 1194endif # ATA_SFF
b196fc69 1195endif # ATA