Merge git://git.kernel.org/pub/scm/linux/kernel/git/hirofumi/fatfs-2.6
[linux-2.6] / drivers / ide / Kconfig
CommitLineData
1da177e4
LT
1#
2# IDE ATA ATAPI Block device driver configuration
3#
1da177e4 4
ec7748b5
SR
5# Select HAVE_IDE if IDE is supported
6config HAVE_IDE
9ba16087 7 bool
ec7748b5 8
e0ff9cd1 9menuconfig IDE
1da177e4 10 tristate "ATA/ATAPI/MFM/RLL support"
ec7748b5 11 depends on HAVE_IDE
e0ff9cd1 12 depends on BLOCK
1da177e4
LT
13 ---help---
14 If you say Y here, your kernel will be able to manage low cost mass
15 storage units such as ATA/(E)IDE and ATAPI units. The most common
16 cases are IDE hard drives and ATAPI CD-ROM drives.
17
18 If your system is pure SCSI and doesn't use these interfaces, you
19 can say N here.
20
21 Integrated Disk Electronics (IDE aka ATA-1) is a connecting standard
22 for mass storage units such as hard disks. It was designed by
23 Western Digital and Compaq Computer in 1984. It was then named
24 ST506. Quite a number of disks use the IDE interface.
25
26 AT Attachment (ATA) is the superset of the IDE specifications.
27 ST506 was also called ATA-1.
28
29 Fast-IDE is ATA-2 (also named Fast ATA), Enhanced IDE (EIDE) is
30 ATA-3. It provides support for larger disks (up to 8.4GB by means of
31 the LBA standard), more disks (4 instead of 2) and for other mass
32 storage units such as tapes and cdrom. UDMA/33 (aka UltraDMA/33) is
33 ATA-4 and provides faster (and more CPU friendly) transfer modes
34 than previous PIO (Programmed processor Input/Output) from previous
35 ATA/IDE standards by means of fast DMA controllers.
36
37 ATA Packet Interface (ATAPI) is a protocol used by EIDE tape and
38 CD-ROM drives, similar in many respects to the SCSI protocol.
39
40 SMART IDE (Self Monitoring, Analysis and Reporting Technology) was
41 designed in order to prevent data corruption and disk crash by
42 detecting pre hardware failure conditions (heat, access time, and
43 the like...). Disks built since June 1995 may follow this standard.
44 The kernel itself doesn't manage this; however there are quite a
45 number of user programs such as smart that can query the status of
46 SMART parameters from disk drives.
47
48 To compile this driver as a module, choose M here: the
49 module will be called ide.
50
1c10e938 51 For further information, please read <file:Documentation/ide/ide.txt>.
1da177e4
LT
52
53 If unsure, say Y.
54
55if IDE
56
1c10e938 57comment "Please see Documentation/ide/ide.txt for help/info on IDE drives"
1da177e4 58
f06ab340
BZ
59config IDE_TIMINGS
60 bool
61
594c16d8
BZ
62config IDE_ATAPI
63 bool
64
7f92b11c
BZ
65config IDE_LEGACY
66 bool
67
1da177e4
LT
68config BLK_DEV_IDE_SATA
69 bool "Support for SATA (deprecated; conflicts with libata SATA driver)"
70 default n
71 ---help---
72 There are two drivers for Serial ATA controllers.
73
b43c5f3d
PR
74 The main driver, "libata", uses the SCSI subsystem
75 and supports most modern SATA controllers. In order to use it
76 you may take a look at "Serial ATA (prod) and Parallel ATA
77 (experimental) drivers".
1da177e4
LT
78
79 The IDE driver (which you are currently configuring) supports
80 a few first-generation SATA controllers.
81
82 In order to eliminate conflicts between the two subsystems,
83 this config option enables the IDE driver's SATA support.
84 Normally this is disabled, as it is preferred that libata
85 supports SATA controllers, and this (IDE) driver supports
86 PATA controllers.
87
88 If unsure, say N.
89
806f80a6
BZ
90config IDE_GD
91 tristate "generic ATA/ATAPI disk support"
92 default y
93 help
94 Support for ATA/ATAPI disks (including ATAPI floppy drives).
1da177e4 95
806f80a6
BZ
96 To compile this driver as a module, choose M here.
97 The module will be called ide-gd_mod.
1da177e4
LT
98
99 If unsure, say Y.
100
806f80a6
BZ
101config IDE_GD_ATA
102 bool "ATA disk support"
103 depends on IDE_GD
104 default y
105 help
106 This will include support for ATA hard disks.
107
108 If unsure, say Y.
109
110config IDE_GD_ATAPI
111 bool "ATAPI floppy support"
112 depends on IDE_GD
113 select IDE_ATAPI
114 help
115 This will include support for ATAPI floppy drives
116 (i.e. Iomega ZIP or MKE LS-120).
117
118 For information about jumper settings and the question
119 of when a ZIP drive uses a partition table, see
120 <http://www.win.tue.nl/~aeb/linux/zip/zip-1.html>.
121
122 If unsure, say N.
123
1da177e4
LT
124config BLK_DEV_IDECS
125 tristate "PCMCIA IDE support"
126 depends on PCMCIA
127 help
3b6ce249
AM
128 Support for Compact Flash cards, outboard IDE disks, tape drives,
129 and CD-ROM drives connected through a PCMCIA card.
1da177e4 130
78281c53
ML
131config BLK_DEV_DELKIN
132 tristate "Cardbus IDE support (Delkin/ASKA/Workbit)"
133 depends on CARDBUS && PCI
134 help
135 Support for Delkin, ASKA, and Workbit Cardbus CompactFlash
136 Adapters. This may also work for similar SD and XD adapters.
137
1da177e4
LT
138config BLK_DEV_IDECD
139 tristate "Include IDE/ATAPI CDROM support"
140 ---help---
141 If you have a CD-ROM drive using the ATAPI protocol, say Y. ATAPI is
142 a newer protocol used by IDE CD-ROM and TAPE drives, similar to the
143 SCSI protocol. Most new CD-ROM drives use ATAPI, including the
144 NEC-260, Mitsumi FX400, Sony 55E, and just about all non-SCSI
145 double(2X) or better speed drives.
146
147 If you say Y here, the CD-ROM drive will be identified at boot time
148 along with other IDE devices, as "hdb" or "hdc", or something
149 similar (check the boot messages with dmesg). If this is your only
150 CD-ROM drive, you can say N to all other CD-ROM options, but be sure
151 to say Y or M to "ISO 9660 CD-ROM file system support".
152
1da177e4
LT
153 To compile this driver as a module, choose M here: the
154 module will be called ide-cd.
155
972560fb
BZ
156config BLK_DEV_IDECD_VERBOSE_ERRORS
157 bool "Verbose error logging for IDE/ATAPI CDROM driver" if EMBEDDED
158 depends on BLK_DEV_IDECD
159 default y
160 help
161 Turn this on to have the driver print out the meanings of the
162 ATAPI error codes. This will use up additional 8kB of kernel-space
163 memory, though.
164
1da177e4 165config BLK_DEV_IDETAPE
4278c2d5 166 tristate "Include IDE/ATAPI TAPE support"
594c16d8 167 select IDE_ATAPI
1da177e4
LT
168 help
169 If you have an IDE tape drive using the ATAPI protocol, say Y.
170 ATAPI is a newer protocol used by IDE tape and CD-ROM drives,
171 similar to the SCSI protocol. If you have an SCSI tape drive
172 however, you can say N here.
173
174 You should also say Y if you have an OnStream DI-30 tape drive; this
175 will not work with the SCSI protocol, until there is support for the
176 SC-30 and SC-50 versions.
177
178 If you say Y here, the tape drive will be identified at boot time
179 along with other IDE devices, as "hdb" or "hdc", or something
180 similar, and will be mapped to a character device such as "ht0"
181 (check the boot messages with dmesg). Be sure to consult the
1c10e938
RD
182 <file:drivers/ide/ide-tape.c> and <file:Documentation/ide/ide.txt>
183 files for usage information.
1da177e4
LT
184
185 To compile this driver as a module, choose M here: the
186 module will be called ide-tape.
187
1da177e4 188config BLK_DEV_IDESCSI
5a61dd9e 189 tristate "SCSI emulation support (DEPRECATED)"
1da177e4 190 depends on SCSI
594c16d8 191 select IDE_ATAPI
1da177e4
LT
192 ---help---
193 WARNING: ide-scsi is no longer needed for cd writing applications!
194 The 2.6 kernel supports direct writing to ide-cd, which eliminates
195 the need for ide-scsi + the entire scsi stack just for writing a
196 cd. The new method is more efficient in every way.
197
198 This will provide SCSI host adapter emulation for IDE ATAPI devices,
199 and will allow you to use a SCSI device driver instead of a native
200 ATAPI driver.
201
1da177e4
LT
202 If both this SCSI emulation and native ATAPI support are compiled
203 into the kernel, the native support will be used.
204
e3a59b4d
HR
205config BLK_DEV_IDEACPI
206 bool "IDE ACPI support"
207 depends on ACPI
208 ---help---
209 Implement ACPI support for generic IDE devices. On modern
210 machines ACPI support is required to properly handle ACPI S3 states.
211
1da177e4
LT
212config IDE_TASK_IOCTL
213 bool "IDE Taskfile Access"
214 help
215 This is a direct raw access to the media. It is a complex but
216 elegant solution to test and validate the domain of the hardware and
3b6ce249 217 perform below the driver data recovery if needed. This is the most
1da177e4
LT
218 basic form of media-forensics.
219
220 If you are unsure, say N here.
221
ecfd80e4
BZ
222config IDE_PROC_FS
223 bool "legacy /proc/ide/ support"
224 depends on IDE && PROC_FS
225 default y
226 help
227 This option enables support for the various files in
228 /proc/ide. In Linux 2.6 this has been superseded by
229 files in sysfs but many legacy applications rely on this.
230
231 If unsure say Y.
232
1da177e4
LT
233comment "IDE chipset support/bugfixes"
234
235config IDE_GENERIC
236 tristate "generic/default IDE chipset support"
35bbac9a 237 depends on ALPHA || X86 || IA64 || M32R || MIPS
1da177e4 238 help
278ecfb8
TH
239 This is the generic IDE driver. This driver attaches to the
240 fixed legacy ports (e.g. on PCs 0x1f0/0x170, 0x1e8/0x168 and
241 so on). Please note that if this driver is built into the
242 kernel or loaded before other ATA (IDE or libata) drivers
243 and the controller is located at legacy ports, this driver
244 may grab those ports and thus can prevent the controller
245 specific driver from attaching.
246
247 Also, currently, IDE generic doesn't allow IRQ sharing
248 meaning that the IRQs it grabs won't be available to other
249 controllers sharing those IRQs which usually makes drivers
250 for those controllers fail. Generally, it's not a good idea
251 to load IDE generic driver on modern systems.
252
82a0e70e 253 If unsure, say N.
1da177e4 254
8cb1f567
AV
255config BLK_DEV_PLATFORM
256 tristate "Platform driver for IDE interfaces"
257 help
258 This is the platform IDE driver, used mostly for Memory Mapped
259 IDE devices, like Compact Flashes running in True IDE mode.
260
261 If unsure, say N.
262
1da177e4 263config BLK_DEV_CMD640
ade2daf9 264 tristate "CMD640 chipset bugfix/support"
1da177e4 265 depends on X86
17b500de 266 select IDE_TIMINGS
1da177e4
LT
267 ---help---
268 The CMD-Technologies CMD640 IDE chip is used on many common 486 and
269 Pentium motherboards, usually in combination with a "Neptune" or
270 "SiS" chipset. Unfortunately, it has a number of rather nasty
271 design flaws that can cause severe data corruption under many common
272 conditions. Say Y here to include code which tries to automatically
273 detect and correct the problems under Linux. This option also
274 enables access to the secondary IDE ports in some CMD640 based
275 systems.
276
277 This driver will work automatically in PCI based systems (most new
278 systems have PCI slots). But if your system uses VESA local bus
279 (VLB) instead of PCI, you must also supply a kernel boot parameter
64afc31f 280 to enable the CMD640 bugfix/support: "cmd640.probe_vlb". (Try "man
1da177e4
LT
281 bootparam" or see the documentation of your boot loader about how to
282 pass options to the kernel.)
283
284 The CMD640 chip is also used on add-in cards by Acculogic, and on
285 the "CSA-6400E PCI to IDE controller" that some people have. For
1c10e938 286 details, read <file:Documentation/ide/ide.txt>.
1da177e4
LT
287
288config BLK_DEV_CMD640_ENHANCED
289 bool "CMD640 enhanced support"
290 depends on BLK_DEV_CMD640
291 help
292 This option includes support for setting/autotuning PIO modes and
293 prefetch on CMD640 IDE interfaces. For details, read
1c10e938 294 <file:Documentation/ide/ide.txt>. If you have a CMD640 IDE interface
1da177e4
LT
295 and your BIOS does not already do this for you, then say Y here.
296 Otherwise say N.
297
298config BLK_DEV_IDEPNP
ade2daf9 299 tristate "PNP EIDE support"
1da177e4
LT
300 depends on PNP
301 help
302 If you have a PnP (Plug and Play) compatible EIDE card and
303 would like the kernel to automatically detect and activate
304 it, say Y here.
305
8e882ba1
SS
306config BLK_DEV_IDEDMA_SFF
307 bool
308
842c19ad
BZ
309if PCI
310
311comment "PCI IDE chipsets support"
312
1da177e4 313config BLK_DEV_IDEPCI
842c19ad 314 bool
1da177e4 315
6d208b39 316config IDEPCI_PCIBUS_ORDER
ce71ed9b 317 bool "Probe IDE PCI devices in the PCI bus order (DEPRECATED)"
452a8ed8 318 depends on IDE=y && BLK_DEV_IDEPCI
ce71ed9b
BZ
319 default y
320 help
321 Probe IDE PCI devices in the order in which they appear on the
322 PCI bus (i.e. 00:1f.1 PCI device before 02:01.0 PCI device)
323 instead of the order in which IDE PCI host drivers are loaded.
324
325 Please note that this method of assuring stable naming of
326 IDE devices is unreliable and use other means for achieving
327 it (i.e. udev).
328
329 If in doubt, say N.
6d208b39 330
f7d7f3fd 331# TODO: split it on per host driver config options (or module parameters)
1da177e4 332config BLK_DEV_OFFBOARD
46255d40 333 bool "Boot off-board chipsets first support (DEPRECATED)"
41d1a3d3 334 depends on BLK_DEV_IDEPCI && (BLK_DEV_AEC62XX || BLK_DEV_GENERIC || BLK_DEV_HPT366 || BLK_DEV_PDC202XX_NEW || BLK_DEV_PDC202XX_OLD || BLK_DEV_TC86C001)
1da177e4
LT
335 help
336 Normally, IDE controllers built into the motherboard (on-board
337 controllers) are assigned to ide0 and ide1 while those on add-in PCI
338 cards (off-board controllers) are relegated to ide2 and ide3.
339 Answering Y here will allow you to reverse the situation, with
340 off-board controllers on ide0/1 and on-board controllers on ide2/3.
341 This can improve the usability of some boot managers such as lilo
342 when booting from a drive on an off-board controller.
343
1da177e4
LT
344 Note that, if you do this, the order of the hd* devices will be
345 rearranged which may require modification of fstab and other files.
346
46255d40
BZ
347 Please also note that this method of assuring stable naming of
348 IDE devices is unreliable and use other means for achieving it
349 (i.e. udev).
350
1da177e4
LT
351 If in doubt, say N.
352
353config BLK_DEV_GENERIC
354 tristate "Generic PCI IDE Chipset Support"
842c19ad 355 select BLK_DEV_IDEPCI
edd023d0
JD
356 help
357 This option provides generic support for various PCI IDE Chipsets
358 which otherwise might not be supported.
1da177e4
LT
359
360config BLK_DEV_OPTI621
361 tristate "OPTi 82C621 chipset enhanced support (EXPERIMENTAL)"
842c19ad
BZ
362 depends on EXPERIMENTAL
363 select BLK_DEV_IDEPCI
1da177e4
LT
364 help
365 This is a driver for the OPTi 82C621 EIDE controller.
366 Please read the comments at the top of <file:drivers/ide/pci/opti621.c>.
367
368config BLK_DEV_RZ1000
369 tristate "RZ1000 chipset bugfix/support"
842c19ad
BZ
370 depends on X86
371 select BLK_DEV_IDEPCI
1da177e4
LT
372 help
373 The PC-Technologies RZ1000 IDE chip is used on many common 486 and
374 Pentium motherboards, usually along with the "Neptune" chipset.
375 Unfortunately, it has a rather nasty design flaw that can cause
376 severe data corruption under many conditions. Say Y here to include
377 code which automatically detects and corrects the problem under
378 Linux. This may slow disk throughput by a few percent, but at least
379 things will operate 100% reliably.
380
1da177e4 381config BLK_DEV_IDEDMA_PCI
842c19ad
BZ
382 bool
383 select BLK_DEV_IDEPCI
8e882ba1 384 select BLK_DEV_IDEDMA_SFF
1da177e4 385
1da177e4
LT
386config BLK_DEV_AEC62XX
387 tristate "AEC62XX chipset support"
842c19ad 388 select BLK_DEV_IDEDMA_PCI
1da177e4
LT
389 help
390 This driver adds explicit support for Acard AEC62xx (Artop ATP8xx)
391 IDE controllers. This allows the kernel to change PIO, DMA and UDMA
392 speeds and to configure the chip to optimum performance.
393
394config BLK_DEV_ALI15X3
395 tristate "ALI M15x3 chipset support"
288911af 396 select IDE_TIMINGS
842c19ad 397 select BLK_DEV_IDEDMA_PCI
1da177e4
LT
398 help
399 This driver ensures (U)DMA support for ALI 1533, 1543 and 1543C
400 onboard chipsets. It also tests for Simplex mode and enables
401 normal dual channel support.
402
64afc31f 403 Please read the comments at the top of
1da177e4
LT
404 <file:drivers/ide/pci/alim15x3.c>.
405
406 If unsure, say N.
407
1da177e4
LT
408config BLK_DEV_AMD74XX
409 tristate "AMD and nVidia IDE support"
91302010 410 depends on !ARM
f06ab340 411 select IDE_TIMINGS
842c19ad 412 select BLK_DEV_IDEDMA_PCI
1da177e4
LT
413 help
414 This driver adds explicit support for AMD-7xx and AMD-8111 chips
415 and also for the nVidia nForce chip. This allows the kernel to
416 change PIO, DMA and UDMA speeds and to configure the chip to
417 optimum performance.
418
419config BLK_DEV_ATIIXP
420 tristate "ATI IXP chipset IDE support"
421 depends on X86
842c19ad 422 select BLK_DEV_IDEDMA_PCI
1da177e4
LT
423 help
424 This driver adds explicit support for ATI IXP chipset.
425 This allows the kernel to change PIO, DMA and UDMA speeds
426 and to configure the chip to optimum performance.
427
428 Say Y here if you have an ATI IXP chipset IDE controller.
429
430config BLK_DEV_CMD64X
431 tristate "CMD64{3|6|8|9} chipset support"
86a0e12f 432 select IDE_TIMINGS
842c19ad 433 select BLK_DEV_IDEDMA_PCI
1da177e4
LT
434 help
435 Say Y here if you have an IDE controller which uses any of these
436 chipsets: CMD643, CMD646, or CMD648.
437
438config BLK_DEV_TRIFLEX
439 tristate "Compaq Triflex IDE support"
842c19ad 440 select BLK_DEV_IDEDMA_PCI
1da177e4
LT
441 help
442 Say Y here if you have a Compaq Triflex IDE controller, such
443 as those commonly found on Compaq Pentium-Pro systems
444
445config BLK_DEV_CY82C693
446 tristate "CY82C693 chipset support"
cbf3d262 447 depends on ALPHA
713a590d 448 select IDE_TIMINGS
842c19ad 449 select BLK_DEV_IDEDMA_PCI
1da177e4
LT
450 help
451 This driver adds detection and support for the CY82C693 chipset
452 used on Digital's PC-Alpha 164SX boards.
453
1da177e4
LT
454config BLK_DEV_CS5520
455 tristate "Cyrix CS5510/20 MediaGX chipset support (VERY EXPERIMENTAL)"
456 depends on EXPERIMENTAL
842c19ad 457 select BLK_DEV_IDEDMA_PCI
1da177e4 458 help
3b6ce249 459 Include support for PIO tuning and virtual DMA on the Cyrix MediaGX
1da177e4
LT
460 5510/5520 chipset. This will automatically be detected and
461 configured if found.
462
463 It is safe to say Y to this question.
464
465config BLK_DEV_CS5530
466 tristate "Cyrix/National Semiconductor CS5530 MediaGX chipset support"
842c19ad 467 select BLK_DEV_IDEDMA_PCI
1da177e4
LT
468 help
469 Include support for UDMA on the Cyrix MediaGX 5530 chipset. This
470 will automatically be detected and configured if found.
471
472 It is safe to say Y to this question.
473
f5b2d8b4
JK
474config BLK_DEV_CS5535
475 tristate "AMD CS5535 chipset support"
476 depends on X86 && !X86_64
842c19ad 477 select BLK_DEV_IDEDMA_PCI
f5b2d8b4
JK
478 help
479 Include support for UDMA on the NSC/AMD CS5535 companion chipset.
480 This will automatically be detected and configured if found.
481
482 It is safe to say Y to this question.
483
1da177e4
LT
484config BLK_DEV_HPT366
485 tristate "HPT36X/37X chipset support"
842c19ad
BZ
486 select BLK_DEV_IDEDMA_PCI
487 help
1da177e4
LT
488 HPT366 is an Ultra DMA chipset for ATA-66.
489 HPT368 is an Ultra DMA chipset for ATA-66 RAID Based.
490 HPT370 is an Ultra DMA chipset for ATA-100.
491 HPT372 is an Ultra DMA chipset for ATA-100.
492 HPT374 is an Ultra DMA chipset for ATA-100.
493
494 This driver adds up to 4 more EIDE devices sharing a single
495 interrupt.
496
497 The HPT366 chipset in its current form is bootable. One solution
498 for this problem are special LILO commands for redirecting the
499 reference to device 0x80. The other solution is to say Y to "Boot
500 off-board chipsets first support" (CONFIG_BLK_DEV_OFFBOARD) unless
501 your mother board has the chipset natively mounted. Regardless one
a594eeb1 502 should use the fore mentioned option and call at LILO.
1da177e4
LT
503
504 This driver requires dynamic tuning of the chipset during the
505 ide-probe at boot. It is reported to support DVD II drives, by the
506 manufacturer.
507
bbb3bbdb
AC
508config BLK_DEV_JMICRON
509 tristate "JMicron JMB36x support"
842c19ad 510 select BLK_DEV_IDEDMA_PCI
bbb3bbdb
AC
511 help
512 Basic support for the JMicron ATA controllers. For full support
513 use the libata drivers.
514
1da177e4
LT
515config BLK_DEV_SC1200
516 tristate "National SCx200 chipset support"
842c19ad 517 select BLK_DEV_IDEDMA_PCI
1da177e4 518 help
e665d505
FP
519 This driver adds support for the on-board IDE controller on the
520 National SCx200 series of embedded x86 "Geode" systems.
1da177e4
LT
521
522config BLK_DEV_PIIX
64afc31f 523 tristate "Intel PIIX/ICH chipsets support"
842c19ad 524 select BLK_DEV_IDEDMA_PCI
1da177e4 525 help
64afc31f
BZ
526 This driver adds explicit support for Intel PIIX and ICH chips.
527 This allows the kernel to change PIO, DMA and UDMA speeds and to
528 configure the chip to optimum performance.
1da177e4 529
9c6712c0
JL
530config BLK_DEV_IT8213
531 tristate "IT8213 IDE support"
842c19ad 532 select BLK_DEV_IDEDMA_PCI
9c6712c0
JL
533 help
534 This driver adds support for the ITE 8213 IDE controller.
535
da9091ee
AC
536config BLK_DEV_IT821X
537 tristate "IT821X IDE support"
842c19ad 538 select BLK_DEV_IDEDMA_PCI
da9091ee
AC
539 help
540 This driver adds support for the ITE 8211 IDE controller and the
541 IT 8212 IDE RAID controller in both RAID and pass-through mode.
542
1da177e4
LT
543config BLK_DEV_NS87415
544 tristate "NS87415 chipset support"
842c19ad 545 select BLK_DEV_IDEDMA_PCI
1da177e4
LT
546 help
547 This driver adds detection and support for the NS87415 chip
41df8940 548 (used mainly on SPARC64 and PA-RISC machines).
1da177e4
LT
549
550 Please read the comments at the top of <file:drivers/ide/pci/ns87415.c>.
551
552config BLK_DEV_PDC202XX_OLD
553 tristate "PROMISE PDC202{46|62|65|67} support"
842c19ad 554 select BLK_DEV_IDEDMA_PCI
1da177e4
LT
555 help
556 Promise Ultra33 or PDC20246
557 Promise Ultra66 or PDC20262
558 Promise Ultra100 or PDC20265/PDC20267/PDC20268
559
560 This driver adds up to 4 more EIDE devices sharing a single
561 interrupt. This add-on card is a bootable PCI UDMA controller. Since
562 multiple cards can be installed and there are BIOS ROM problems that
563 happen if the BIOS revisions of all installed cards (three-max) do
564 not match, the driver attempts to do dynamic tuning of the chipset
565 at boot-time for max-speed. Ultra33 BIOS 1.25 or newer is required
64afc31f 566 for more than one card.
1da177e4
LT
567
568 Please read the comments at the top of
569 <file:drivers/ide/pci/pdc202xx_old.c>.
570
571 If unsure, say N.
572
1da177e4
LT
573config BLK_DEV_PDC202XX_NEW
574 tristate "PROMISE PDC202{68|69|70|71|75|76|77} support"
842c19ad 575 select BLK_DEV_IDEDMA_PCI
1da177e4 576
1da177e4
LT
577config BLK_DEV_SVWKS
578 tristate "ServerWorks OSB4/CSB5/CSB6 chipsets support"
842c19ad 579 select BLK_DEV_IDEDMA_PCI
1da177e4
LT
580 help
581 This driver adds PIO/(U)DMA support for the ServerWorks OSB4/CSB5
582 chipsets.
583
584config BLK_DEV_SGIIOC4
e5d310b3
BC
585 tristate "Silicon Graphics IOC4 chipset ATA/ATAPI support"
586 depends on (IA64_SGI_SN2 || IA64_GENERIC) && SGI_IOC4
842c19ad 587 select BLK_DEV_IDEDMA_PCI
1da177e4
LT
588 help
589 This driver adds PIO & MultiMode DMA-2 support for the SGI IOC4
590 chipset, which has one channel and can support two devices.
591 Please say Y here if you have an Altix System from SGI.
592
593config BLK_DEV_SIIMAGE
594 tristate "Silicon Image chipset support"
842c19ad 595 select BLK_DEV_IDEDMA_PCI
1da177e4
LT
596 help
597 This driver adds PIO/(U)DMA support for the SI CMD680 and SII
598 3112 (Serial ATA) chips.
599
600config BLK_DEV_SIS5513
601 tristate "SiS5513 chipset support"
602 depends on X86
842c19ad
BZ
603 select BLK_DEV_IDEDMA_PCI
604 help
1da177e4
LT
605 This driver ensures (U)DMA support for SIS5513 chipset family based
606 mainboards.
607
608 The following chipsets are supported:
609 ATA16: SiS5511, SiS5513
610 ATA33: SiS5591, SiS5597, SiS5598, SiS5600
611 ATA66: SiS530, SiS540, SiS620, SiS630, SiS640
612 ATA100: SiS635, SiS645, SiS650, SiS730, SiS735, SiS740,
613 SiS745, SiS750
614
1da177e4
LT
615 Please read the comments at the top of <file:drivers/ide/pci/sis5513.c>.
616
9468f687
OH
617config BLK_DEV_SL82C105
618 tristate "Winbond SL82c105 support"
619 depends on (PPC || ARM)
3f847571 620 select IDE_TIMINGS
842c19ad 621 select BLK_DEV_IDEDMA_PCI
9468f687
OH
622 help
623 If you have a Winbond SL82c105 IDE controller, say Y here to enable
624 special configuration for this chip. This is common on various CHRP
625 motherboards, but could be used elsewhere. If in doubt, say Y.
626
1da177e4
LT
627config BLK_DEV_SLC90E66
628 tristate "SLC90E66 chipset support"
842c19ad 629 select BLK_DEV_IDEDMA_PCI
1da177e4 630 help
3b6ce249 631 This driver ensures (U)DMA support for Victory66 SouthBridges for
1da177e4
LT
632 SMsC with Intel NorthBridges. This is an Ultra66 based chipset.
633 The nice thing about it is that you can mix Ultra/DMA/PIO devices
634 and it will handle timing cycles. Since this is an improved
635 look-a-like to the PIIX4 it should be a nice addition.
636
1da177e4
LT
637 Please read the comments at the top of
638 <file:drivers/ide/pci/slc90e66.c>.
639
640config BLK_DEV_TRM290
641 tristate "Tekram TRM290 chipset support"
842c19ad 642 select BLK_DEV_IDEDMA_PCI
1da177e4
LT
643 help
644 This driver adds support for bus master DMA transfers
645 using the Tekram TRM290 PCI IDE chip. Volunteers are
646 needed for further tweaking and development.
647 Please read the comments at the top of <file:drivers/ide/pci/trm290.c>.
648
649config BLK_DEV_VIA82CXXX
650 tristate "VIA82CXXX chipset support"
f06ab340 651 select IDE_TIMINGS
842c19ad 652 select BLK_DEV_IDEDMA_PCI
1da177e4
LT
653 help
654 This driver adds explicit support for VIA BusMastering IDE chips.
655 This allows the kernel to change PIO, DMA and UDMA speeds and to
656 configure the chip to optimum performance.
657
33dced2e
SS
658config BLK_DEV_TC86C001
659 tristate "Toshiba TC86C001 support"
842c19ad 660 select BLK_DEV_IDEDMA_PCI
33dced2e
SS
661 help
662 This driver adds support for Toshiba TC86C001 GOKU-S chip.
663
a1067db8
KI
664config BLK_DEV_CELLEB
665 tristate "Toshiba's Cell Reference Set IDE support"
666 depends on PPC_CELLEB
842c19ad 667 select BLK_DEV_IDEDMA_PCI
a1067db8 668 help
e665d505 669 This driver provides support for the on-board IDE controller on
a1067db8
KI
670 Toshiba Cell Reference Board.
671 If unsure, say Y.
672
1da177e4
LT
673endif
674
53846574 675# TODO: BLK_DEV_IDEDMA_PCI -> BLK_DEV_IDEDMA_SFF
1da177e4 676config BLK_DEV_IDE_PMAC
e665d505 677 tristate "PowerMac on-board IDE support"
452a8ed8 678 depends on PPC_PMAC && IDE=y
f06ab340 679 select IDE_TIMINGS
53846574 680 select BLK_DEV_IDEDMA_PCI
1da177e4 681 help
e665d505 682 This driver provides support for the on-board IDE controller on
1da177e4
LT
683 most of the recent Apple Power Macintoshes and PowerBooks.
684 If unsure, say Y.
685
686config BLK_DEV_IDE_PMAC_ATA100FIRST
e665d505 687 bool "Probe on-board ATA/100 (Kauai) first"
1da177e4
LT
688 depends on BLK_DEV_IDE_PMAC
689 help
690 This option will cause the ATA/100 controller found in UniNorth2
691 based machines (Windtunnel PowerMac, Aluminium PowerBooks, ...)
692 to be probed before the ATA/66 and ATA/33 controllers. Without
693 these, those machine used to have the hard disk on hdc and the
694 CD-ROM on hda. This option changes this to more natural hda for
695 hard disk and hdc for CD-ROM.
696
26a940e2
PP
697config BLK_DEV_IDE_AU1XXX
698 bool "IDE for AMD Alchemy Au1200"
699 depends on SOC_AU1200
700choice
701 prompt "IDE Mode for AMD Alchemy Au1200"
702 default CONFIG_BLK_DEV_IDE_AU1XXX_PIO_DBDMA
703 depends on SOC_AU1200 && BLK_DEV_IDE_AU1XXX
704
705config BLK_DEV_IDE_AU1XXX_PIO_DBDMA
706 bool "PIO+DbDMA IDE for AMD Alchemy Au1200"
707
708config BLK_DEV_IDE_AU1XXX_MDMA2_DBDMA
709 bool "MDMA2+DbDMA IDE for AMD Alchemy Au1200"
710 depends on SOC_AU1200 && BLK_DEV_IDE_AU1XXX
711endchoice
712
26a940e2
PP
713config BLK_DEV_IDE_AU1XXX_SEQTS_PER_RQ
714 int "Maximum transfer size (KB) per request (up to 128)"
715 default "128"
bef1f402 716 depends on BLK_DEV_IDE_AU1XXX
26a940e2 717
28502848
AN
718config BLK_DEV_IDE_TX4938
719 tristate "TX4938 internal IDE support"
720 depends on SOC_TX4938
721 select IDE_TIMINGS
722
37897989
AN
723config BLK_DEV_IDE_TX4939
724 tristate "TX4939 internal IDE support"
725 depends on SOC_TX4939
726 select BLK_DEV_IDEDMA_SFF
727
1da177e4 728config IDE_ARM
ade2daf9 729 tristate "ARM IDE support"
635f0258 730 depends on ARM && (ARCH_RPC || ARCH_SHARK)
ade2daf9 731 default y
1da177e4
LT
732
733config BLK_DEV_IDE_ICSIDE
734 tristate "ICS IDE interface support"
735 depends on ARM && ARCH_ACORN
736 help
737 On Acorn systems, say Y here if you wish to use the ICS IDE
738 interface card. This is not required for ICS partition support.
739 If you are unsure, say N to this.
740
741config BLK_DEV_IDEDMA_ICS
742 bool "ICS DMA support"
743 depends on BLK_DEV_IDE_ICSIDE
744 help
745 Say Y here if you want to add DMA (Direct Memory Access) support to
746 the ICS IDE driver.
747
1da177e4
LT
748config BLK_DEV_IDE_RAPIDE
749 tristate "RapIDE interface support"
750 depends on ARM && ARCH_ACORN
751 help
752 Say Y here if you want to support the Yellowstone RapIDE controller
753 manufactured for use with Acorn computers.
754
acfad6e1 755config IDE_H8300
ade2daf9 756 tristate "H8300 IDE support"
acfad6e1 757 depends on H8300
acfad6e1
BZ
758 default y
759 help
760 Enables the H8300 IDE driver.
761
1da177e4 762config BLK_DEV_GAYLE
ade2daf9 763 tristate "Amiga Gayle IDE interface support"
1da177e4
LT
764 depends on AMIGA
765 help
766 This is the IDE driver for the Amiga Gayle IDE interface. It supports
767 both the `A1200 style' and `A4000 style' of the Gayle IDE interface,
e665d505 768 This includes on-board IDE interfaces on some Amiga models (A600,
1da177e4
LT
769 A1200, A4000, and A4000T), and IDE interfaces on the Zorro expansion
770 bus (M-Tech E-Matrix 530 expansion card).
771 Say Y if you have an Amiga with a Gayle IDE interface and want to use
772 IDE devices (hard disks, CD-ROM drives, etc.) that are connected to
773 it.
774 Note that you also have to enable Zorro bus support if you want to
775 use Gayle IDE interfaces on the Zorro expansion bus.
776
777config BLK_DEV_IDEDOUBLER
778 bool "Amiga IDE Doubler support (EXPERIMENTAL)"
779 depends on BLK_DEV_GAYLE && EXPERIMENTAL
780 ---help---
64afc31f 781 This feature provides support for the so-called `IDE doublers' (made
e665d505
FP
782 by various manufacturers, e.g. Eyetech) that can be connected to
783 the on-board IDE interface of some Amiga models. Using such an IDE
784 doubler, you can connect up to four instead of two IDE devices to
785 the Amiga's on-board IDE interface.
1da177e4
LT
786
787 Note that the normal Amiga Gayle IDE driver may not work correctly
64afc31f 788 if you have an IDE doubler and don't enable this feature!
1da177e4 789
64afc31f
BZ
790 Say Y if you have an IDE doubler. The feature is enabled at kernel
791 runtime using the "gayle.doubler" kernel boot parameter.
1da177e4
LT
792
793config BLK_DEV_BUDDHA
ade2daf9 794 tristate "Buddha/Catweasel/X-Surf IDE interface support (EXPERIMENTAL)"
1da177e4
LT
795 depends on ZORRO && EXPERIMENTAL
796 help
e665d505
FP
797 This is the IDE driver for the IDE interfaces on the Buddha, Catweasel
798 and X-Surf expansion boards. It supports up to two interfaces on the
799 Buddha, three on the Catweasel and two on the X-Surf.
1da177e4
LT
800
801 Say Y if you have a Buddha or Catweasel expansion board and want to
802 use IDE devices (hard disks, CD-ROM drives, etc.) that are connected
803 to one of its IDE interfaces.
804
805config BLK_DEV_FALCON_IDE
ade2daf9 806 tristate "Falcon IDE interface support"
1da177e4
LT
807 depends on ATARI
808 help
e665d505 809 This is the IDE driver for the on-board IDE interface on the Atari
1da177e4 810 Falcon. Say Y if you have a Falcon and want to use IDE devices (hard
e665d505 811 disks, CD-ROM drives, etc.) that are connected to the on-board IDE
1da177e4
LT
812 interface.
813
814config BLK_DEV_MAC_IDE
ade2daf9 815 tristate "Macintosh Quadra/Powerbook IDE interface support"
1da177e4
LT
816 depends on MAC
817 help
e665d505 818 This is the IDE driver for the on-board IDE interface on some m68k
1da177e4
LT
819 Macintosh models. It supports both the `Quadra style' (used in
820 Quadra/ Centris 630 and Performa 588 models) and `Powerbook style'
821 (used in the Powerbook 150 and 190 models) IDE interface.
822
823 Say Y if you have such an Macintosh model and want to use IDE
824 devices (hard disks, CD-ROM drives, etc.) that are connected to the
e665d505 825 on-board IDE interface.
1da177e4
LT
826
827config BLK_DEV_Q40IDE
ade2daf9 828 tristate "Q40/Q60 IDE interface support"
1da177e4
LT
829 depends on Q40
830 help
831 Enable the on-board IDE controller in the Q40/Q60. This should
832 normally be on; disable it only if you are running a custom hard
833 drive subsystem through an expansion card.
834
7c7e92a9
AS
835config BLK_DEV_PALMCHIP_BK3710
836 tristate "Palmchip bk3710 IDE controller support"
837 depends on ARCH_DAVINCI
f06ab340 838 select IDE_TIMINGS
8e882ba1 839 select BLK_DEV_IDEDMA_SFF
7c7e92a9
AS
840 help
841 Say Y here if you want to support the onchip IDE controller on the
842 TI DaVinci SoC
843
1da177e4 844# no isa -> no vlb
e4079df0 845if ISA && (ALPHA || X86 || MIPS)
1da177e4 846
842c19ad 847comment "Other IDE chipsets support"
1da177e4
LT
848comment "Note: most of these also require special kernel boot parameters"
849
850config BLK_DEV_4DRIVES
938da770 851 tristate "Generic 4 drives/port support"
1da177e4
LT
852 help
853 Certain older chipsets, including the Tekram 690CD, use a single set
854 of I/O ports at 0x1f0 to control up to four drives, instead of the
855 customary two drives per port. Support for this can be enabled at
ffd4f6f0
BZ
856 runtime using the "ide-4drives.probe" kernel boot parameter if you
857 say Y here.
1da177e4
LT
858
859config BLK_DEV_ALI14XX
860 tristate "ALI M14xx support"
cc57ccc0 861 select IDE_TIMINGS
7f92b11c 862 select IDE_LEGACY
1da177e4 863 help
84913882 864 This driver is enabled at runtime using the "ali14xx.probe" kernel
1da177e4
LT
865 boot parameter. It enables support for the secondary IDE interface
866 of the ALI M1439/1443/1445/1487/1489 chipsets, and permits faster
1c10e938
RD
867 I/O speeds to be set as well.
868 See the files <file:Documentation/ide/ide.txt> and
869 <file:drivers/ide/legacy/ali14xx.c> for more info.
1da177e4
LT
870
871config BLK_DEV_DTC2278
872 tristate "DTC-2278 support"
7f92b11c 873 select IDE_LEGACY
1da177e4 874 help
84913882 875 This driver is enabled at runtime using the "dtc2278.probe" kernel
1da177e4
LT
876 boot parameter. It enables support for the secondary IDE interface
877 of the DTC-2278 card, and permits faster I/O speeds to be set as
1c10e938 878 well. See the <file:Documentation/ide/ide.txt> and
1da177e4
LT
879 <file:drivers/ide/legacy/dtc2278.c> files for more info.
880
881config BLK_DEV_HT6560B
882 tristate "Holtek HT6560B support"
b32b76f7 883 select IDE_TIMINGS
7f92b11c 884 select IDE_LEGACY
1da177e4 885 help
84913882 886 This driver is enabled at runtime using the "ht6560b.probe" kernel
1da177e4
LT
887 boot parameter. It enables support for the secondary IDE interface
888 of the Holtek card, and permits faster I/O speeds to be set as well.
1c10e938 889 See the <file:Documentation/ide/ide.txt> and
1da177e4
LT
890 <file:drivers/ide/legacy/ht6560b.c> files for more info.
891
892config BLK_DEV_QD65XX
893 tristate "QDI QD65xx support"
2feecfac 894 select IDE_TIMINGS
7f92b11c 895 select IDE_LEGACY
1da177e4 896 help
84913882 897 This driver is enabled at runtime using the "qd65xx.probe" kernel
1da177e4 898 boot parameter. It permits faster I/O speeds to be set. See the
1c10e938 899 <file:Documentation/ide/ide.txt> and <file:drivers/ide/legacy/qd65xx.c>
e665d505 900 for more info.
1da177e4
LT
901
902config BLK_DEV_UMC8672
903 tristate "UMC-8672 support"
7f92b11c 904 select IDE_LEGACY
1da177e4 905 help
84913882 906 This driver is enabled at runtime using the "umc8672.probe" kernel
1da177e4
LT
907 boot parameter. It enables support for the secondary IDE interface
908 of the UMC-8672, and permits faster I/O speeds to be set as well.
1c10e938 909 See the files <file:Documentation/ide/ide.txt> and
1da177e4
LT
910 <file:drivers/ide/legacy/umc8672.c> for more info.
911
912endif
913
914config BLK_DEV_IDEDMA
53846574 915 def_bool BLK_DEV_IDEDMA_SFF || \
8e882ba1 916 BLK_DEV_IDEDMA_ICS || BLK_DEV_IDE_AU1XXX_MDMA2_DBDMA
1da177e4 917
e0ff9cd1 918endif # IDE