blob: cadce92047fb74f71728b68f3b098960d76ad2a7 [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 Zolnierkiewicz288911a2008-07-16 20:33:37 +0200461 select IDE_TIMINGS
Bartlomiej Zolnierkiewicz842c19a2007-10-11 23:54:00 +0200462 select BLK_DEV_IDEDMA_PCI
Linus Torvalds1da177e2005-04-16 15:20:36 -0700463 help
464 This driver ensures (U)DMA support for ALI 1533, 1543 and 1543C
465 onboard chipsets. It also tests for Simplex mode and enables
466 normal dual channel support.
467
Bartlomiej Zolnierkiewicz64afc312008-05-14 23:06:16 +0200468 Please read the comments at the top of
Linus Torvalds1da177e2005-04-16 15:20:36 -0700469 <file:drivers/ide/pci/alim15x3.c>.
470
471 If unsure, say N.
472
Linus Torvalds1da177e2005-04-16 15:20:36 -0700473config BLK_DEV_AMD74XX
474 tristate "AMD and nVidia IDE support"
Andrew Morton91302012007-11-27 21:35:56 +0100475 depends on !ARM
Bartlomiej Zolnierkiewiczf06ab342008-07-16 20:33:37 +0200476 select IDE_TIMINGS
Bartlomiej Zolnierkiewicz842c19a2007-10-11 23:54:00 +0200477 select BLK_DEV_IDEDMA_PCI
Linus Torvalds1da177e2005-04-16 15:20:36 -0700478 help
479 This driver adds explicit support for AMD-7xx and AMD-8111 chips
480 and also for the nVidia nForce chip. This allows the kernel to
481 change PIO, DMA and UDMA speeds and to configure the chip to
482 optimum performance.
483
484config BLK_DEV_ATIIXP
485 tristate "ATI IXP chipset IDE support"
486 depends on X86
Bartlomiej Zolnierkiewicz842c19a2007-10-11 23:54:00 +0200487 select BLK_DEV_IDEDMA_PCI
Linus Torvalds1da177e2005-04-16 15:20:36 -0700488 help
489 This driver adds explicit support for ATI IXP chipset.
490 This allows the kernel to change PIO, DMA and UDMA speeds
491 and to configure the chip to optimum performance.
492
493 Say Y here if you have an ATI IXP chipset IDE controller.
494
495config BLK_DEV_CMD64X
496 tristate "CMD64{3|6|8|9} chipset support"
Bartlomiej Zolnierkiewicz842c19a2007-10-11 23:54:00 +0200497 select BLK_DEV_IDEDMA_PCI
Linus Torvalds1da177e2005-04-16 15:20:36 -0700498 help
499 Say Y here if you have an IDE controller which uses any of these
500 chipsets: CMD643, CMD646, or CMD648.
501
502config BLK_DEV_TRIFLEX
503 tristate "Compaq Triflex IDE support"
Bartlomiej Zolnierkiewicz842c19a2007-10-11 23:54:00 +0200504 select BLK_DEV_IDEDMA_PCI
Linus Torvalds1da177e2005-04-16 15:20:36 -0700505 help
506 Say Y here if you have a Compaq Triflex IDE controller, such
507 as those commonly found on Compaq Pentium-Pro systems
508
509config BLK_DEV_CY82C693
510 tristate "CY82C693 chipset support"
Bartlomiej Zolnierkiewicz842c19a2007-10-11 23:54:00 +0200511 select BLK_DEV_IDEDMA_PCI
Linus Torvalds1da177e2005-04-16 15:20:36 -0700512 help
513 This driver adds detection and support for the CY82C693 chipset
514 used on Digital's PC-Alpha 164SX boards.
515
Linus Torvalds1da177e2005-04-16 15:20:36 -0700516config BLK_DEV_CS5520
517 tristate "Cyrix CS5510/20 MediaGX chipset support (VERY EXPERIMENTAL)"
518 depends on EXPERIMENTAL
Bartlomiej Zolnierkiewicz842c19a2007-10-11 23:54:00 +0200519 select BLK_DEV_IDEDMA_PCI
Linus Torvalds1da177e2005-04-16 15:20:36 -0700520 help
Andreas Mohr3b6ce242006-02-03 03:04:54 -0800521 Include support for PIO tuning and virtual DMA on the Cyrix MediaGX
Linus Torvalds1da177e2005-04-16 15:20:36 -0700522 5510/5520 chipset. This will automatically be detected and
523 configured if found.
524
525 It is safe to say Y to this question.
526
527config BLK_DEV_CS5530
528 tristate "Cyrix/National Semiconductor CS5530 MediaGX chipset support"
Bartlomiej Zolnierkiewicz842c19a2007-10-11 23:54:00 +0200529 select BLK_DEV_IDEDMA_PCI
Linus Torvalds1da177e2005-04-16 15:20:36 -0700530 help
531 Include support for UDMA on the Cyrix MediaGX 5530 chipset. This
532 will automatically be detected and configured if found.
533
534 It is safe to say Y to this question.
535
Jaya Kumarf5b2d8b2005-11-09 23:58:16 +0100536config BLK_DEV_CS5535
537 tristate "AMD CS5535 chipset support"
538 depends on X86 && !X86_64
Bartlomiej Zolnierkiewicz842c19a2007-10-11 23:54:00 +0200539 select BLK_DEV_IDEDMA_PCI
Jaya Kumarf5b2d8b2005-11-09 23:58:16 +0100540 help
541 Include support for UDMA on the NSC/AMD CS5535 companion chipset.
542 This will automatically be detected and configured if found.
543
544 It is safe to say Y to this question.
545
Linus Torvalds1da177e2005-04-16 15:20:36 -0700546config BLK_DEV_HPT34X
547 tristate "HPT34X chipset support"
Bartlomiej Zolnierkiewicz842c19a2007-10-11 23:54:00 +0200548 select BLK_DEV_IDEDMA_PCI
Linus Torvalds1da177e2005-04-16 15:20:36 -0700549 help
550 This driver adds up to 4 more EIDE devices sharing a single
551 interrupt. The HPT343 chipset in its current form is a non-bootable
552 controller; the HPT345/HPT363 chipset is a bootable (needs BIOS FIX)
553 PCI UDMA controllers. This driver requires dynamic tuning of the
554 chipset during the ide-probe at boot time. It is reported to support
555 DVD II drives, by the manufacturer.
556
557config HPT34X_AUTODMA
558 bool "HPT34X AUTODMA support (EXPERIMENTAL)"
559 depends on BLK_DEV_HPT34X && EXPERIMENTAL
560 help
561 This is a dangerous thing to attempt currently! Please read the
562 comments at the top of <file:drivers/ide/pci/hpt34x.c>. If you say Y
563 here, then say Y to "Use DMA by default when available" as well.
564
565 If unsure, say N.
566
567config BLK_DEV_HPT366
568 tristate "HPT36X/37X chipset support"
Bartlomiej Zolnierkiewicz842c19a2007-10-11 23:54:00 +0200569 select BLK_DEV_IDEDMA_PCI
570 help
Linus Torvalds1da177e2005-04-16 15:20:36 -0700571 HPT366 is an Ultra DMA chipset for ATA-66.
572 HPT368 is an Ultra DMA chipset for ATA-66 RAID Based.
573 HPT370 is an Ultra DMA chipset for ATA-100.
574 HPT372 is an Ultra DMA chipset for ATA-100.
575 HPT374 is an Ultra DMA chipset for ATA-100.
576
577 This driver adds up to 4 more EIDE devices sharing a single
578 interrupt.
579
580 The HPT366 chipset in its current form is bootable. One solution
581 for this problem are special LILO commands for redirecting the
582 reference to device 0x80. The other solution is to say Y to "Boot
583 off-board chipsets first support" (CONFIG_BLK_DEV_OFFBOARD) unless
584 your mother board has the chipset natively mounted. Regardless one
Greg Kroah-Hartmana594eeb2008-04-18 00:46:20 +0200585 should use the fore mentioned option and call at LILO.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700586
587 This driver requires dynamic tuning of the chipset during the
588 ide-probe at boot. It is reported to support DVD II drives, by the
589 manufacturer.
590
Alan Coxbbb3bbd2006-10-03 01:14:12 -0700591config BLK_DEV_JMICRON
592 tristate "JMicron JMB36x support"
Bartlomiej Zolnierkiewicz842c19a2007-10-11 23:54:00 +0200593 select BLK_DEV_IDEDMA_PCI
Alan Coxbbb3bbd2006-10-03 01:14:12 -0700594 help
595 Basic support for the JMicron ATA controllers. For full support
596 use the libata drivers.
597
Linus Torvalds1da177e2005-04-16 15:20:36 -0700598config BLK_DEV_SC1200
599 tristate "National SCx200 chipset support"
Bartlomiej Zolnierkiewicz842c19a2007-10-11 23:54:00 +0200600 select BLK_DEV_IDEDMA_PCI
Linus Torvalds1da177e2005-04-16 15:20:36 -0700601 help
Frans Pope665d502008-02-01 23:09:16 +0100602 This driver adds support for the on-board IDE controller on the
603 National SCx200 series of embedded x86 "Geode" systems.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700604
605config BLK_DEV_PIIX
Bartlomiej Zolnierkiewicz64afc312008-05-14 23:06:16 +0200606 tristate "Intel PIIX/ICH chipsets support"
Bartlomiej Zolnierkiewicz842c19a2007-10-11 23:54:00 +0200607 select BLK_DEV_IDEDMA_PCI
Linus Torvalds1da177e2005-04-16 15:20:36 -0700608 help
Bartlomiej Zolnierkiewicz64afc312008-05-14 23:06:16 +0200609 This driver adds explicit support for Intel PIIX and ICH chips.
610 This allows the kernel to change PIO, DMA and UDMA speeds and to
611 configure the chip to optimum performance.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700612
Jack Lee9c6712c2007-02-07 18:19:09 +0100613config BLK_DEV_IT8213
614 tristate "IT8213 IDE support"
Bartlomiej Zolnierkiewicz842c19a2007-10-11 23:54:00 +0200615 select BLK_DEV_IDEDMA_PCI
Jack Lee9c6712c2007-02-07 18:19:09 +0100616 help
617 This driver adds support for the ITE 8213 IDE controller.
618
Alan Coxda9091e2005-06-27 15:24:30 -0700619config BLK_DEV_IT821X
620 tristate "IT821X IDE support"
Bartlomiej Zolnierkiewicz842c19a2007-10-11 23:54:00 +0200621 select BLK_DEV_IDEDMA_PCI
Alan Coxda9091e2005-06-27 15:24:30 -0700622 help
623 This driver adds support for the ITE 8211 IDE controller and the
624 IT 8212 IDE RAID controller in both RAID and pass-through mode.
625
Linus Torvalds1da177e2005-04-16 15:20:36 -0700626config BLK_DEV_NS87415
627 tristate "NS87415 chipset support"
Bartlomiej Zolnierkiewicz842c19a2007-10-11 23:54:00 +0200628 select BLK_DEV_IDEDMA_PCI
Linus Torvalds1da177e2005-04-16 15:20:36 -0700629 help
630 This driver adds detection and support for the NS87415 chip
Matthew Wilcox41df8942005-11-18 16:18:40 -0500631 (used mainly on SPARC64 and PA-RISC machines).
Linus Torvalds1da177e2005-04-16 15:20:36 -0700632
633 Please read the comments at the top of <file:drivers/ide/pci/ns87415.c>.
634
635config BLK_DEV_PDC202XX_OLD
636 tristate "PROMISE PDC202{46|62|65|67} support"
Bartlomiej Zolnierkiewicz842c19a2007-10-11 23:54:00 +0200637 select BLK_DEV_IDEDMA_PCI
Linus Torvalds1da177e2005-04-16 15:20:36 -0700638 help
639 Promise Ultra33 or PDC20246
640 Promise Ultra66 or PDC20262
641 Promise Ultra100 or PDC20265/PDC20267/PDC20268
642
643 This driver adds up to 4 more EIDE devices sharing a single
644 interrupt. This add-on card is a bootable PCI UDMA controller. Since
645 multiple cards can be installed and there are BIOS ROM problems that
646 happen if the BIOS revisions of all installed cards (three-max) do
647 not match, the driver attempts to do dynamic tuning of the chipset
648 at boot-time for max-speed. Ultra33 BIOS 1.25 or newer is required
Bartlomiej Zolnierkiewicz64afc312008-05-14 23:06:16 +0200649 for more than one card.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700650
651 Please read the comments at the top of
652 <file:drivers/ide/pci/pdc202xx_old.c>.
653
654 If unsure, say N.
655
Linus Torvalds1da177e2005-04-16 15:20:36 -0700656config BLK_DEV_PDC202XX_NEW
657 tristate "PROMISE PDC202{68|69|70|71|75|76|77} support"
Bartlomiej Zolnierkiewicz842c19a2007-10-11 23:54:00 +0200658 select BLK_DEV_IDEDMA_PCI
Linus Torvalds1da177e2005-04-16 15:20:36 -0700659
Linus Torvalds1da177e2005-04-16 15:20:36 -0700660config BLK_DEV_SVWKS
661 tristate "ServerWorks OSB4/CSB5/CSB6 chipsets support"
Bartlomiej Zolnierkiewicz842c19a2007-10-11 23:54:00 +0200662 select BLK_DEV_IDEDMA_PCI
Linus Torvalds1da177e2005-04-16 15:20:36 -0700663 help
664 This driver adds PIO/(U)DMA support for the ServerWorks OSB4/CSB5
665 chipsets.
666
667config BLK_DEV_SGIIOC4
Brent Casavante5d310b2005-06-21 17:16:01 -0700668 tristate "Silicon Graphics IOC4 chipset ATA/ATAPI support"
669 depends on (IA64_SGI_SN2 || IA64_GENERIC) && SGI_IOC4
Bartlomiej Zolnierkiewicz842c19a2007-10-11 23:54:00 +0200670 select BLK_DEV_IDEDMA_PCI
Linus Torvalds1da177e2005-04-16 15:20:36 -0700671 help
672 This driver adds PIO & MultiMode DMA-2 support for the SGI IOC4
673 chipset, which has one channel and can support two devices.
674 Please say Y here if you have an Altix System from SGI.
675
676config BLK_DEV_SIIMAGE
677 tristate "Silicon Image chipset support"
Bartlomiej Zolnierkiewicz842c19a2007-10-11 23:54:00 +0200678 select BLK_DEV_IDEDMA_PCI
Linus Torvalds1da177e2005-04-16 15:20:36 -0700679 help
680 This driver adds PIO/(U)DMA support for the SI CMD680 and SII
681 3112 (Serial ATA) chips.
682
683config BLK_DEV_SIS5513
684 tristate "SiS5513 chipset support"
685 depends on X86
Bartlomiej Zolnierkiewicz842c19a2007-10-11 23:54:00 +0200686 select BLK_DEV_IDEDMA_PCI
687 help
Linus Torvalds1da177e2005-04-16 15:20:36 -0700688 This driver ensures (U)DMA support for SIS5513 chipset family based
689 mainboards.
690
691 The following chipsets are supported:
692 ATA16: SiS5511, SiS5513
693 ATA33: SiS5591, SiS5597, SiS5598, SiS5600
694 ATA66: SiS530, SiS540, SiS620, SiS630, SiS640
695 ATA100: SiS635, SiS645, SiS650, SiS730, SiS735, SiS740,
696 SiS745, SiS750
697
Linus Torvalds1da177e2005-04-16 15:20:36 -0700698 Please read the comments at the top of <file:drivers/ide/pci/sis5513.c>.
699
Olaf Hering9468f682006-12-06 20:39:55 -0800700config BLK_DEV_SL82C105
701 tristate "Winbond SL82c105 support"
702 depends on (PPC || ARM)
Bartlomiej Zolnierkiewicz842c19a2007-10-11 23:54:00 +0200703 select BLK_DEV_IDEDMA_PCI
Olaf Hering9468f682006-12-06 20:39:55 -0800704 help
705 If you have a Winbond SL82c105 IDE controller, say Y here to enable
706 special configuration for this chip. This is common on various CHRP
707 motherboards, but could be used elsewhere. If in doubt, say Y.
708
Linus Torvalds1da177e2005-04-16 15:20:36 -0700709config BLK_DEV_SLC90E66
710 tristate "SLC90E66 chipset support"
Bartlomiej Zolnierkiewicz842c19a2007-10-11 23:54:00 +0200711 select BLK_DEV_IDEDMA_PCI
Linus Torvalds1da177e2005-04-16 15:20:36 -0700712 help
Andreas Mohr3b6ce242006-02-03 03:04:54 -0800713 This driver ensures (U)DMA support for Victory66 SouthBridges for
Linus Torvalds1da177e2005-04-16 15:20:36 -0700714 SMsC with Intel NorthBridges. This is an Ultra66 based chipset.
715 The nice thing about it is that you can mix Ultra/DMA/PIO devices
716 and it will handle timing cycles. Since this is an improved
717 look-a-like to the PIIX4 it should be a nice addition.
718
Linus Torvalds1da177e2005-04-16 15:20:36 -0700719 Please read the comments at the top of
720 <file:drivers/ide/pci/slc90e66.c>.
721
722config BLK_DEV_TRM290
723 tristate "Tekram TRM290 chipset support"
Bartlomiej Zolnierkiewicz842c19a2007-10-11 23:54:00 +0200724 select BLK_DEV_IDEDMA_PCI
Linus Torvalds1da177e2005-04-16 15:20:36 -0700725 help
726 This driver adds support for bus master DMA transfers
727 using the Tekram TRM290 PCI IDE chip. Volunteers are
728 needed for further tweaking and development.
729 Please read the comments at the top of <file:drivers/ide/pci/trm290.c>.
730
731config BLK_DEV_VIA82CXXX
732 tristate "VIA82CXXX chipset support"
Bartlomiej Zolnierkiewiczf06ab342008-07-16 20:33:37 +0200733 select IDE_TIMINGS
Bartlomiej Zolnierkiewicz842c19a2007-10-11 23:54:00 +0200734 select BLK_DEV_IDEDMA_PCI
Linus Torvalds1da177e2005-04-16 15:20:36 -0700735 help
736 This driver adds explicit support for VIA BusMastering IDE chips.
737 This allows the kernel to change PIO, DMA and UDMA speeds and to
738 configure the chip to optimum performance.
739
Sergei Shtylyov33dced22007-02-07 18:18:45 +0100740config BLK_DEV_TC86C001
741 tristate "Toshiba TC86C001 support"
Bartlomiej Zolnierkiewicz842c19a2007-10-11 23:54:00 +0200742 select BLK_DEV_IDEDMA_PCI
Sergei Shtylyov33dced22007-02-07 18:18:45 +0100743 help
744 This driver adds support for Toshiba TC86C001 GOKU-S chip.
745
Kou Ishizakia1067db2007-03-17 21:57:25 +0100746config BLK_DEV_CELLEB
747 tristate "Toshiba's Cell Reference Set IDE support"
748 depends on PPC_CELLEB
Bartlomiej Zolnierkiewicz842c19a2007-10-11 23:54:00 +0200749 select BLK_DEV_IDEDMA_PCI
Kou Ishizakia1067db2007-03-17 21:57:25 +0100750 help
Frans Pope665d502008-02-01 23:09:16 +0100751 This driver provides support for the on-board IDE controller on
Kou Ishizakia1067db2007-03-17 21:57:25 +0100752 Toshiba Cell Reference Board.
753 If unsure, say Y.
754
Linus Torvalds1da177e2005-04-16 15:20:36 -0700755endif
756
757config BLK_DEV_IDE_PMAC
Frans Pope665d502008-02-01 23:09:16 +0100758 tristate "PowerMac on-board IDE support"
Tony Breeds6c28c1f2007-09-11 22:28:36 +0200759 depends on PPC_PMAC && IDE=y && BLK_DEV_IDE=y
Bartlomiej Zolnierkiewiczf06ab342008-07-16 20:33:37 +0200760 select IDE_TIMINGS
Linus Torvalds1da177e2005-04-16 15:20:36 -0700761 help
Frans Pope665d502008-02-01 23:09:16 +0100762 This driver provides support for the on-board IDE controller on
Linus Torvalds1da177e2005-04-16 15:20:36 -0700763 most of the recent Apple Power Macintoshes and PowerBooks.
764 If unsure, say Y.
765
766config BLK_DEV_IDE_PMAC_ATA100FIRST
Frans Pope665d502008-02-01 23:09:16 +0100767 bool "Probe on-board ATA/100 (Kauai) first"
Linus Torvalds1da177e2005-04-16 15:20:36 -0700768 depends on BLK_DEV_IDE_PMAC
769 help
770 This option will cause the ATA/100 controller found in UniNorth2
771 based machines (Windtunnel PowerMac, Aluminium PowerBooks, ...)
772 to be probed before the ATA/66 and ATA/33 controllers. Without
773 these, those machine used to have the hard disk on hdc and the
774 CD-ROM on hda. This option changes this to more natural hda for
775 hard disk and hdc for CD-ROM.
776
777config BLK_DEV_IDEDMA_PMAC
778 bool "PowerMac IDE DMA support"
779 depends on BLK_DEV_IDE_PMAC
Juha-Matti Tapio0ac72b32005-08-18 22:13:44 +0200780 select BLK_DEV_IDEDMA_PCI
Linus Torvalds1da177e2005-04-16 15:20:36 -0700781 help
Frans Pope665d502008-02-01 23:09:16 +0100782 This option allows the driver for the on-board IDE controller on
Linus Torvalds1da177e2005-04-16 15:20:36 -0700783 Power Macintoshes and PowerBooks to use DMA (direct memory access)
784 to transfer data to and from memory. Saying Y is safe and improves
785 performance.
786
Ralf Baechle4237f222005-11-17 16:23:50 +0000787config BLK_DEV_IDE_SWARM
788 tristate "IDE for Sibyte evaluation boards"
789 depends on SIBYTE_SB1xxx_SOC
790
Pete Popov26a940e2005-09-15 08:03:12 +0000791config BLK_DEV_IDE_AU1XXX
792 bool "IDE for AMD Alchemy Au1200"
793 depends on SOC_AU1200
794choice
795 prompt "IDE Mode for AMD Alchemy Au1200"
796 default CONFIG_BLK_DEV_IDE_AU1XXX_PIO_DBDMA
797 depends on SOC_AU1200 && BLK_DEV_IDE_AU1XXX
798
799config BLK_DEV_IDE_AU1XXX_PIO_DBDMA
800 bool "PIO+DbDMA IDE for AMD Alchemy Au1200"
801
802config BLK_DEV_IDE_AU1XXX_MDMA2_DBDMA
803 bool "MDMA2+DbDMA IDE for AMD Alchemy Au1200"
804 depends on SOC_AU1200 && BLK_DEV_IDE_AU1XXX
805endchoice
806
Pete Popov26a940e2005-09-15 08:03:12 +0000807config BLK_DEV_IDE_AU1XXX_SEQTS_PER_RQ
808 int "Maximum transfer size (KB) per request (up to 128)"
809 default "128"
Robert P. J. Daybef1f402006-12-12 20:04:19 +0100810 depends on BLK_DEV_IDE_AU1XXX
Pete Popov26a940e2005-09-15 08:03:12 +0000811
Linus Torvalds1da177e2005-04-16 15:20:36 -0700812config IDE_ARM
Bartlomiej Zolnierkiewiczade2daf2008-01-26 20:13:07 +0100813 tristate "ARM IDE support"
814 depends on ARM && (ARCH_CLPS7500 || ARCH_RPC || ARCH_SHARK)
815 default y
Linus Torvalds1da177e2005-04-16 15:20:36 -0700816
817config BLK_DEV_IDE_ICSIDE
818 tristate "ICS IDE interface support"
819 depends on ARM && ARCH_ACORN
820 help
821 On Acorn systems, say Y here if you wish to use the ICS IDE
822 interface card. This is not required for ICS partition support.
823 If you are unsure, say N to this.
824
825config BLK_DEV_IDEDMA_ICS
826 bool "ICS DMA support"
827 depends on BLK_DEV_IDE_ICSIDE
828 help
829 Say Y here if you want to add DMA (Direct Memory Access) support to
830 the ICS IDE driver.
831
Linus Torvalds1da177e2005-04-16 15:20:36 -0700832config BLK_DEV_IDE_RAPIDE
833 tristate "RapIDE interface support"
834 depends on ARM && ARCH_ACORN
835 help
836 Say Y here if you want to support the Yellowstone RapIDE controller
837 manufactured for use with Acorn computers.
838
Bartlomiej Zolnierkiewiczacfad6e2007-11-27 21:35:54 +0100839config IDE_H8300
Bartlomiej Zolnierkiewiczade2daf2008-01-26 20:13:07 +0100840 tristate "H8300 IDE support"
Bartlomiej Zolnierkiewiczacfad6e2007-11-27 21:35:54 +0100841 depends on H8300
Bartlomiej Zolnierkiewiczacfad6e2007-11-27 21:35:54 +0100842 default y
843 help
844 Enables the H8300 IDE driver.
845
Linus Torvalds1da177e2005-04-16 15:20:36 -0700846config BLK_DEV_GAYLE
Bartlomiej Zolnierkiewiczade2daf2008-01-26 20:13:07 +0100847 tristate "Amiga Gayle IDE interface support"
Linus Torvalds1da177e2005-04-16 15:20:36 -0700848 depends on AMIGA
849 help
850 This is the IDE driver for the Amiga Gayle IDE interface. It supports
851 both the `A1200 style' and `A4000 style' of the Gayle IDE interface,
Frans Pope665d502008-02-01 23:09:16 +0100852 This includes on-board IDE interfaces on some Amiga models (A600,
Linus Torvalds1da177e2005-04-16 15:20:36 -0700853 A1200, A4000, and A4000T), and IDE interfaces on the Zorro expansion
854 bus (M-Tech E-Matrix 530 expansion card).
855 Say Y if you have an Amiga with a Gayle IDE interface and want to use
856 IDE devices (hard disks, CD-ROM drives, etc.) that are connected to
857 it.
858 Note that you also have to enable Zorro bus support if you want to
859 use Gayle IDE interfaces on the Zorro expansion bus.
860
861config BLK_DEV_IDEDOUBLER
862 bool "Amiga IDE Doubler support (EXPERIMENTAL)"
863 depends on BLK_DEV_GAYLE && EXPERIMENTAL
864 ---help---
Bartlomiej Zolnierkiewicz64afc312008-05-14 23:06:16 +0200865 This feature provides support for the so-called `IDE doublers' (made
Frans Pope665d502008-02-01 23:09:16 +0100866 by various manufacturers, e.g. Eyetech) that can be connected to
867 the on-board IDE interface of some Amiga models. Using such an IDE
868 doubler, you can connect up to four instead of two IDE devices to
869 the Amiga's on-board IDE interface.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700870
871 Note that the normal Amiga Gayle IDE driver may not work correctly
Bartlomiej Zolnierkiewicz64afc312008-05-14 23:06:16 +0200872 if you have an IDE doubler and don't enable this feature!
Linus Torvalds1da177e2005-04-16 15:20:36 -0700873
Bartlomiej Zolnierkiewicz64afc312008-05-14 23:06:16 +0200874 Say Y if you have an IDE doubler. The feature is enabled at kernel
875 runtime using the "gayle.doubler" kernel boot parameter.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700876
877config BLK_DEV_BUDDHA
Bartlomiej Zolnierkiewiczade2daf2008-01-26 20:13:07 +0100878 tristate "Buddha/Catweasel/X-Surf IDE interface support (EXPERIMENTAL)"
Linus Torvalds1da177e2005-04-16 15:20:36 -0700879 depends on ZORRO && EXPERIMENTAL
880 help
Frans Pope665d502008-02-01 23:09:16 +0100881 This is the IDE driver for the IDE interfaces on the Buddha, Catweasel
882 and X-Surf expansion boards. It supports up to two interfaces on the
883 Buddha, three on the Catweasel and two on the X-Surf.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700884
885 Say Y if you have a Buddha or Catweasel expansion board and want to
886 use IDE devices (hard disks, CD-ROM drives, etc.) that are connected
887 to one of its IDE interfaces.
888
889config BLK_DEV_FALCON_IDE
Bartlomiej Zolnierkiewiczade2daf2008-01-26 20:13:07 +0100890 tristate "Falcon IDE interface support"
Linus Torvalds1da177e2005-04-16 15:20:36 -0700891 depends on ATARI
892 help
Frans Pope665d502008-02-01 23:09:16 +0100893 This is the IDE driver for the on-board IDE interface on the Atari
Linus Torvalds1da177e2005-04-16 15:20:36 -0700894 Falcon. Say Y if you have a Falcon and want to use IDE devices (hard
Frans Pope665d502008-02-01 23:09:16 +0100895 disks, CD-ROM drives, etc.) that are connected to the on-board IDE
Linus Torvalds1da177e2005-04-16 15:20:36 -0700896 interface.
897
898config BLK_DEV_MAC_IDE
Bartlomiej Zolnierkiewiczade2daf2008-01-26 20:13:07 +0100899 tristate "Macintosh Quadra/Powerbook IDE interface support"
Linus Torvalds1da177e2005-04-16 15:20:36 -0700900 depends on MAC
901 help
Frans Pope665d502008-02-01 23:09:16 +0100902 This is the IDE driver for the on-board IDE interface on some m68k
Linus Torvalds1da177e2005-04-16 15:20:36 -0700903 Macintosh models. It supports both the `Quadra style' (used in
904 Quadra/ Centris 630 and Performa 588 models) and `Powerbook style'
905 (used in the Powerbook 150 and 190 models) IDE interface.
906
907 Say Y if you have such an Macintosh model and want to use IDE
908 devices (hard disks, CD-ROM drives, etc.) that are connected to the
Frans Pope665d502008-02-01 23:09:16 +0100909 on-board IDE interface.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700910
911config BLK_DEV_Q40IDE
Bartlomiej Zolnierkiewiczade2daf2008-01-26 20:13:07 +0100912 tristate "Q40/Q60 IDE interface support"
Linus Torvalds1da177e2005-04-16 15:20:36 -0700913 depends on Q40
914 help
915 Enable the on-board IDE controller in the Q40/Q60. This should
916 normally be on; disable it only if you are running a custom hard
917 drive subsystem through an expansion card.
918
Anton Salnikov7c7e92a2008-02-06 02:57:48 +0100919config BLK_DEV_PALMCHIP_BK3710
920 tristate "Palmchip bk3710 IDE controller support"
921 depends on ARCH_DAVINCI
Bartlomiej Zolnierkiewiczf06ab342008-07-16 20:33:37 +0200922 select IDE_TIMINGS
Sergei Shtylyov8e882ba2008-02-11 00:32:14 +0100923 select BLK_DEV_IDEDMA_SFF
Anton Salnikov7c7e92a2008-02-06 02:57:48 +0100924 help
925 Say Y here if you want to support the onchip IDE controller on the
926 TI DaVinci SoC
927
928
Linus Torvalds1da177e2005-04-16 15:20:36 -0700929config BLK_DEV_MPC8xx_IDE
Bartlomiej Zolnierkiewiczade2daf2008-01-26 20:13:07 +0100930 tristate "MPC8xx IDE support"
Bartlomiej Zolnierkiewiczc5d252c2007-11-27 21:35:54 +0100931 depends on 8xx && (LWMON || IVMS8 || IVML24 || TQM8xxL) && IDE=y && BLK_DEV_IDE=y && !PPC_MERGE
Linus Torvalds1da177e2005-04-16 15:20:36 -0700932 help
933 This option provides support for IDE on Motorola MPC8xx Systems.
934 Please see 'Type of MPC8xx IDE interface' for details.
935
936 If unsure, say N.
937
938choice
939 prompt "Type of MPC8xx IDE interface"
940 depends on BLK_DEV_MPC8xx_IDE
941 default IDE_8xx_PCCARD
942
943config IDE_8xx_PCCARD
944 bool "8xx_PCCARD"
945 ---help---
946 Select how the IDE devices are connected to the MPC8xx system:
947
948 8xx_PCCARD uses the 8xx internal PCMCIA interface in combination
949 with a PC Card (e.g. ARGOSY portable Hard Disk Adapter),
950 ATA PC Card HDDs or ATA PC Flash Cards (example: TQM8xxL
951 systems)
952
953 8xx_DIRECT is used for directly connected IDE devices using the 8xx
954 internal PCMCIA interface (example: IVMS8 systems)
955
956 EXT_DIRECT is used for IDE devices directly connected to the 8xx
957 bus using some glue logic, but _not_ the 8xx internal
958 PCMCIA interface (example: IDIF860 systems)
959
960config IDE_8xx_DIRECT
961 bool "8xx_DIRECT"
962
963config IDE_EXT_DIRECT
964 bool "EXT_DIRECT"
965
966endchoice
967
968# no isa -> no vlb
Bartlomiej Zolnierkiewicze4079df2008-04-18 00:46:35 +0200969if ISA && (ALPHA || X86 || MIPS)
Linus Torvalds1da177e2005-04-16 15:20:36 -0700970
Bartlomiej Zolnierkiewicz842c19a2007-10-11 23:54:00 +0200971comment "Other IDE chipsets support"
Linus Torvalds1da177e2005-04-16 15:20:36 -0700972comment "Note: most of these also require special kernel boot parameters"
973
974config BLK_DEV_4DRIVES
Frederik Deweerdt938da772008-04-26 17:36:31 +0200975 tristate "Generic 4 drives/port support"
Linus Torvalds1da177e2005-04-16 15:20:36 -0700976 help
977 Certain older chipsets, including the Tekram 690CD, use a single set
978 of I/O ports at 0x1f0 to control up to four drives, instead of the
979 customary two drives per port. Support for this can be enabled at
Bartlomiej Zolnierkiewiczffd4f6f2008-04-18 00:46:34 +0200980 runtime using the "ide-4drives.probe" kernel boot parameter if you
981 say Y here.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700982
983config BLK_DEV_ALI14XX
984 tristate "ALI M14xx support"
Bartlomiej Zolnierkiewiczcc57ccc2008-07-16 20:33:37 +0200985 select IDE_TIMINGS
Linus Torvalds1da177e2005-04-16 15:20:36 -0700986 help
Bartlomiej Zolnierkiewicz84913882007-03-03 17:48:55 +0100987 This driver is enabled at runtime using the "ali14xx.probe" kernel
Linus Torvalds1da177e2005-04-16 15:20:36 -0700988 boot parameter. It enables support for the secondary IDE interface
989 of the ALI M1439/1443/1445/1487/1489 chipsets, and permits faster
Randy Dunlap1c10e932008-03-07 21:53:50 +0100990 I/O speeds to be set as well.
991 See the files <file:Documentation/ide/ide.txt> and
992 <file:drivers/ide/legacy/ali14xx.c> for more info.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700993
994config BLK_DEV_DTC2278
995 tristate "DTC-2278 support"
996 help
Bartlomiej Zolnierkiewicz84913882007-03-03 17:48:55 +0100997 This driver is enabled at runtime using the "dtc2278.probe" kernel
Linus Torvalds1da177e2005-04-16 15:20:36 -0700998 boot parameter. It enables support for the secondary IDE interface
999 of the DTC-2278 card, and permits faster I/O speeds to be set as
Randy Dunlap1c10e932008-03-07 21:53:50 +01001000 well. See the <file:Documentation/ide/ide.txt> and
Linus Torvalds1da177e2005-04-16 15:20:36 -07001001 <file:drivers/ide/legacy/dtc2278.c> files for more info.
1002
1003config BLK_DEV_HT6560B
1004 tristate "Holtek HT6560B support"
Bartlomiej Zolnierkiewiczb32b76f2008-07-16 20:33:37 +02001005 select IDE_TIMINGS
Linus Torvalds1da177e2005-04-16 15:20:36 -07001006 help
Bartlomiej Zolnierkiewicz84913882007-03-03 17:48:55 +01001007 This driver is enabled at runtime using the "ht6560b.probe" kernel
Linus Torvalds1da177e2005-04-16 15:20:36 -07001008 boot parameter. It enables support for the secondary IDE interface
1009 of the Holtek card, and permits faster I/O speeds to be set as well.
Randy Dunlap1c10e932008-03-07 21:53:50 +01001010 See the <file:Documentation/ide/ide.txt> and
Linus Torvalds1da177e2005-04-16 15:20:36 -07001011 <file:drivers/ide/legacy/ht6560b.c> files for more info.
1012
1013config BLK_DEV_QD65XX
1014 tristate "QDI QD65xx support"
Bartlomiej Zolnierkiewicz2feecfa2008-07-16 20:33:37 +02001015 select IDE_TIMINGS
Linus Torvalds1da177e2005-04-16 15:20:36 -07001016 help
Bartlomiej Zolnierkiewicz84913882007-03-03 17:48:55 +01001017 This driver is enabled at runtime using the "qd65xx.probe" kernel
Linus Torvalds1da177e2005-04-16 15:20:36 -07001018 boot parameter. It permits faster I/O speeds to be set. See the
Randy Dunlap1c10e932008-03-07 21:53:50 +01001019 <file:Documentation/ide/ide.txt> and <file:drivers/ide/legacy/qd65xx.c>
Frans Pope665d502008-02-01 23:09:16 +01001020 for more info.
Linus Torvalds1da177e2005-04-16 15:20:36 -07001021
1022config BLK_DEV_UMC8672
1023 tristate "UMC-8672 support"
1024 help
Bartlomiej Zolnierkiewicz84913882007-03-03 17:48:55 +01001025 This driver is enabled at runtime using the "umc8672.probe" kernel
Linus Torvalds1da177e2005-04-16 15:20:36 -07001026 boot parameter. It enables support for the secondary IDE interface
1027 of the UMC-8672, and permits faster I/O speeds to be set as well.
Randy Dunlap1c10e932008-03-07 21:53:50 +01001028 See the files <file:Documentation/ide/ide.txt> and
Linus Torvalds1da177e2005-04-16 15:20:36 -07001029 <file:drivers/ide/legacy/umc8672.c> for more info.
1030
1031endif
1032
1033config BLK_DEV_IDEDMA
Sergei Shtylyov8e882ba2008-02-11 00:32:14 +01001034 def_bool BLK_DEV_IDEDMA_SFF || BLK_DEV_IDEDMA_PMAC || \
1035 BLK_DEV_IDEDMA_ICS || BLK_DEV_IDE_AU1XXX_MDMA2_DBDMA
Linus Torvalds1da177e2005-04-16 15:20:36 -07001036
Linus Torvalds1da177e2005-04-16 15:20:36 -07001037endif
1038
1039config BLK_DEV_HD_ONLY
1040 bool "Old hard disk (MFM/RLL/IDE) driver"
Adrian Bunkefc0fc12008-06-10 20:56:38 +02001041 depends on !ARM || ARCH_RPC || ARCH_SHARK || BROKEN
Linus Torvalds1da177e2005-04-16 15:20:36 -07001042 help
1043 There are two drivers for MFM/RLL/IDE hard disks. Most people use
1044 the newer enhanced driver, but this old one is still around for two
1045 reasons. Some older systems have strange timing problems and seem to
1046 work only with the old driver (which itself does not work with some
1047 newer systems). The other reason is that the old driver is smaller,
1048 since it lacks the enhanced functionality of the new one. This makes
1049 it a good choice for systems with very tight memory restrictions, or
1050 for systems with only older MFM/RLL/ESDI drives. Choosing the old
1051 driver can save 13 KB or so of kernel memory.
1052
Bartlomiej Zolnierkiewicz80aa31c2008-04-18 00:46:24 +02001053 If you want to use this driver together with the new one you have
1054 to use "hda=noprobe hdb=noprobe" kernel parameters to prevent the new
1055 driver from probing the primary interface.
1056
Linus Torvalds1da177e2005-04-16 15:20:36 -07001057 If you are unsure, then just choose the Enhanced IDE/MFM/RLL driver
1058 instead of this one. For more detailed information, read the
1059 Disk-HOWTO, available from
1060 <http://www.tldp.org/docs.html#howto>.
1061
1062config BLK_DEV_HD
Bartlomiej Zolnierkiewicz80aa31c2008-04-18 00:46:24 +02001063 def_bool BLK_DEV_HD_ONLY
Linus Torvalds1da177e2005-04-16 15:20:36 -07001064
Jan Engelhardte0ff9cd2007-05-16 00:51:46 +02001065endif # IDE