blob: 86db707ad6cc86abe7b42a461a50f63b589485f9 [file] [log] [blame]
Linus Torvalds1da177e2005-04-16 15:20:36 -07001#
2# IDE ATA ATAPI Block device driver configuration
3#
Linus Torvalds1da177e2005-04-16 15:20:36 -07004
Sam Ravnborgec7748b2008-02-09 10:46:40 +01005# Select HAVE_IDE if IDE is supported
6config HAVE_IDE
7 def_bool n
8
Jan Engelhardte0ff9cd2007-05-16 00:51:46 +02009menuconfig IDE
Linus Torvalds1da177e2005-04-16 15:20:36 -070010 tristate "ATA/ATAPI/MFM/RLL support"
Sam Ravnborgec7748b2008-02-09 10:46:40 +010011 depends on HAVE_IDE
Jan Engelhardte0ff9cd2007-05-16 00:51:46 +020012 depends on BLOCK
Linus Torvalds1da177e2005-04-16 15:20:36 -070013 ---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
Randy Dunlap1c10e932008-03-07 21:53:50 +010051 For further information, please read <file:Documentation/ide/ide.txt>.
Linus Torvalds1da177e2005-04-16 15:20:36 -070052
53 If unsure, say Y.
54
55if IDE
56
Bjorn Helgaasd57d39c2006-02-03 03:04:53 -080057config IDE_MAX_HWIFS
Linus Torvalds1da177e2005-04-16 15:20:36 -070058 int "Max IDE interfaces"
Matt Mackall83d7dbc2006-10-03 01:14:16 -070059 depends on ALPHA || SUPERH || IA64 || EMBEDDED
Bartlomiej Zolnierkiewicz8929fea2007-04-20 22:16:58 +020060 range 1 10
Linus Torvalds1da177e2005-04-16 15:20:36 -070061 default 4
62 help
63 This is the maximum number of IDE hardware interfaces that will
64 be supported by the driver. Make sure it is at least as high as
65 the number of IDE interfaces in your system.
66
67config BLK_DEV_IDE
68 tristate "Enhanced IDE/MFM/RLL disk/cdrom/tape/floppy support"
69 ---help---
70 If you say Y here, you will use the full-featured IDE driver to
71 control up to ten ATA/IDE interfaces, each being able to serve a
72 "master" and a "slave" device, for a total of up to twenty ATA/IDE
73 disk/cdrom/tape/floppy drives.
74
75 Useful information about large (>540 MB) IDE disks, multiple
76 interfaces, what to do if ATA/IDE devices are not automatically
77 detected, sound card ATA/IDE ports, module support, and other
Randy Dunlap1c10e932008-03-07 21:53:50 +010078 topics, is contained in <file:Documentation/ide/ide.txt>. For detailed
Linus Torvalds1da177e2005-04-16 15:20:36 -070079 information about hard drives, consult the Disk-HOWTO and the
80 Multi-Disk-HOWTO, available from
81 <http://www.tldp.org/docs.html#howto>.
82
83 To fine-tune ATA/IDE drive/interface parameters for improved
84 performance, look for the hdparm package at
85 <ftp://ibiblio.org/pub/Linux/system/hardware/>.
86
87 To compile this driver as a module, choose M here and read
Randy Dunlap1c10e932008-03-07 21:53:50 +010088 <file:Documentation/ide/ide.txt>. The module will be called ide-mod.
Linus Torvalds1da177e2005-04-16 15:20:36 -070089 Do not compile this driver as a module if your root file system (the
90 one containing the directory /) is located on an IDE device.
91
92 If you have one or more IDE drives, say Y or M here. If your system
93 has no IDE drives, or if memory requirements are really tight, you
94 could say N here, and select the "Old hard disk driver" below
95 instead to save about 13 KB of memory in the kernel.
96
97if BLK_DEV_IDE
98
Randy Dunlap1c10e932008-03-07 21:53:50 +010099comment "Please see Documentation/ide/ide.txt for help/info on IDE drives"
Linus Torvalds1da177e2005-04-16 15:20:36 -0700100
Bartlomiej Zolnierkiewiczf06ab342008-07-16 20:33:37 +0200101config IDE_TIMINGS
102 bool
103
Bartlomiej Zolnierkiewicz594c16d2008-07-15 21:21:58 +0200104config IDE_ATAPI
105 bool
106
Linus Torvalds1da177e2005-04-16 15:20:36 -0700107config BLK_DEV_IDE_SATA
108 bool "Support for SATA (deprecated; conflicts with libata SATA driver)"
109 default n
110 ---help---
111 There are two drivers for Serial ATA controllers.
112
Patrick Ringlb43c5f32007-03-26 23:03:19 +0200113 The main driver, "libata", uses the SCSI subsystem
114 and supports most modern SATA controllers. In order to use it
115 you may take a look at "Serial ATA (prod) and Parallel ATA
116 (experimental) drivers".
Linus Torvalds1da177e2005-04-16 15:20:36 -0700117
118 The IDE driver (which you are currently configuring) supports
119 a few first-generation SATA controllers.
120
121 In order to eliminate conflicts between the two subsystems,
122 this config option enables the IDE driver's SATA support.
123 Normally this is disabled, as it is preferred that libata
124 supports SATA controllers, and this (IDE) driver supports
125 PATA controllers.
126
127 If unsure, say N.
128
Linus Torvalds1da177e2005-04-16 15:20:36 -0700129config BLK_DEV_IDEDISK
130 tristate "Include IDE/ATA-2 DISK support"
131 ---help---
132 This will include enhanced support for MFM/RLL/IDE hard disks. If
133 you have a MFM/RLL/IDE disk, and there is no special reason to use
134 the old hard disk driver instead, say Y. If you have an SCSI-only
135 system, you can say N here.
136
137 To compile this driver as a module, choose M here: the
138 module will be called ide-disk.
139 Do not compile this driver as a module if your root file system
140 (the one containing the directory /) is located on the IDE disk.
141
142 If unsure, say Y.
143
144config IDEDISK_MULTI_MODE
Matti Linnanvuori127ba282007-11-05 21:42:26 +0100145 bool "Use multiple sector mode for Programmed Input/Output by default"
Linus Torvalds1da177e2005-04-16 15:20:36 -0700146 help
Matti Linnanvuori127ba282007-11-05 21:42:26 +0100147 This setting is irrelevant for most IDE disks, with direct memory
148 access, to which multiple sector mode does not apply. Multiple sector
149 mode is a feature of most modern IDE hard drives, permitting the
150 transfer of multiple sectors per Programmed Input/Output interrupt,
151 rather than the usual one sector per interrupt. When this feature is
152 enabled, it can reduce operating system overhead for disk Programmed
153 Input/Output. On some systems, it also can increase the data
154 throughput of Programmed Input/Output. Some drives, however, seemed
155 to run slower with multiple sector mode enabled. Some drives claimed
156 to support multiple sector mode, but lost data at some settings.
157 Under rare circumstances, such failures could result in massive
158 filesystem corruption.
159
160 If you get the following error, try to say Y here:
Linus Torvalds1da177e2005-04-16 15:20:36 -0700161
162 hda: set_multmode: status=0x51 { DriveReady SeekComplete Error }
163 hda: set_multmode: error=0x04 { DriveStatusError }
164
165 If in doubt, say N.
166
167config BLK_DEV_IDECS
168 tristate "PCMCIA IDE support"
169 depends on PCMCIA
170 help
Andreas Mohr3b6ce242006-02-03 03:04:54 -0800171 Support for Compact Flash cards, outboard IDE disks, tape drives,
172 and CD-ROM drives connected through a PCMCIA card.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700173
Mark Lord78281c52007-02-07 18:19:32 +0100174config BLK_DEV_DELKIN
175 tristate "Cardbus IDE support (Delkin/ASKA/Workbit)"
176 depends on CARDBUS && PCI
177 help
178 Support for Delkin, ASKA, and Workbit Cardbus CompactFlash
179 Adapters. This may also work for similar SD and XD adapters.
180
Linus Torvalds1da177e2005-04-16 15:20:36 -0700181config BLK_DEV_IDECD
182 tristate "Include IDE/ATAPI CDROM support"
183 ---help---
184 If you have a CD-ROM drive using the ATAPI protocol, say Y. ATAPI is
185 a newer protocol used by IDE CD-ROM and TAPE drives, similar to the
186 SCSI protocol. Most new CD-ROM drives use ATAPI, including the
187 NEC-260, Mitsumi FX400, Sony 55E, and just about all non-SCSI
188 double(2X) or better speed drives.
189
190 If you say Y here, the CD-ROM drive will be identified at boot time
191 along with other IDE devices, as "hdb" or "hdc", or something
192 similar (check the boot messages with dmesg). If this is your only
193 CD-ROM drive, you can say N to all other CD-ROM options, but be sure
194 to say Y or M to "ISO 9660 CD-ROM file system support".
195
Linus Torvalds1da177e2005-04-16 15:20:36 -0700196 To compile this driver as a module, choose M here: the
197 module will be called ide-cd.
198
Bartlomiej Zolnierkiewicz972560f2008-02-01 23:09:23 +0100199config BLK_DEV_IDECD_VERBOSE_ERRORS
200 bool "Verbose error logging for IDE/ATAPI CDROM driver" if EMBEDDED
201 depends on BLK_DEV_IDECD
202 default y
203 help
204 Turn this on to have the driver print out the meanings of the
205 ATAPI error codes. This will use up additional 8kB of kernel-space
206 memory, though.
207
Linus Torvalds1da177e2005-04-16 15:20:36 -0700208config BLK_DEV_IDETAPE
Borislav Petkov4278c2d2008-02-02 19:56:50 +0100209 tristate "Include IDE/ATAPI TAPE support"
Bartlomiej Zolnierkiewicz594c16d2008-07-15 21:21:58 +0200210 select IDE_ATAPI
Linus Torvalds1da177e2005-04-16 15:20:36 -0700211 help
212 If you have an IDE tape drive using the ATAPI protocol, say Y.
213 ATAPI is a newer protocol used by IDE tape and CD-ROM drives,
214 similar to the SCSI protocol. If you have an SCSI tape drive
215 however, you can say N here.
216
217 You should also say Y if you have an OnStream DI-30 tape drive; this
218 will not work with the SCSI protocol, until there is support for the
219 SC-30 and SC-50 versions.
220
221 If you say Y here, the tape drive will be identified at boot time
222 along with other IDE devices, as "hdb" or "hdc", or something
223 similar, and will be mapped to a character device such as "ht0"
224 (check the boot messages with dmesg). Be sure to consult the
Randy Dunlap1c10e932008-03-07 21:53:50 +0100225 <file:drivers/ide/ide-tape.c> and <file:Documentation/ide/ide.txt>
226 files for usage information.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700227
228 To compile this driver as a module, choose M here: the
229 module will be called ide-tape.
230
231config BLK_DEV_IDEFLOPPY
232 tristate "Include IDE/ATAPI FLOPPY support"
Bartlomiej Zolnierkiewicz594c16d2008-07-15 21:21:58 +0200233 select IDE_ATAPI
Linus Torvalds1da177e2005-04-16 15:20:36 -0700234 ---help---
235 If you have an IDE floppy drive which uses the ATAPI protocol,
236 answer Y. ATAPI is a newer protocol used by IDE CD-ROM/tape/floppy
237 drives, similar to the SCSI protocol.
238
239 The LS-120 and the IDE/ATAPI Iomega ZIP drive are also supported by
240 this driver. For information about jumper settings and the question
241 of when a ZIP drive uses a partition table, see
242 <http://www.win.tue.nl/~aeb/linux/zip/zip-1.html>.
243 (ATAPI PD-CD/CDR drives are not supported by this driver; support
244 for PD-CD/CDR drives is available if you answer Y to
245 "SCSI emulation support", below).
246
247 If you say Y here, the FLOPPY drive will be identified along with
248 other IDE devices, as "hdb" or "hdc", or something similar (check
249 the boot messages with dmesg).
250
251 To compile this driver as a module, choose M here: the
252 module will be called ide-floppy.
253
254config BLK_DEV_IDESCSI
255 tristate "SCSI emulation support"
256 depends on SCSI
Bartlomiej Zolnierkiewicz594c16d2008-07-15 21:21:58 +0200257 select IDE_ATAPI
Linus Torvalds1da177e2005-04-16 15:20:36 -0700258 ---help---
259 WARNING: ide-scsi is no longer needed for cd writing applications!
260 The 2.6 kernel supports direct writing to ide-cd, which eliminates
261 the need for ide-scsi + the entire scsi stack just for writing a
262 cd. The new method is more efficient in every way.
263
264 This will provide SCSI host adapter emulation for IDE ATAPI devices,
265 and will allow you to use a SCSI device driver instead of a native
266 ATAPI driver.
267
268 This is useful if you have an ATAPI device for which no native
269 driver has been written (for example, an ATAPI PD-CD drive);
270 you can then use this emulation together with an appropriate SCSI
271 device driver. In order to do this, say Y here and to "SCSI support"
272 and "SCSI generic support", below. You must then provide the kernel
273 command line "hdx=ide-scsi" (try "man bootparam" or see the
274 documentation of your boot loader (lilo or loadlin) about how to
275 pass options to the kernel at boot time) for devices if you want the
276 native EIDE sub-drivers to skip over the native support, so that
277 this SCSI emulation can be used instead.
278
279 Note that this option does NOT allow you to attach SCSI devices to a
280 box that doesn't have a SCSI host adapter installed.
281
282 If both this SCSI emulation and native ATAPI support are compiled
283 into the kernel, the native support will be used.
284
Hannes Reineckee3a59b42007-02-07 18:19:37 +0100285config BLK_DEV_IDEACPI
286 bool "IDE ACPI support"
287 depends on ACPI
288 ---help---
289 Implement ACPI support for generic IDE devices. On modern
290 machines ACPI support is required to properly handle ACPI S3 states.
291
Linus Torvalds1da177e2005-04-16 15:20:36 -0700292config IDE_TASK_IOCTL
293 bool "IDE Taskfile Access"
294 help
295 This is a direct raw access to the media. It is a complex but
296 elegant solution to test and validate the domain of the hardware and
Andreas Mohr3b6ce242006-02-03 03:04:54 -0800297 perform below the driver data recovery if needed. This is the most
Linus Torvalds1da177e2005-04-16 15:20:36 -0700298 basic form of media-forensics.
299
300 If you are unsure, say N here.
301
Bartlomiej Zolnierkiewiczecfd80e2007-05-10 00:01:09 +0200302config IDE_PROC_FS
303 bool "legacy /proc/ide/ support"
304 depends on IDE && PROC_FS
305 default y
306 help
307 This option enables support for the various files in
308 /proc/ide. In Linux 2.6 this has been superseded by
309 files in sysfs but many legacy applications rely on this.
310
311 If unsure say Y.
312
Linus Torvalds1da177e2005-04-16 15:20:36 -0700313comment "IDE chipset support/bugfixes"
314
315config IDE_GENERIC
316 tristate "generic/default IDE chipset support"
Bartlomiej Zolnierkiewicz486c92e2008-04-18 00:46:35 +0200317 depends on ALPHA || X86 || IA64 || M32R || MIPS || PPC32
Linus Torvalds1da177e2005-04-16 15:20:36 -0700318 help
Tejun Heo82a0e702007-08-20 22:42:53 +0200319 If unsure, say N.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700320
Anton Vorontsov8cb1f562007-10-11 23:53:58 +0200321config BLK_DEV_PLATFORM
322 tristate "Platform driver for IDE interfaces"
323 help
324 This is the platform IDE driver, used mostly for Memory Mapped
325 IDE devices, like Compact Flashes running in True IDE mode.
326
327 If unsure, say N.
328
Linus Torvalds1da177e2005-04-16 15:20:36 -0700329config BLK_DEV_CMD640
Bartlomiej Zolnierkiewiczade2daf2008-01-26 20:13:07 +0100330 tristate "CMD640 chipset bugfix/support"
Linus Torvalds1da177e2005-04-16 15:20:36 -0700331 depends on X86
332 ---help---
333 The CMD-Technologies CMD640 IDE chip is used on many common 486 and
334 Pentium motherboards, usually in combination with a "Neptune" or
335 "SiS" chipset. Unfortunately, it has a number of rather nasty
336 design flaws that can cause severe data corruption under many common
337 conditions. Say Y here to include code which tries to automatically
338 detect and correct the problems under Linux. This option also
339 enables access to the secondary IDE ports in some CMD640 based
340 systems.
341
342 This driver will work automatically in PCI based systems (most new
343 systems have PCI slots). But if your system uses VESA local bus
344 (VLB) instead of PCI, you must also supply a kernel boot parameter
Bartlomiej Zolnierkiewicz64afc312008-05-14 23:06:16 +0200345 to enable the CMD640 bugfix/support: "cmd640.probe_vlb". (Try "man
Linus Torvalds1da177e2005-04-16 15:20:36 -0700346 bootparam" or see the documentation of your boot loader about how to
347 pass options to the kernel.)
348
349 The CMD640 chip is also used on add-in cards by Acculogic, and on
350 the "CSA-6400E PCI to IDE controller" that some people have. For
Randy Dunlap1c10e932008-03-07 21:53:50 +0100351 details, read <file:Documentation/ide/ide.txt>.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700352
353config BLK_DEV_CMD640_ENHANCED
354 bool "CMD640 enhanced support"
355 depends on BLK_DEV_CMD640
356 help
357 This option includes support for setting/autotuning PIO modes and
358 prefetch on CMD640 IDE interfaces. For details, read
Randy Dunlap1c10e932008-03-07 21:53:50 +0100359 <file:Documentation/ide/ide.txt>. If you have a CMD640 IDE interface
Linus Torvalds1da177e2005-04-16 15:20:36 -0700360 and your BIOS does not already do this for you, then say Y here.
361 Otherwise say N.
362
363config BLK_DEV_IDEPNP
Bartlomiej Zolnierkiewiczade2daf2008-01-26 20:13:07 +0100364 tristate "PNP EIDE support"
Linus Torvalds1da177e2005-04-16 15:20:36 -0700365 depends on PNP
366 help
367 If you have a PnP (Plug and Play) compatible EIDE card and
368 would like the kernel to automatically detect and activate
369 it, say Y here.
370
Sergei Shtylyov8e882ba2008-02-11 00:32:14 +0100371config BLK_DEV_IDEDMA_SFF
372 bool
373
Bartlomiej Zolnierkiewicz842c19a2007-10-11 23:54:00 +0200374if PCI
375
376comment "PCI IDE chipsets support"
377
Linus Torvalds1da177e2005-04-16 15:20:36 -0700378config BLK_DEV_IDEPCI
Bartlomiej Zolnierkiewicz842c19a2007-10-11 23:54:00 +0200379 bool
Linus Torvalds1da177e2005-04-16 15:20:36 -0700380
Bartlomiej Zolnierkiewicz6d208b32007-05-10 00:01:11 +0200381config IDEPCI_PCIBUS_ORDER
Bartlomiej Zolnierkiewiczce71ed92008-01-26 20:13:09 +0100382 bool "Probe IDE PCI devices in the PCI bus order (DEPRECATED)"
383 depends on BLK_DEV_IDE=y && BLK_DEV_IDEPCI
384 default y
385 help
386 Probe IDE PCI devices in the order in which they appear on the
387 PCI bus (i.e. 00:1f.1 PCI device before 02:01.0 PCI device)
388 instead of the order in which IDE PCI host drivers are loaded.
389
390 Please note that this method of assuring stable naming of
391 IDE devices is unreliable and use other means for achieving
392 it (i.e. udev).
393
394 If in doubt, say N.
Bartlomiej Zolnierkiewicz6d208b32007-05-10 00:01:11 +0200395
Bartlomiej Zolnierkiewiczf7d7f3f2007-11-05 21:42:26 +0100396# TODO: split it on per host driver config options (or module parameters)
Linus Torvalds1da177e2005-04-16 15:20:36 -0700397config BLK_DEV_OFFBOARD
Bartlomiej Zolnierkiewicz46255d42007-12-12 23:31:57 +0100398 bool "Boot off-board chipsets first support (DEPRECATED)"
Bartlomiej Zolnierkiewiczf7d7f3f2007-11-05 21:42:26 +0100399 depends on BLK_DEV_IDEPCI && (BLK_DEV_AEC62XX || BLK_DEV_GENERIC || BLK_DEV_HPT34X || BLK_DEV_HPT366 || BLK_DEV_PDC202XX_NEW || BLK_DEV_PDC202XX_OLD || BLK_DEV_TC86C001)
Linus Torvalds1da177e2005-04-16 15:20:36 -0700400 help
401 Normally, IDE controllers built into the motherboard (on-board
402 controllers) are assigned to ide0 and ide1 while those on add-in PCI
403 cards (off-board controllers) are relegated to ide2 and ide3.
404 Answering Y here will allow you to reverse the situation, with
405 off-board controllers on ide0/1 and on-board controllers on ide2/3.
406 This can improve the usability of some boot managers such as lilo
407 when booting from a drive on an off-board controller.
408
Linus Torvalds1da177e2005-04-16 15:20:36 -0700409 Note that, if you do this, the order of the hd* devices will be
410 rearranged which may require modification of fstab and other files.
411
Bartlomiej Zolnierkiewicz46255d42007-12-12 23:31:57 +0100412 Please also note that this method of assuring stable naming of
413 IDE devices is unreliable and use other means for achieving it
414 (i.e. udev).
415
Linus Torvalds1da177e2005-04-16 15:20:36 -0700416 If in doubt, say N.
417
418config BLK_DEV_GENERIC
419 tristate "Generic PCI IDE Chipset Support"
Bartlomiej Zolnierkiewicz842c19a2007-10-11 23:54:00 +0200420 select BLK_DEV_IDEPCI
John Daikeredd023d2007-02-17 19:52:10 +0100421 help
422 This option provides generic support for various PCI IDE Chipsets
423 which otherwise might not be supported.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700424
425config BLK_DEV_OPTI621
426 tristate "OPTi 82C621 chipset enhanced support (EXPERIMENTAL)"
Bartlomiej Zolnierkiewicz842c19a2007-10-11 23:54:00 +0200427 depends on EXPERIMENTAL
428 select BLK_DEV_IDEPCI
Linus Torvalds1da177e2005-04-16 15:20:36 -0700429 help
430 This is a driver for the OPTi 82C621 EIDE controller.
431 Please read the comments at the top of <file:drivers/ide/pci/opti621.c>.
432
433config BLK_DEV_RZ1000
434 tristate "RZ1000 chipset bugfix/support"
Bartlomiej Zolnierkiewicz842c19a2007-10-11 23:54:00 +0200435 depends on X86
436 select BLK_DEV_IDEPCI
Linus Torvalds1da177e2005-04-16 15:20:36 -0700437 help
438 The PC-Technologies RZ1000 IDE chip is used on many common 486 and
439 Pentium motherboards, usually along with the "Neptune" chipset.
440 Unfortunately, it has a rather nasty design flaw that can cause
441 severe data corruption under many conditions. Say Y here to include
442 code which automatically detects and corrects the problem under
443 Linux. This may slow disk throughput by a few percent, but at least
444 things will operate 100% reliably.
445
Linus Torvalds1da177e2005-04-16 15:20:36 -0700446config BLK_DEV_IDEDMA_PCI
Bartlomiej Zolnierkiewicz842c19a2007-10-11 23:54:00 +0200447 bool
448 select BLK_DEV_IDEPCI
Sergei Shtylyov8e882ba2008-02-11 00:32:14 +0100449 select BLK_DEV_IDEDMA_SFF
Linus Torvalds1da177e2005-04-16 15:20:36 -0700450
Linus Torvalds1da177e2005-04-16 15:20:36 -0700451config BLK_DEV_AEC62XX
452 tristate "AEC62XX chipset support"
Bartlomiej Zolnierkiewicz842c19a2007-10-11 23:54:00 +0200453 select BLK_DEV_IDEDMA_PCI
Linus Torvalds1da177e2005-04-16 15:20:36 -0700454 help
455 This driver adds explicit support for Acard AEC62xx (Artop ATP8xx)
456 IDE controllers. This allows the kernel to change PIO, DMA and UDMA
457 speeds and to configure the chip to optimum performance.
458
459config BLK_DEV_ALI15X3
460 tristate "ALI M15x3 chipset support"
Bartlomiej Zolnierkiewicz842c19a2007-10-11 23:54:00 +0200461 select BLK_DEV_IDEDMA_PCI
Linus Torvalds1da177e2005-04-16 15:20:36 -0700462 help
463 This driver ensures (U)DMA support for ALI 1533, 1543 and 1543C
464 onboard chipsets. It also tests for Simplex mode and enables
465 normal dual channel support.
466
Bartlomiej Zolnierkiewicz64afc312008-05-14 23:06:16 +0200467 Please read the comments at the top of
Linus Torvalds1da177e2005-04-16 15:20:36 -0700468 <file:drivers/ide/pci/alim15x3.c>.
469
470 If unsure, say N.
471
Linus Torvalds1da177e2005-04-16 15:20:36 -0700472config BLK_DEV_AMD74XX
473 tristate "AMD and nVidia IDE support"
Andrew Morton91302012007-11-27 21:35:56 +0100474 depends on !ARM
Bartlomiej Zolnierkiewiczf06ab342008-07-16 20:33:37 +0200475 select IDE_TIMINGS
Bartlomiej Zolnierkiewicz842c19a2007-10-11 23:54:00 +0200476 select BLK_DEV_IDEDMA_PCI
Linus Torvalds1da177e2005-04-16 15:20:36 -0700477 help
478 This driver adds explicit support for AMD-7xx and AMD-8111 chips
479 and also for the nVidia nForce chip. This allows the kernel to
480 change PIO, DMA and UDMA speeds and to configure the chip to
481 optimum performance.
482
483config BLK_DEV_ATIIXP
484 tristate "ATI IXP chipset IDE support"
485 depends on X86
Bartlomiej Zolnierkiewicz842c19a2007-10-11 23:54:00 +0200486 select BLK_DEV_IDEDMA_PCI
Linus Torvalds1da177e2005-04-16 15:20:36 -0700487 help
488 This driver adds explicit support for ATI IXP chipset.
489 This allows the kernel to change PIO, DMA and UDMA speeds
490 and to configure the chip to optimum performance.
491
492 Say Y here if you have an ATI IXP chipset IDE controller.
493
494config BLK_DEV_CMD64X
495 tristate "CMD64{3|6|8|9} chipset support"
Bartlomiej Zolnierkiewicz842c19a2007-10-11 23:54:00 +0200496 select BLK_DEV_IDEDMA_PCI
Linus Torvalds1da177e2005-04-16 15:20:36 -0700497 help
498 Say Y here if you have an IDE controller which uses any of these
499 chipsets: CMD643, CMD646, or CMD648.
500
501config BLK_DEV_TRIFLEX
502 tristate "Compaq Triflex IDE support"
Bartlomiej Zolnierkiewicz842c19a2007-10-11 23:54:00 +0200503 select BLK_DEV_IDEDMA_PCI
Linus Torvalds1da177e2005-04-16 15:20:36 -0700504 help
505 Say Y here if you have a Compaq Triflex IDE controller, such
506 as those commonly found on Compaq Pentium-Pro systems
507
508config BLK_DEV_CY82C693
509 tristate "CY82C693 chipset support"
Bartlomiej Zolnierkiewicz842c19a2007-10-11 23:54:00 +0200510 select BLK_DEV_IDEDMA_PCI
Linus Torvalds1da177e2005-04-16 15:20:36 -0700511 help
512 This driver adds detection and support for the CY82C693 chipset
513 used on Digital's PC-Alpha 164SX boards.
514
Linus Torvalds1da177e2005-04-16 15:20:36 -0700515config BLK_DEV_CS5520
516 tristate "Cyrix CS5510/20 MediaGX chipset support (VERY EXPERIMENTAL)"
517 depends on EXPERIMENTAL
Bartlomiej Zolnierkiewicz842c19a2007-10-11 23:54:00 +0200518 select BLK_DEV_IDEDMA_PCI
Linus Torvalds1da177e2005-04-16 15:20:36 -0700519 help
Andreas Mohr3b6ce242006-02-03 03:04:54 -0800520 Include support for PIO tuning and virtual DMA on the Cyrix MediaGX
Linus Torvalds1da177e2005-04-16 15:20:36 -0700521 5510/5520 chipset. This will automatically be detected and
522 configured if found.
523
524 It is safe to say Y to this question.
525
526config BLK_DEV_CS5530
527 tristate "Cyrix/National Semiconductor CS5530 MediaGX chipset support"
Bartlomiej Zolnierkiewicz842c19a2007-10-11 23:54:00 +0200528 select BLK_DEV_IDEDMA_PCI
Linus Torvalds1da177e2005-04-16 15:20:36 -0700529 help
530 Include support for UDMA on the Cyrix MediaGX 5530 chipset. This
531 will automatically be detected and configured if found.
532
533 It is safe to say Y to this question.
534
Jaya Kumarf5b2d8b2005-11-09 23:58:16 +0100535config BLK_DEV_CS5535
536 tristate "AMD CS5535 chipset support"
537 depends on X86 && !X86_64
Bartlomiej Zolnierkiewicz842c19a2007-10-11 23:54:00 +0200538 select BLK_DEV_IDEDMA_PCI
Jaya Kumarf5b2d8b2005-11-09 23:58:16 +0100539 help
540 Include support for UDMA on the NSC/AMD CS5535 companion chipset.
541 This will automatically be detected and configured if found.
542
543 It is safe to say Y to this question.
544
Linus Torvalds1da177e2005-04-16 15:20:36 -0700545config BLK_DEV_HPT34X
546 tristate "HPT34X chipset support"
Bartlomiej Zolnierkiewicz842c19a2007-10-11 23:54:00 +0200547 select BLK_DEV_IDEDMA_PCI
Linus Torvalds1da177e2005-04-16 15:20:36 -0700548 help
549 This driver adds up to 4 more EIDE devices sharing a single
550 interrupt. The HPT343 chipset in its current form is a non-bootable
551 controller; the HPT345/HPT363 chipset is a bootable (needs BIOS FIX)
552 PCI UDMA controllers. This driver requires dynamic tuning of the
553 chipset during the ide-probe at boot time. It is reported to support
554 DVD II drives, by the manufacturer.
555
556config HPT34X_AUTODMA
557 bool "HPT34X AUTODMA support (EXPERIMENTAL)"
558 depends on BLK_DEV_HPT34X && EXPERIMENTAL
559 help
560 This is a dangerous thing to attempt currently! Please read the
561 comments at the top of <file:drivers/ide/pci/hpt34x.c>. If you say Y
562 here, then say Y to "Use DMA by default when available" as well.
563
564 If unsure, say N.
565
566config BLK_DEV_HPT366
567 tristate "HPT36X/37X chipset support"
Bartlomiej Zolnierkiewicz842c19a2007-10-11 23:54:00 +0200568 select BLK_DEV_IDEDMA_PCI
569 help
Linus Torvalds1da177e2005-04-16 15:20:36 -0700570 HPT366 is an Ultra DMA chipset for ATA-66.
571 HPT368 is an Ultra DMA chipset for ATA-66 RAID Based.
572 HPT370 is an Ultra DMA chipset for ATA-100.
573 HPT372 is an Ultra DMA chipset for ATA-100.
574 HPT374 is an Ultra DMA chipset for ATA-100.
575
576 This driver adds up to 4 more EIDE devices sharing a single
577 interrupt.
578
579 The HPT366 chipset in its current form is bootable. One solution
580 for this problem are special LILO commands for redirecting the
581 reference to device 0x80. The other solution is to say Y to "Boot
582 off-board chipsets first support" (CONFIG_BLK_DEV_OFFBOARD) unless
583 your mother board has the chipset natively mounted. Regardless one
Greg Kroah-Hartmana594eeb2008-04-18 00:46:20 +0200584 should use the fore mentioned option and call at LILO.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700585
586 This driver requires dynamic tuning of the chipset during the
587 ide-probe at boot. It is reported to support DVD II drives, by the
588 manufacturer.
589
Alan Coxbbb3bbd2006-10-03 01:14:12 -0700590config BLK_DEV_JMICRON
591 tristate "JMicron JMB36x support"
Bartlomiej Zolnierkiewicz842c19a2007-10-11 23:54:00 +0200592 select BLK_DEV_IDEDMA_PCI
Alan Coxbbb3bbd2006-10-03 01:14:12 -0700593 help
594 Basic support for the JMicron ATA controllers. For full support
595 use the libata drivers.
596
Linus Torvalds1da177e2005-04-16 15:20:36 -0700597config BLK_DEV_SC1200
598 tristate "National SCx200 chipset support"
Bartlomiej Zolnierkiewicz842c19a2007-10-11 23:54:00 +0200599 select BLK_DEV_IDEDMA_PCI
Linus Torvalds1da177e2005-04-16 15:20:36 -0700600 help
Frans Pope665d502008-02-01 23:09:16 +0100601 This driver adds support for the on-board IDE controller on the
602 National SCx200 series of embedded x86 "Geode" systems.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700603
604config BLK_DEV_PIIX
Bartlomiej Zolnierkiewicz64afc312008-05-14 23:06:16 +0200605 tristate "Intel PIIX/ICH chipsets support"
Bartlomiej Zolnierkiewicz842c19a2007-10-11 23:54:00 +0200606 select BLK_DEV_IDEDMA_PCI
Linus Torvalds1da177e2005-04-16 15:20:36 -0700607 help
Bartlomiej Zolnierkiewicz64afc312008-05-14 23:06:16 +0200608 This driver adds explicit support for Intel PIIX and ICH chips.
609 This allows the kernel to change PIO, DMA and UDMA speeds and to
610 configure the chip to optimum performance.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700611
Jack Lee9c6712c2007-02-07 18:19:09 +0100612config BLK_DEV_IT8213
613 tristate "IT8213 IDE support"
Bartlomiej Zolnierkiewicz842c19a2007-10-11 23:54:00 +0200614 select BLK_DEV_IDEDMA_PCI
Jack Lee9c6712c2007-02-07 18:19:09 +0100615 help
616 This driver adds support for the ITE 8213 IDE controller.
617
Alan Coxda9091e2005-06-27 15:24:30 -0700618config BLK_DEV_IT821X
619 tristate "IT821X IDE support"
Bartlomiej Zolnierkiewicz842c19a2007-10-11 23:54:00 +0200620 select BLK_DEV_IDEDMA_PCI
Alan Coxda9091e2005-06-27 15:24:30 -0700621 help
622 This driver adds support for the ITE 8211 IDE controller and the
623 IT 8212 IDE RAID controller in both RAID and pass-through mode.
624
Linus Torvalds1da177e2005-04-16 15:20:36 -0700625config BLK_DEV_NS87415
626 tristate "NS87415 chipset support"
Bartlomiej Zolnierkiewicz842c19a2007-10-11 23:54:00 +0200627 select BLK_DEV_IDEDMA_PCI
Linus Torvalds1da177e2005-04-16 15:20:36 -0700628 help
629 This driver adds detection and support for the NS87415 chip
Matthew Wilcox41df8942005-11-18 16:18:40 -0500630 (used mainly on SPARC64 and PA-RISC machines).
Linus Torvalds1da177e2005-04-16 15:20:36 -0700631
632 Please read the comments at the top of <file:drivers/ide/pci/ns87415.c>.
633
634config BLK_DEV_PDC202XX_OLD
635 tristate "PROMISE PDC202{46|62|65|67} support"
Bartlomiej Zolnierkiewicz842c19a2007-10-11 23:54:00 +0200636 select BLK_DEV_IDEDMA_PCI
Linus Torvalds1da177e2005-04-16 15:20:36 -0700637 help
638 Promise Ultra33 or PDC20246
639 Promise Ultra66 or PDC20262
640 Promise Ultra100 or PDC20265/PDC20267/PDC20268
641
642 This driver adds up to 4 more EIDE devices sharing a single
643 interrupt. This add-on card is a bootable PCI UDMA controller. Since
644 multiple cards can be installed and there are BIOS ROM problems that
645 happen if the BIOS revisions of all installed cards (three-max) do
646 not match, the driver attempts to do dynamic tuning of the chipset
647 at boot-time for max-speed. Ultra33 BIOS 1.25 or newer is required
Bartlomiej Zolnierkiewicz64afc312008-05-14 23:06:16 +0200648 for more than one card.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700649
650 Please read the comments at the top of
651 <file:drivers/ide/pci/pdc202xx_old.c>.
652
653 If unsure, say N.
654
Linus Torvalds1da177e2005-04-16 15:20:36 -0700655config BLK_DEV_PDC202XX_NEW
656 tristate "PROMISE PDC202{68|69|70|71|75|76|77} support"
Bartlomiej Zolnierkiewicz842c19a2007-10-11 23:54:00 +0200657 select BLK_DEV_IDEDMA_PCI
Linus Torvalds1da177e2005-04-16 15:20:36 -0700658
Linus Torvalds1da177e2005-04-16 15:20:36 -0700659config BLK_DEV_SVWKS
660 tristate "ServerWorks OSB4/CSB5/CSB6 chipsets support"
Bartlomiej Zolnierkiewicz842c19a2007-10-11 23:54:00 +0200661 select BLK_DEV_IDEDMA_PCI
Linus Torvalds1da177e2005-04-16 15:20:36 -0700662 help
663 This driver adds PIO/(U)DMA support for the ServerWorks OSB4/CSB5
664 chipsets.
665
666config BLK_DEV_SGIIOC4
Brent Casavante5d310b342005-06-21 17:16:01 -0700667 tristate "Silicon Graphics IOC4 chipset ATA/ATAPI support"
668 depends on (IA64_SGI_SN2 || IA64_GENERIC) && SGI_IOC4
Bartlomiej Zolnierkiewicz842c19a2007-10-11 23:54:00 +0200669 select BLK_DEV_IDEDMA_PCI
Linus Torvalds1da177e2005-04-16 15:20:36 -0700670 help
671 This driver adds PIO & MultiMode DMA-2 support for the SGI IOC4
672 chipset, which has one channel and can support two devices.
673 Please say Y here if you have an Altix System from SGI.
674
675config BLK_DEV_SIIMAGE
676 tristate "Silicon Image chipset support"
Bartlomiej Zolnierkiewicz842c19a2007-10-11 23:54:00 +0200677 select BLK_DEV_IDEDMA_PCI
Linus Torvalds1da177e2005-04-16 15:20:36 -0700678 help
679 This driver adds PIO/(U)DMA support for the SI CMD680 and SII
680 3112 (Serial ATA) chips.
681
682config BLK_DEV_SIS5513
683 tristate "SiS5513 chipset support"
684 depends on X86
Bartlomiej Zolnierkiewicz842c19a2007-10-11 23:54:00 +0200685 select BLK_DEV_IDEDMA_PCI
686 help
Linus Torvalds1da177e2005-04-16 15:20:36 -0700687 This driver ensures (U)DMA support for SIS5513 chipset family based
688 mainboards.
689
690 The following chipsets are supported:
691 ATA16: SiS5511, SiS5513
692 ATA33: SiS5591, SiS5597, SiS5598, SiS5600
693 ATA66: SiS530, SiS540, SiS620, SiS630, SiS640
694 ATA100: SiS635, SiS645, SiS650, SiS730, SiS735, SiS740,
695 SiS745, SiS750
696
Linus Torvalds1da177e2005-04-16 15:20:36 -0700697 Please read the comments at the top of <file:drivers/ide/pci/sis5513.c>.
698
Olaf Hering9468f682006-12-06 20:39:55 -0800699config BLK_DEV_SL82C105
700 tristate "Winbond SL82c105 support"
701 depends on (PPC || ARM)
Bartlomiej Zolnierkiewicz842c19a2007-10-11 23:54:00 +0200702 select BLK_DEV_IDEDMA_PCI
Olaf Hering9468f682006-12-06 20:39:55 -0800703 help
704 If you have a Winbond SL82c105 IDE controller, say Y here to enable
705 special configuration for this chip. This is common on various CHRP
706 motherboards, but could be used elsewhere. If in doubt, say Y.
707
Linus Torvalds1da177e2005-04-16 15:20:36 -0700708config BLK_DEV_SLC90E66
709 tristate "SLC90E66 chipset support"
Bartlomiej Zolnierkiewicz842c19a2007-10-11 23:54:00 +0200710 select BLK_DEV_IDEDMA_PCI
Linus Torvalds1da177e2005-04-16 15:20:36 -0700711 help
Andreas Mohr3b6ce242006-02-03 03:04:54 -0800712 This driver ensures (U)DMA support for Victory66 SouthBridges for
Linus Torvalds1da177e2005-04-16 15:20:36 -0700713 SMsC with Intel NorthBridges. This is an Ultra66 based chipset.
714 The nice thing about it is that you can mix Ultra/DMA/PIO devices
715 and it will handle timing cycles. Since this is an improved
716 look-a-like to the PIIX4 it should be a nice addition.
717
Linus Torvalds1da177e2005-04-16 15:20:36 -0700718 Please read the comments at the top of
719 <file:drivers/ide/pci/slc90e66.c>.
720
721config BLK_DEV_TRM290
722 tristate "Tekram TRM290 chipset support"
Bartlomiej Zolnierkiewicz842c19a2007-10-11 23:54:00 +0200723 select BLK_DEV_IDEDMA_PCI
Linus Torvalds1da177e2005-04-16 15:20:36 -0700724 help
725 This driver adds support for bus master DMA transfers
726 using the Tekram TRM290 PCI IDE chip. Volunteers are
727 needed for further tweaking and development.
728 Please read the comments at the top of <file:drivers/ide/pci/trm290.c>.
729
730config BLK_DEV_VIA82CXXX
731 tristate "VIA82CXXX chipset support"
Bartlomiej Zolnierkiewiczf06ab342008-07-16 20:33:37 +0200732 select IDE_TIMINGS
Bartlomiej Zolnierkiewicz842c19a2007-10-11 23:54:00 +0200733 select BLK_DEV_IDEDMA_PCI
Linus Torvalds1da177e2005-04-16 15:20:36 -0700734 help
735 This driver adds explicit support for VIA BusMastering IDE chips.
736 This allows the kernel to change PIO, DMA and UDMA speeds and to
737 configure the chip to optimum performance.
738
Sergei Shtylyov33dced22007-02-07 18:18:45 +0100739config BLK_DEV_TC86C001
740 tristate "Toshiba TC86C001 support"
Bartlomiej Zolnierkiewicz842c19a2007-10-11 23:54:00 +0200741 select BLK_DEV_IDEDMA_PCI
Sergei Shtylyov33dced22007-02-07 18:18:45 +0100742 help
743 This driver adds support for Toshiba TC86C001 GOKU-S chip.
744
Kou Ishizakia1067db2007-03-17 21:57:25 +0100745config BLK_DEV_CELLEB
746 tristate "Toshiba's Cell Reference Set IDE support"
747 depends on PPC_CELLEB
Bartlomiej Zolnierkiewicz842c19a2007-10-11 23:54:00 +0200748 select BLK_DEV_IDEDMA_PCI
Kou Ishizakia1067db2007-03-17 21:57:25 +0100749 help
Frans Pope665d502008-02-01 23:09:16 +0100750 This driver provides support for the on-board IDE controller on
Kou Ishizakia1067db2007-03-17 21:57:25 +0100751 Toshiba Cell Reference Board.
752 If unsure, say Y.
753
Linus Torvalds1da177e2005-04-16 15:20:36 -0700754endif
755
756config BLK_DEV_IDE_PMAC
Frans Pope665d502008-02-01 23:09:16 +0100757 tristate "PowerMac on-board IDE support"
Tony Breeds6c28c1f2007-09-11 22:28:36 +0200758 depends on PPC_PMAC && IDE=y && BLK_DEV_IDE=y
Bartlomiej Zolnierkiewiczf06ab342008-07-16 20:33:37 +0200759 select IDE_TIMINGS
Linus Torvalds1da177e2005-04-16 15:20:36 -0700760 help
Frans Pope665d502008-02-01 23:09:16 +0100761 This driver provides support for the on-board IDE controller on
Linus Torvalds1da177e2005-04-16 15:20:36 -0700762 most of the recent Apple Power Macintoshes and PowerBooks.
763 If unsure, say Y.
764
765config BLK_DEV_IDE_PMAC_ATA100FIRST
Frans Pope665d502008-02-01 23:09:16 +0100766 bool "Probe on-board ATA/100 (Kauai) first"
Linus Torvalds1da177e2005-04-16 15:20:36 -0700767 depends on BLK_DEV_IDE_PMAC
768 help
769 This option will cause the ATA/100 controller found in UniNorth2
770 based machines (Windtunnel PowerMac, Aluminium PowerBooks, ...)
771 to be probed before the ATA/66 and ATA/33 controllers. Without
772 these, those machine used to have the hard disk on hdc and the
773 CD-ROM on hda. This option changes this to more natural hda for
774 hard disk and hdc for CD-ROM.
775
776config BLK_DEV_IDEDMA_PMAC
777 bool "PowerMac IDE DMA support"
778 depends on BLK_DEV_IDE_PMAC
Juha-Matti Tapio0ac72b32005-08-18 22:13:44 +0200779 select BLK_DEV_IDEDMA_PCI
Linus Torvalds1da177e2005-04-16 15:20:36 -0700780 help
Frans Pope665d502008-02-01 23:09:16 +0100781 This option allows the driver for the on-board IDE controller on
Linus Torvalds1da177e2005-04-16 15:20:36 -0700782 Power Macintoshes and PowerBooks to use DMA (direct memory access)
783 to transfer data to and from memory. Saying Y is safe and improves
784 performance.
785
Ralf Baechle4237f222005-11-17 16:23:50 +0000786config BLK_DEV_IDE_SWARM
787 tristate "IDE for Sibyte evaluation boards"
788 depends on SIBYTE_SB1xxx_SOC
789
Pete Popov26a940e2005-09-15 08:03:12 +0000790config BLK_DEV_IDE_AU1XXX
791 bool "IDE for AMD Alchemy Au1200"
792 depends on SOC_AU1200
793choice
794 prompt "IDE Mode for AMD Alchemy Au1200"
795 default CONFIG_BLK_DEV_IDE_AU1XXX_PIO_DBDMA
796 depends on SOC_AU1200 && BLK_DEV_IDE_AU1XXX
797
798config BLK_DEV_IDE_AU1XXX_PIO_DBDMA
799 bool "PIO+DbDMA IDE for AMD Alchemy Au1200"
800
801config BLK_DEV_IDE_AU1XXX_MDMA2_DBDMA
802 bool "MDMA2+DbDMA IDE for AMD Alchemy Au1200"
803 depends on SOC_AU1200 && BLK_DEV_IDE_AU1XXX
804endchoice
805
Pete Popov26a940e2005-09-15 08:03:12 +0000806config BLK_DEV_IDE_AU1XXX_SEQTS_PER_RQ
807 int "Maximum transfer size (KB) per request (up to 128)"
808 default "128"
Robert P. J. Daybef1f402006-12-12 20:04:19 +0100809 depends on BLK_DEV_IDE_AU1XXX
Pete Popov26a940e2005-09-15 08:03:12 +0000810
Linus Torvalds1da177e2005-04-16 15:20:36 -0700811config IDE_ARM
Bartlomiej Zolnierkiewiczade2daf2008-01-26 20:13:07 +0100812 tristate "ARM IDE support"
813 depends on ARM && (ARCH_CLPS7500 || ARCH_RPC || ARCH_SHARK)
814 default y
Linus Torvalds1da177e2005-04-16 15:20:36 -0700815
816config BLK_DEV_IDE_ICSIDE
817 tristate "ICS IDE interface support"
818 depends on ARM && ARCH_ACORN
819 help
820 On Acorn systems, say Y here if you wish to use the ICS IDE
821 interface card. This is not required for ICS partition support.
822 If you are unsure, say N to this.
823
824config BLK_DEV_IDEDMA_ICS
825 bool "ICS DMA support"
826 depends on BLK_DEV_IDE_ICSIDE
827 help
828 Say Y here if you want to add DMA (Direct Memory Access) support to
829 the ICS IDE driver.
830
Linus Torvalds1da177e2005-04-16 15:20:36 -0700831config BLK_DEV_IDE_RAPIDE
832 tristate "RapIDE interface support"
833 depends on ARM && ARCH_ACORN
834 help
835 Say Y here if you want to support the Yellowstone RapIDE controller
836 manufactured for use with Acorn computers.
837
Bartlomiej Zolnierkiewiczacfad6e2007-11-27 21:35:54 +0100838config IDE_H8300
Bartlomiej Zolnierkiewiczade2daf2008-01-26 20:13:07 +0100839 tristate "H8300 IDE support"
Bartlomiej Zolnierkiewiczacfad6e2007-11-27 21:35:54 +0100840 depends on H8300
Bartlomiej Zolnierkiewiczacfad6e2007-11-27 21:35:54 +0100841 default y
842 help
843 Enables the H8300 IDE driver.
844
Linus Torvalds1da177e2005-04-16 15:20:36 -0700845config BLK_DEV_GAYLE
Bartlomiej Zolnierkiewiczade2daf2008-01-26 20:13:07 +0100846 tristate "Amiga Gayle IDE interface support"
Linus Torvalds1da177e2005-04-16 15:20:36 -0700847 depends on AMIGA
848 help
849 This is the IDE driver for the Amiga Gayle IDE interface. It supports
850 both the `A1200 style' and `A4000 style' of the Gayle IDE interface,
Frans Pope665d502008-02-01 23:09:16 +0100851 This includes on-board IDE interfaces on some Amiga models (A600,
Linus Torvalds1da177e2005-04-16 15:20:36 -0700852 A1200, A4000, and A4000T), and IDE interfaces on the Zorro expansion
853 bus (M-Tech E-Matrix 530 expansion card).
854 Say Y if you have an Amiga with a Gayle IDE interface and want to use
855 IDE devices (hard disks, CD-ROM drives, etc.) that are connected to
856 it.
857 Note that you also have to enable Zorro bus support if you want to
858 use Gayle IDE interfaces on the Zorro expansion bus.
859
860config BLK_DEV_IDEDOUBLER
861 bool "Amiga IDE Doubler support (EXPERIMENTAL)"
862 depends on BLK_DEV_GAYLE && EXPERIMENTAL
863 ---help---
Bartlomiej Zolnierkiewicz64afc312008-05-14 23:06:16 +0200864 This feature provides support for the so-called `IDE doublers' (made
Frans Pope665d502008-02-01 23:09:16 +0100865 by various manufacturers, e.g. Eyetech) that can be connected to
866 the on-board IDE interface of some Amiga models. Using such an IDE
867 doubler, you can connect up to four instead of two IDE devices to
868 the Amiga's on-board IDE interface.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700869
870 Note that the normal Amiga Gayle IDE driver may not work correctly
Bartlomiej Zolnierkiewicz64afc312008-05-14 23:06:16 +0200871 if you have an IDE doubler and don't enable this feature!
Linus Torvalds1da177e2005-04-16 15:20:36 -0700872
Bartlomiej Zolnierkiewicz64afc312008-05-14 23:06:16 +0200873 Say Y if you have an IDE doubler. The feature is enabled at kernel
874 runtime using the "gayle.doubler" kernel boot parameter.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700875
876config BLK_DEV_BUDDHA
Bartlomiej Zolnierkiewiczade2daf2008-01-26 20:13:07 +0100877 tristate "Buddha/Catweasel/X-Surf IDE interface support (EXPERIMENTAL)"
Linus Torvalds1da177e2005-04-16 15:20:36 -0700878 depends on ZORRO && EXPERIMENTAL
879 help
Frans Pope665d502008-02-01 23:09:16 +0100880 This is the IDE driver for the IDE interfaces on the Buddha, Catweasel
881 and X-Surf expansion boards. It supports up to two interfaces on the
882 Buddha, three on the Catweasel and two on the X-Surf.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700883
884 Say Y if you have a Buddha or Catweasel expansion board and want to
885 use IDE devices (hard disks, CD-ROM drives, etc.) that are connected
886 to one of its IDE interfaces.
887
888config BLK_DEV_FALCON_IDE
Bartlomiej Zolnierkiewiczade2daf2008-01-26 20:13:07 +0100889 tristate "Falcon IDE interface support"
Linus Torvalds1da177e2005-04-16 15:20:36 -0700890 depends on ATARI
891 help
Frans Pope665d502008-02-01 23:09:16 +0100892 This is the IDE driver for the on-board IDE interface on the Atari
Linus Torvalds1da177e2005-04-16 15:20:36 -0700893 Falcon. Say Y if you have a Falcon and want to use IDE devices (hard
Frans Pope665d502008-02-01 23:09:16 +0100894 disks, CD-ROM drives, etc.) that are connected to the on-board IDE
Linus Torvalds1da177e2005-04-16 15:20:36 -0700895 interface.
896
897config BLK_DEV_MAC_IDE
Bartlomiej Zolnierkiewiczade2daf2008-01-26 20:13:07 +0100898 tristate "Macintosh Quadra/Powerbook IDE interface support"
Linus Torvalds1da177e2005-04-16 15:20:36 -0700899 depends on MAC
900 help
Frans Pope665d502008-02-01 23:09:16 +0100901 This is the IDE driver for the on-board IDE interface on some m68k
Linus Torvalds1da177e2005-04-16 15:20:36 -0700902 Macintosh models. It supports both the `Quadra style' (used in
903 Quadra/ Centris 630 and Performa 588 models) and `Powerbook style'
904 (used in the Powerbook 150 and 190 models) IDE interface.
905
906 Say Y if you have such an Macintosh model and want to use IDE
907 devices (hard disks, CD-ROM drives, etc.) that are connected to the
Frans Pope665d502008-02-01 23:09:16 +0100908 on-board IDE interface.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700909
910config BLK_DEV_Q40IDE
Bartlomiej Zolnierkiewiczade2daf2008-01-26 20:13:07 +0100911 tristate "Q40/Q60 IDE interface support"
Linus Torvalds1da177e2005-04-16 15:20:36 -0700912 depends on Q40
913 help
914 Enable the on-board IDE controller in the Q40/Q60. This should
915 normally be on; disable it only if you are running a custom hard
916 drive subsystem through an expansion card.
917
Anton Salnikov7c7e92a2008-02-06 02:57:48 +0100918config BLK_DEV_PALMCHIP_BK3710
919 tristate "Palmchip bk3710 IDE controller support"
920 depends on ARCH_DAVINCI
Bartlomiej Zolnierkiewiczf06ab342008-07-16 20:33:37 +0200921 select IDE_TIMINGS
Sergei Shtylyov8e882ba2008-02-11 00:32:14 +0100922 select BLK_DEV_IDEDMA_SFF
Anton Salnikov7c7e92a2008-02-06 02:57:48 +0100923 help
924 Say Y here if you want to support the onchip IDE controller on the
925 TI DaVinci SoC
926
927
Linus Torvalds1da177e2005-04-16 15:20:36 -0700928config BLK_DEV_MPC8xx_IDE
Bartlomiej Zolnierkiewiczade2daf2008-01-26 20:13:07 +0100929 tristate "MPC8xx IDE support"
Bartlomiej Zolnierkiewiczc5d252c2007-11-27 21:35:54 +0100930 depends on 8xx && (LWMON || IVMS8 || IVML24 || TQM8xxL) && IDE=y && BLK_DEV_IDE=y && !PPC_MERGE
Linus Torvalds1da177e2005-04-16 15:20:36 -0700931 help
932 This option provides support for IDE on Motorola MPC8xx Systems.
933 Please see 'Type of MPC8xx IDE interface' for details.
934
935 If unsure, say N.
936
937choice
938 prompt "Type of MPC8xx IDE interface"
939 depends on BLK_DEV_MPC8xx_IDE
940 default IDE_8xx_PCCARD
941
942config IDE_8xx_PCCARD
943 bool "8xx_PCCARD"
944 ---help---
945 Select how the IDE devices are connected to the MPC8xx system:
946
947 8xx_PCCARD uses the 8xx internal PCMCIA interface in combination
948 with a PC Card (e.g. ARGOSY portable Hard Disk Adapter),
949 ATA PC Card HDDs or ATA PC Flash Cards (example: TQM8xxL
950 systems)
951
952 8xx_DIRECT is used for directly connected IDE devices using the 8xx
953 internal PCMCIA interface (example: IVMS8 systems)
954
955 EXT_DIRECT is used for IDE devices directly connected to the 8xx
956 bus using some glue logic, but _not_ the 8xx internal
957 PCMCIA interface (example: IDIF860 systems)
958
959config IDE_8xx_DIRECT
960 bool "8xx_DIRECT"
961
962config IDE_EXT_DIRECT
963 bool "EXT_DIRECT"
964
965endchoice
966
967# no isa -> no vlb
Bartlomiej Zolnierkiewicze4079df02008-04-18 00:46:35 +0200968if ISA && (ALPHA || X86 || MIPS)
Linus Torvalds1da177e2005-04-16 15:20:36 -0700969
Bartlomiej Zolnierkiewicz842c19a2007-10-11 23:54:00 +0200970comment "Other IDE chipsets support"
Linus Torvalds1da177e2005-04-16 15:20:36 -0700971comment "Note: most of these also require special kernel boot parameters"
972
973config BLK_DEV_4DRIVES
Frederik Deweerdt938da772008-04-26 17:36:31 +0200974 tristate "Generic 4 drives/port support"
Linus Torvalds1da177e2005-04-16 15:20:36 -0700975 help
976 Certain older chipsets, including the Tekram 690CD, use a single set
977 of I/O ports at 0x1f0 to control up to four drives, instead of the
978 customary two drives per port. Support for this can be enabled at
Bartlomiej Zolnierkiewiczffd4f6f2008-04-18 00:46:34 +0200979 runtime using the "ide-4drives.probe" kernel boot parameter if you
980 say Y here.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700981
982config BLK_DEV_ALI14XX
983 tristate "ALI M14xx support"
Bartlomiej Zolnierkiewiczcc57ccc2008-07-16 20:33:37 +0200984 select IDE_TIMINGS
Linus Torvalds1da177e2005-04-16 15:20:36 -0700985 help
Bartlomiej Zolnierkiewicz84913882007-03-03 17:48:55 +0100986 This driver is enabled at runtime using the "ali14xx.probe" kernel
Linus Torvalds1da177e2005-04-16 15:20:36 -0700987 boot parameter. It enables support for the secondary IDE interface
988 of the ALI M1439/1443/1445/1487/1489 chipsets, and permits faster
Randy Dunlap1c10e932008-03-07 21:53:50 +0100989 I/O speeds to be set as well.
990 See the files <file:Documentation/ide/ide.txt> and
991 <file:drivers/ide/legacy/ali14xx.c> for more info.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700992
993config BLK_DEV_DTC2278
994 tristate "DTC-2278 support"
995 help
Bartlomiej Zolnierkiewicz84913882007-03-03 17:48:55 +0100996 This driver is enabled at runtime using the "dtc2278.probe" kernel
Linus Torvalds1da177e2005-04-16 15:20:36 -0700997 boot parameter. It enables support for the secondary IDE interface
998 of the DTC-2278 card, and permits faster I/O speeds to be set as
Randy Dunlap1c10e932008-03-07 21:53:50 +0100999 well. See the <file:Documentation/ide/ide.txt> and
Linus Torvalds1da177e2005-04-16 15:20:36 -07001000 <file:drivers/ide/legacy/dtc2278.c> files for more info.
1001
1002config BLK_DEV_HT6560B
1003 tristate "Holtek HT6560B support"
Bartlomiej Zolnierkiewiczb32b76f2008-07-16 20:33:37 +02001004 select IDE_TIMINGS
Linus Torvalds1da177e2005-04-16 15:20:36 -07001005 help
Bartlomiej Zolnierkiewicz84913882007-03-03 17:48:55 +01001006 This driver is enabled at runtime using the "ht6560b.probe" kernel
Linus Torvalds1da177e2005-04-16 15:20:36 -07001007 boot parameter. It enables support for the secondary IDE interface
1008 of the Holtek card, and permits faster I/O speeds to be set as well.
Randy Dunlap1c10e932008-03-07 21:53:50 +01001009 See the <file:Documentation/ide/ide.txt> and
Linus Torvalds1da177e2005-04-16 15:20:36 -07001010 <file:drivers/ide/legacy/ht6560b.c> files for more info.
1011
1012config BLK_DEV_QD65XX
1013 tristate "QDI QD65xx support"
Bartlomiej Zolnierkiewicz2feecfa2008-07-16 20:33:37 +02001014 select IDE_TIMINGS
Linus Torvalds1da177e2005-04-16 15:20:36 -07001015 help
Bartlomiej Zolnierkiewicz84913882007-03-03 17:48:55 +01001016 This driver is enabled at runtime using the "qd65xx.probe" kernel
Linus Torvalds1da177e2005-04-16 15:20:36 -07001017 boot parameter. It permits faster I/O speeds to be set. See the
Randy Dunlap1c10e932008-03-07 21:53:50 +01001018 <file:Documentation/ide/ide.txt> and <file:drivers/ide/legacy/qd65xx.c>
Frans Pope665d502008-02-01 23:09:16 +01001019 for more info.
Linus Torvalds1da177e2005-04-16 15:20:36 -07001020
1021config BLK_DEV_UMC8672
1022 tristate "UMC-8672 support"
1023 help
Bartlomiej Zolnierkiewicz84913882007-03-03 17:48:55 +01001024 This driver is enabled at runtime using the "umc8672.probe" kernel
Linus Torvalds1da177e2005-04-16 15:20:36 -07001025 boot parameter. It enables support for the secondary IDE interface
1026 of the UMC-8672, and permits faster I/O speeds to be set as well.
Randy Dunlap1c10e932008-03-07 21:53:50 +01001027 See the files <file:Documentation/ide/ide.txt> and
Linus Torvalds1da177e2005-04-16 15:20:36 -07001028 <file:drivers/ide/legacy/umc8672.c> for more info.
1029
1030endif
1031
1032config BLK_DEV_IDEDMA
Sergei Shtylyov8e882ba2008-02-11 00:32:14 +01001033 def_bool BLK_DEV_IDEDMA_SFF || BLK_DEV_IDEDMA_PMAC || \
1034 BLK_DEV_IDEDMA_ICS || BLK_DEV_IDE_AU1XXX_MDMA2_DBDMA
Linus Torvalds1da177e2005-04-16 15:20:36 -07001035
Linus Torvalds1da177e2005-04-16 15:20:36 -07001036endif
1037
1038config BLK_DEV_HD_ONLY
1039 bool "Old hard disk (MFM/RLL/IDE) driver"
Adrian Bunkefc0fc12008-06-10 20:56:38 +02001040 depends on !ARM || ARCH_RPC || ARCH_SHARK || BROKEN
Linus Torvalds1da177e2005-04-16 15:20:36 -07001041 help
1042 There are two drivers for MFM/RLL/IDE hard disks. Most people use
1043 the newer enhanced driver, but this old one is still around for two
1044 reasons. Some older systems have strange timing problems and seem to
1045 work only with the old driver (which itself does not work with some
1046 newer systems). The other reason is that the old driver is smaller,
1047 since it lacks the enhanced functionality of the new one. This makes
1048 it a good choice for systems with very tight memory restrictions, or
1049 for systems with only older MFM/RLL/ESDI drives. Choosing the old
1050 driver can save 13 KB or so of kernel memory.
1051
Bartlomiej Zolnierkiewicz80aa31c2008-04-18 00:46:24 +02001052 If you want to use this driver together with the new one you have
1053 to use "hda=noprobe hdb=noprobe" kernel parameters to prevent the new
1054 driver from probing the primary interface.
1055
Linus Torvalds1da177e2005-04-16 15:20:36 -07001056 If you are unsure, then just choose the Enhanced IDE/MFM/RLL driver
1057 instead of this one. For more detailed information, read the
1058 Disk-HOWTO, available from
1059 <http://www.tldp.org/docs.html#howto>.
1060
1061config BLK_DEV_HD
Bartlomiej Zolnierkiewicz80aa31c2008-04-18 00:46:24 +02001062 def_bool BLK_DEV_HD_ONLY
Linus Torvalds1da177e2005-04-16 15:20:36 -07001063
Jan Engelhardte0ff9cd2007-05-16 00:51:46 +02001064endif # IDE