Kconfig revision ec7748b59e214e2c6b7d21ca5f26a760fd6e142b
1# 2# IDE ATA ATAPI Block device driver configuration 3# 4# Andre Hedrick <andre@linux-ide.org> 5# 6 7# Select HAVE_IDE if IDE is supported 8config HAVE_IDE 9 def_bool n 10 11menuconfig IDE 12 tristate "ATA/ATAPI/MFM/RLL support" 13 depends on HAVE_IDE 14 depends on BLOCK 15 ---help--- 16 If you say Y here, your kernel will be able to manage low cost mass 17 storage units such as ATA/(E)IDE and ATAPI units. The most common 18 cases are IDE hard drives and ATAPI CD-ROM drives. 19 20 If your system is pure SCSI and doesn't use these interfaces, you 21 can say N here. 22 23 Integrated Disk Electronics (IDE aka ATA-1) is a connecting standard 24 for mass storage units such as hard disks. It was designed by 25 Western Digital and Compaq Computer in 1984. It was then named 26 ST506. Quite a number of disks use the IDE interface. 27 28 AT Attachment (ATA) is the superset of the IDE specifications. 29 ST506 was also called ATA-1. 30 31 Fast-IDE is ATA-2 (also named Fast ATA), Enhanced IDE (EIDE) is 32 ATA-3. It provides support for larger disks (up to 8.4GB by means of 33 the LBA standard), more disks (4 instead of 2) and for other mass 34 storage units such as tapes and cdrom. UDMA/33 (aka UltraDMA/33) is 35 ATA-4 and provides faster (and more CPU friendly) transfer modes 36 than previous PIO (Programmed processor Input/Output) from previous 37 ATA/IDE standards by means of fast DMA controllers. 38 39 ATA Packet Interface (ATAPI) is a protocol used by EIDE tape and 40 CD-ROM drives, similar in many respects to the SCSI protocol. 41 42 SMART IDE (Self Monitoring, Analysis and Reporting Technology) was 43 designed in order to prevent data corruption and disk crash by 44 detecting pre hardware failure conditions (heat, access time, and 45 the like...). Disks built since June 1995 may follow this standard. 46 The kernel itself doesn't manage this; however there are quite a 47 number of user programs such as smart that can query the status of 48 SMART parameters from disk drives. 49 50 To compile this driver as a module, choose M here: the 51 module will be called ide. 52 53 For further information, please read <file:Documentation/ide.txt>. 54 55 If unsure, say Y. 56 57if IDE 58 59config IDE_MAX_HWIFS 60 int "Max IDE interfaces" 61 depends on ALPHA || SUPERH || IA64 || EMBEDDED 62 range 1 10 63 default 4 64 help 65 This is the maximum number of IDE hardware interfaces that will 66 be supported by the driver. Make sure it is at least as high as 67 the number of IDE interfaces in your system. 68 69config BLK_DEV_IDE 70 tristate "Enhanced IDE/MFM/RLL disk/cdrom/tape/floppy support" 71 ---help--- 72 If you say Y here, you will use the full-featured IDE driver to 73 control up to ten ATA/IDE interfaces, each being able to serve a 74 "master" and a "slave" device, for a total of up to twenty ATA/IDE 75 disk/cdrom/tape/floppy drives. 76 77 Useful information about large (>540 MB) IDE disks, multiple 78 interfaces, what to do if ATA/IDE devices are not automatically 79 detected, sound card ATA/IDE ports, module support, and other 80 topics, is contained in <file:Documentation/ide.txt>. For detailed 81 information about hard drives, consult the Disk-HOWTO and the 82 Multi-Disk-HOWTO, available from 83 <http://www.tldp.org/docs.html#howto>. 84 85 To fine-tune ATA/IDE drive/interface parameters for improved 86 performance, look for the hdparm package at 87 <ftp://ibiblio.org/pub/Linux/system/hardware/>. 88 89 To compile this driver as a module, choose M here and read 90 <file:Documentation/ide.txt>. The module will be called ide-mod. 91 Do not compile this driver as a module if your root file system (the 92 one containing the directory /) is located on an IDE device. 93 94 If you have one or more IDE drives, say Y or M here. If your system 95 has no IDE drives, or if memory requirements are really tight, you 96 could say N here, and select the "Old hard disk driver" below 97 instead to save about 13 KB of memory in the kernel. 98 99if BLK_DEV_IDE 100 101comment "Please see Documentation/ide.txt for help/info on IDE drives" 102 103config BLK_DEV_IDE_SATA 104 bool "Support for SATA (deprecated; conflicts with libata SATA driver)" 105 default n 106 ---help--- 107 There are two drivers for Serial ATA controllers. 108 109 The main driver, "libata", uses the SCSI subsystem 110 and supports most modern SATA controllers. In order to use it 111 you may take a look at "Serial ATA (prod) and Parallel ATA 112 (experimental) drivers". 113 114 The IDE driver (which you are currently configuring) supports 115 a few first-generation SATA controllers. 116 117 In order to eliminate conflicts between the two subsystems, 118 this config option enables the IDE driver's SATA support. 119 Normally this is disabled, as it is preferred that libata 120 supports SATA controllers, and this (IDE) driver supports 121 PATA controllers. 122 123 If unsure, say N. 124 125config BLK_DEV_HD_IDE 126 bool "Use old disk-only driver on primary interface" 127 depends on (X86 || SH_MPC1211) 128 ---help--- 129 There are two drivers for MFM/RLL/IDE disks. Most people use just 130 the new enhanced driver by itself. This option however installs the 131 old hard disk driver to control the primary IDE/disk interface in 132 the system, leaving the new enhanced IDE driver to take care of only 133 the 2nd/3rd/4th IDE interfaces. Doing this will prevent you from 134 having an IDE/ATAPI CD-ROM or tape drive connected to the primary 135 IDE interface. Choosing this option may be useful for older systems 136 which have MFM/RLL/ESDI controller+drives at the primary port 137 address (0x1f0), along with IDE drives at the secondary/3rd/4th port 138 addresses. 139 140 Normally, just say N here; you will then use the new driver for all 141 4 interfaces. 142 143config BLK_DEV_IDEDISK 144 tristate "Include IDE/ATA-2 DISK support" 145 ---help--- 146 This will include enhanced support for MFM/RLL/IDE hard disks. If 147 you have a MFM/RLL/IDE disk, and there is no special reason to use 148 the old hard disk driver instead, say Y. If you have an SCSI-only 149 system, you can say N here. 150 151 To compile this driver as a module, choose M here: the 152 module will be called ide-disk. 153 Do not compile this driver as a module if your root file system 154 (the one containing the directory /) is located on the IDE disk. 155 156 If unsure, say Y. 157 158config IDEDISK_MULTI_MODE 159 bool "Use multiple sector mode for Programmed Input/Output by default" 160 help 161 This setting is irrelevant for most IDE disks, with direct memory 162 access, to which multiple sector mode does not apply. Multiple sector 163 mode is a feature of most modern IDE hard drives, permitting the 164 transfer of multiple sectors per Programmed Input/Output interrupt, 165 rather than the usual one sector per interrupt. When this feature is 166 enabled, it can reduce operating system overhead for disk Programmed 167 Input/Output. On some systems, it also can increase the data 168 throughput of Programmed Input/Output. Some drives, however, seemed 169 to run slower with multiple sector mode enabled. Some drives claimed 170 to support multiple sector mode, but lost data at some settings. 171 Under rare circumstances, such failures could result in massive 172 filesystem corruption. 173 174 If you get the following error, try to say Y here: 175 176 hda: set_multmode: status=0x51 { DriveReady SeekComplete Error } 177 hda: set_multmode: error=0x04 { DriveStatusError } 178 179 If in doubt, say N. 180 181config BLK_DEV_IDECS 182 tristate "PCMCIA IDE support" 183 depends on PCMCIA 184 help 185 Support for Compact Flash cards, outboard IDE disks, tape drives, 186 and CD-ROM drives connected through a PCMCIA card. 187 188config BLK_DEV_DELKIN 189 tristate "Cardbus IDE support (Delkin/ASKA/Workbit)" 190 depends on CARDBUS && PCI 191 help 192 Support for Delkin, ASKA, and Workbit Cardbus CompactFlash 193 Adapters. This may also work for similar SD and XD adapters. 194 195config BLK_DEV_IDECD 196 tristate "Include IDE/ATAPI CDROM support" 197 ---help--- 198 If you have a CD-ROM drive using the ATAPI protocol, say Y. ATAPI is 199 a newer protocol used by IDE CD-ROM and TAPE drives, similar to the 200 SCSI protocol. Most new CD-ROM drives use ATAPI, including the 201 NEC-260, Mitsumi FX400, Sony 55E, and just about all non-SCSI 202 double(2X) or better speed drives. 203 204 If you say Y here, the CD-ROM drive will be identified at boot time 205 along with other IDE devices, as "hdb" or "hdc", or something 206 similar (check the boot messages with dmesg). If this is your only 207 CD-ROM drive, you can say N to all other CD-ROM options, but be sure 208 to say Y or M to "ISO 9660 CD-ROM file system support". 209 210 To compile this driver as a module, choose M here: the 211 module will be called ide-cd. 212 213config BLK_DEV_IDECD_VERBOSE_ERRORS 214 bool "Verbose error logging for IDE/ATAPI CDROM driver" if EMBEDDED 215 depends on BLK_DEV_IDECD 216 default y 217 help 218 Turn this on to have the driver print out the meanings of the 219 ATAPI error codes. This will use up additional 8kB of kernel-space 220 memory, though. 221 222config BLK_DEV_IDETAPE 223 tristate "Include IDE/ATAPI TAPE support" 224 help 225 If you have an IDE tape drive using the ATAPI protocol, say Y. 226 ATAPI is a newer protocol used by IDE tape and CD-ROM drives, 227 similar to the SCSI protocol. If you have an SCSI tape drive 228 however, you can say N here. 229 230 You should also say Y if you have an OnStream DI-30 tape drive; this 231 will not work with the SCSI protocol, until there is support for the 232 SC-30 and SC-50 versions. 233 234 If you say Y here, the tape drive will be identified at boot time 235 along with other IDE devices, as "hdb" or "hdc", or something 236 similar, and will be mapped to a character device such as "ht0" 237 (check the boot messages with dmesg). Be sure to consult the 238 <file:drivers/ide/ide-tape.c> and <file:Documentation/ide.txt> files 239 for usage information. 240 241 To compile this driver as a module, choose M here: the 242 module will be called ide-tape. 243 244config BLK_DEV_IDEFLOPPY 245 tristate "Include IDE/ATAPI FLOPPY support" 246 ---help--- 247 If you have an IDE floppy drive which uses the ATAPI protocol, 248 answer Y. ATAPI is a newer protocol used by IDE CD-ROM/tape/floppy 249 drives, similar to the SCSI protocol. 250 251 The LS-120 and the IDE/ATAPI Iomega ZIP drive are also supported by 252 this driver. For information about jumper settings and the question 253 of when a ZIP drive uses a partition table, see 254 <http://www.win.tue.nl/~aeb/linux/zip/zip-1.html>. 255 (ATAPI PD-CD/CDR drives are not supported by this driver; support 256 for PD-CD/CDR drives is available if you answer Y to 257 "SCSI emulation support", below). 258 259 If you say Y here, the FLOPPY drive will be identified along with 260 other IDE devices, as "hdb" or "hdc", or something similar (check 261 the boot messages with dmesg). 262 263 To compile this driver as a module, choose M here: the 264 module will be called ide-floppy. 265 266config BLK_DEV_IDESCSI 267 tristate "SCSI emulation support" 268 depends on SCSI 269 ---help--- 270 WARNING: ide-scsi is no longer needed for cd writing applications! 271 The 2.6 kernel supports direct writing to ide-cd, which eliminates 272 the need for ide-scsi + the entire scsi stack just for writing a 273 cd. The new method is more efficient in every way. 274 275 This will provide SCSI host adapter emulation for IDE ATAPI devices, 276 and will allow you to use a SCSI device driver instead of a native 277 ATAPI driver. 278 279 This is useful if you have an ATAPI device for which no native 280 driver has been written (for example, an ATAPI PD-CD drive); 281 you can then use this emulation together with an appropriate SCSI 282 device driver. In order to do this, say Y here and to "SCSI support" 283 and "SCSI generic support", below. You must then provide the kernel 284 command line "hdx=ide-scsi" (try "man bootparam" or see the 285 documentation of your boot loader (lilo or loadlin) about how to 286 pass options to the kernel at boot time) for devices if you want the 287 native EIDE sub-drivers to skip over the native support, so that 288 this SCSI emulation can be used instead. 289 290 Note that this option does NOT allow you to attach SCSI devices to a 291 box that doesn't have a SCSI host adapter installed. 292 293 If both this SCSI emulation and native ATAPI support are compiled 294 into the kernel, the native support will be used. 295 296config BLK_DEV_IDEACPI 297 bool "IDE ACPI support" 298 depends on ACPI 299 ---help--- 300 Implement ACPI support for generic IDE devices. On modern 301 machines ACPI support is required to properly handle ACPI S3 states. 302 303config IDE_TASK_IOCTL 304 bool "IDE Taskfile Access" 305 help 306 This is a direct raw access to the media. It is a complex but 307 elegant solution to test and validate the domain of the hardware and 308 perform below the driver data recovery if needed. This is the most 309 basic form of media-forensics. 310 311 If you are unsure, say N here. 312 313config IDE_PROC_FS 314 bool "legacy /proc/ide/ support" 315 depends on IDE && PROC_FS 316 default y 317 help 318 This option enables support for the various files in 319 /proc/ide. In Linux 2.6 this has been superseded by 320 files in sysfs but many legacy applications rely on this. 321 322 If unsure say Y. 323 324comment "IDE chipset support/bugfixes" 325 326config IDE_GENERIC 327 tristate "generic/default IDE chipset support" 328 help 329 If unsure, say N. 330 331config BLK_DEV_PLATFORM 332 tristate "Platform driver for IDE interfaces" 333 help 334 This is the platform IDE driver, used mostly for Memory Mapped 335 IDE devices, like Compact Flashes running in True IDE mode. 336 337 If unsure, say N. 338 339config BLK_DEV_CMD640 340 tristate "CMD640 chipset bugfix/support" 341 depends on X86 342 ---help--- 343 The CMD-Technologies CMD640 IDE chip is used on many common 486 and 344 Pentium motherboards, usually in combination with a "Neptune" or 345 "SiS" chipset. Unfortunately, it has a number of rather nasty 346 design flaws that can cause severe data corruption under many common 347 conditions. Say Y here to include code which tries to automatically 348 detect and correct the problems under Linux. This option also 349 enables access to the secondary IDE ports in some CMD640 based 350 systems. 351 352 This driver will work automatically in PCI based systems (most new 353 systems have PCI slots). But if your system uses VESA local bus 354 (VLB) instead of PCI, you must also supply a kernel boot parameter 355 to enable the CMD640 bugfix/support: "ide0=cmd640_vlb". (Try "man 356 bootparam" or see the documentation of your boot loader about how to 357 pass options to the kernel.) 358 359 The CMD640 chip is also used on add-in cards by Acculogic, and on 360 the "CSA-6400E PCI to IDE controller" that some people have. For 361 details, read <file:Documentation/ide.txt>. 362 363config BLK_DEV_CMD640_ENHANCED 364 bool "CMD640 enhanced support" 365 depends on BLK_DEV_CMD640 366 help 367 This option includes support for setting/autotuning PIO modes and 368 prefetch on CMD640 IDE interfaces. For details, read 369 <file:Documentation/ide.txt>. If you have a CMD640 IDE interface 370 and your BIOS does not already do this for you, then say Y here. 371 Otherwise say N. 372 373config BLK_DEV_IDEPNP 374 tristate "PNP EIDE support" 375 depends on PNP 376 help 377 If you have a PnP (Plug and Play) compatible EIDE card and 378 would like the kernel to automatically detect and activate 379 it, say Y here. 380 381if PCI 382 383comment "PCI IDE chipsets support" 384 385config BLK_DEV_IDEPCI 386 bool 387 388config IDEPCI_PCIBUS_ORDER 389 bool "Probe IDE PCI devices in the PCI bus order (DEPRECATED)" 390 depends on BLK_DEV_IDE=y && BLK_DEV_IDEPCI 391 default y 392 help 393 Probe IDE PCI devices in the order in which they appear on the 394 PCI bus (i.e. 00:1f.1 PCI device before 02:01.0 PCI device) 395 instead of the order in which IDE PCI host drivers are loaded. 396 397 Please note that this method of assuring stable naming of 398 IDE devices is unreliable and use other means for achieving 399 it (i.e. udev). 400 401 If in doubt, say N. 402 403# TODO: split it on per host driver config options (or module parameters) 404config BLK_DEV_OFFBOARD 405 bool "Boot off-board chipsets first support (DEPRECATED)" 406 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) 407 help 408 Normally, IDE controllers built into the motherboard (on-board 409 controllers) are assigned to ide0 and ide1 while those on add-in PCI 410 cards (off-board controllers) are relegated to ide2 and ide3. 411 Answering Y here will allow you to reverse the situation, with 412 off-board controllers on ide0/1 and on-board controllers on ide2/3. 413 This can improve the usability of some boot managers such as lilo 414 when booting from a drive on an off-board controller. 415 416 If you say Y here, and you actually want to reverse the device scan 417 order as explained above, you also need to issue the kernel command 418 line option "ide=reverse". (Try "man bootparam" or see the 419 documentation of your boot loader (lilo or loadlin) about how to 420 pass options to the kernel at boot time.) 421 422 Note that, if you do this, the order of the hd* devices will be 423 rearranged which may require modification of fstab and other files. 424 425 Please also note that this method of assuring stable naming of 426 IDE devices is unreliable and use other means for achieving it 427 (i.e. udev). 428 429 If in doubt, say N. 430 431config BLK_DEV_GENERIC 432 tristate "Generic PCI IDE Chipset Support" 433 select BLK_DEV_IDEPCI 434 help 435 This option provides generic support for various PCI IDE Chipsets 436 which otherwise might not be supported. 437 438config BLK_DEV_OPTI621 439 tristate "OPTi 82C621 chipset enhanced support (EXPERIMENTAL)" 440 depends on EXPERIMENTAL 441 select BLK_DEV_IDEPCI 442 help 443 This is a driver for the OPTi 82C621 EIDE controller. 444 Please read the comments at the top of <file:drivers/ide/pci/opti621.c>. 445 446config BLK_DEV_RZ1000 447 tristate "RZ1000 chipset bugfix/support" 448 depends on X86 449 select BLK_DEV_IDEPCI 450 help 451 The PC-Technologies RZ1000 IDE chip is used on many common 486 and 452 Pentium motherboards, usually along with the "Neptune" chipset. 453 Unfortunately, it has a rather nasty design flaw that can cause 454 severe data corruption under many conditions. Say Y here to include 455 code which automatically detects and corrects the problem under 456 Linux. This may slow disk throughput by a few percent, but at least 457 things will operate 100% reliably. 458 459config BLK_DEV_IDEDMA_PCI 460 bool 461 select BLK_DEV_IDEPCI 462 463config BLK_DEV_AEC62XX 464 tristate "AEC62XX chipset support" 465 select BLK_DEV_IDEDMA_PCI 466 help 467 This driver adds explicit support for Acard AEC62xx (Artop ATP8xx) 468 IDE controllers. This allows the kernel to change PIO, DMA and UDMA 469 speeds and to configure the chip to optimum performance. 470 471config BLK_DEV_ALI15X3 472 tristate "ALI M15x3 chipset support" 473 select BLK_DEV_IDEDMA_PCI 474 help 475 This driver ensures (U)DMA support for ALI 1533, 1543 and 1543C 476 onboard chipsets. It also tests for Simplex mode and enables 477 normal dual channel support. 478 479 If you say Y here, you also need to say Y to "Use DMA by default 480 when available", above. Please read the comments at the top of 481 <file:drivers/ide/pci/alim15x3.c>. 482 483 If unsure, say N. 484 485config WDC_ALI15X3 486 bool "ALI M15x3 WDC support (DANGEROUS)" 487 depends on BLK_DEV_ALI15X3 488 ---help--- 489 This allows for UltraDMA support for WDC drives that ignore CRC 490 checking. You are a fool for enabling this option, but there have 491 been requests. DO NOT COMPLAIN IF YOUR DRIVE HAS FS CORRUPTION, IF 492 YOU ENABLE THIS! No one will listen, just laugh for ignoring this 493 SERIOUS WARNING. 494 495 Using this option can allow WDC drives to run at ATA-4/5 transfer 496 rates with only an ATA-2 support structure. 497 498 SAY N! 499 500config BLK_DEV_AMD74XX 501 tristate "AMD and nVidia IDE support" 502 depends on !ARM 503 select BLK_DEV_IDEDMA_PCI 504 help 505 This driver adds explicit support for AMD-7xx and AMD-8111 chips 506 and also for the nVidia nForce chip. This allows the kernel to 507 change PIO, DMA and UDMA speeds and to configure the chip to 508 optimum performance. 509 510config BLK_DEV_ATIIXP 511 tristate "ATI IXP chipset IDE support" 512 depends on X86 513 select BLK_DEV_IDEDMA_PCI 514 help 515 This driver adds explicit support for ATI IXP chipset. 516 This allows the kernel to change PIO, DMA and UDMA speeds 517 and to configure the chip to optimum performance. 518 519 Say Y here if you have an ATI IXP chipset IDE controller. 520 521config BLK_DEV_CMD64X 522 tristate "CMD64{3|6|8|9} chipset support" 523 select BLK_DEV_IDEDMA_PCI 524 help 525 Say Y here if you have an IDE controller which uses any of these 526 chipsets: CMD643, CMD646, or CMD648. 527 528config BLK_DEV_TRIFLEX 529 tristate "Compaq Triflex IDE support" 530 select BLK_DEV_IDEDMA_PCI 531 help 532 Say Y here if you have a Compaq Triflex IDE controller, such 533 as those commonly found on Compaq Pentium-Pro systems 534 535config BLK_DEV_CY82C693 536 tristate "CY82C693 chipset support" 537 select BLK_DEV_IDEDMA_PCI 538 help 539 This driver adds detection and support for the CY82C693 chipset 540 used on Digital's PC-Alpha 164SX boards. 541 542 If you say Y here, you need to say Y to "Use DMA by default 543 when available" as well. 544 545config BLK_DEV_CS5520 546 tristate "Cyrix CS5510/20 MediaGX chipset support (VERY EXPERIMENTAL)" 547 depends on EXPERIMENTAL 548 select BLK_DEV_IDEDMA_PCI 549 help 550 Include support for PIO tuning and virtual DMA on the Cyrix MediaGX 551 5510/5520 chipset. This will automatically be detected and 552 configured if found. 553 554 It is safe to say Y to this question. 555 556config BLK_DEV_CS5530 557 tristate "Cyrix/National Semiconductor CS5530 MediaGX chipset support" 558 select BLK_DEV_IDEDMA_PCI 559 help 560 Include support for UDMA on the Cyrix MediaGX 5530 chipset. This 561 will automatically be detected and configured if found. 562 563 It is safe to say Y to this question. 564 565config BLK_DEV_CS5535 566 tristate "AMD CS5535 chipset support" 567 depends on X86 && !X86_64 568 select BLK_DEV_IDEDMA_PCI 569 help 570 Include support for UDMA on the NSC/AMD CS5535 companion chipset. 571 This will automatically be detected and configured if found. 572 573 It is safe to say Y to this question. 574 575config BLK_DEV_HPT34X 576 tristate "HPT34X chipset support" 577 select BLK_DEV_IDEDMA_PCI 578 help 579 This driver adds up to 4 more EIDE devices sharing a single 580 interrupt. The HPT343 chipset in its current form is a non-bootable 581 controller; the HPT345/HPT363 chipset is a bootable (needs BIOS FIX) 582 PCI UDMA controllers. This driver requires dynamic tuning of the 583 chipset during the ide-probe at boot time. It is reported to support 584 DVD II drives, by the manufacturer. 585 586config HPT34X_AUTODMA 587 bool "HPT34X AUTODMA support (EXPERIMENTAL)" 588 depends on BLK_DEV_HPT34X && EXPERIMENTAL 589 help 590 This is a dangerous thing to attempt currently! Please read the 591 comments at the top of <file:drivers/ide/pci/hpt34x.c>. If you say Y 592 here, then say Y to "Use DMA by default when available" as well. 593 594 If unsure, say N. 595 596config BLK_DEV_HPT366 597 tristate "HPT36X/37X chipset support" 598 select BLK_DEV_IDEDMA_PCI 599 help 600 HPT366 is an Ultra DMA chipset for ATA-66. 601 HPT368 is an Ultra DMA chipset for ATA-66 RAID Based. 602 HPT370 is an Ultra DMA chipset for ATA-100. 603 HPT372 is an Ultra DMA chipset for ATA-100. 604 HPT374 is an Ultra DMA chipset for ATA-100. 605 606 This driver adds up to 4 more EIDE devices sharing a single 607 interrupt. 608 609 The HPT366 chipset in its current form is bootable. One solution 610 for this problem are special LILO commands for redirecting the 611 reference to device 0x80. The other solution is to say Y to "Boot 612 off-board chipsets first support" (CONFIG_BLK_DEV_OFFBOARD) unless 613 your mother board has the chipset natively mounted. Regardless one 614 should use the fore mentioned option and call at LILO or include 615 "ide=reverse" in LILO's append-line. 616 617 This driver requires dynamic tuning of the chipset during the 618 ide-probe at boot. It is reported to support DVD II drives, by the 619 manufacturer. 620 621config BLK_DEV_JMICRON 622 tristate "JMicron JMB36x support" 623 select BLK_DEV_IDEDMA_PCI 624 help 625 Basic support for the JMicron ATA controllers. For full support 626 use the libata drivers. 627 628config BLK_DEV_SC1200 629 tristate "National SCx200 chipset support" 630 select BLK_DEV_IDEDMA_PCI 631 help 632 This driver adds support for the on-board IDE controller on the 633 National SCx200 series of embedded x86 "Geode" systems. 634 635config BLK_DEV_PIIX 636 tristate "Intel PIIXn chipsets support" 637 select BLK_DEV_IDEDMA_PCI 638 help 639 This driver adds explicit support for Intel PIIX and ICH chips 640 and also for the Efar Victory66 (slc90e66) chip. This allows 641 the kernel to change PIO, DMA and UDMA speeds and to configure 642 the chip to optimum performance. 643 644config BLK_DEV_IT8213 645 tristate "IT8213 IDE support" 646 select BLK_DEV_IDEDMA_PCI 647 help 648 This driver adds support for the ITE 8213 IDE controller. 649 650config BLK_DEV_IT821X 651 tristate "IT821X IDE support" 652 select BLK_DEV_IDEDMA_PCI 653 help 654 This driver adds support for the ITE 8211 IDE controller and the 655 IT 8212 IDE RAID controller in both RAID and pass-through mode. 656 657config BLK_DEV_NS87415 658 tristate "NS87415 chipset support" 659 select BLK_DEV_IDEDMA_PCI 660 help 661 This driver adds detection and support for the NS87415 chip 662 (used mainly on SPARC64 and PA-RISC machines). 663 664 Please read the comments at the top of <file:drivers/ide/pci/ns87415.c>. 665 666config BLK_DEV_PDC202XX_OLD 667 tristate "PROMISE PDC202{46|62|65|67} support" 668 select BLK_DEV_IDEDMA_PCI 669 help 670 Promise Ultra33 or PDC20246 671 Promise Ultra66 or PDC20262 672 Promise Ultra100 or PDC20265/PDC20267/PDC20268 673 674 This driver adds up to 4 more EIDE devices sharing a single 675 interrupt. This add-on card is a bootable PCI UDMA controller. Since 676 multiple cards can be installed and there are BIOS ROM problems that 677 happen if the BIOS revisions of all installed cards (three-max) do 678 not match, the driver attempts to do dynamic tuning of the chipset 679 at boot-time for max-speed. Ultra33 BIOS 1.25 or newer is required 680 for more than one card. This card may require that you say Y to 681 "Special UDMA Feature". 682 683 If you say Y here, you need to say Y to "Use DMA by default when 684 available" as well. 685 686 Please read the comments at the top of 687 <file:drivers/ide/pci/pdc202xx_old.c>. 688 689 If unsure, say N. 690 691config PDC202XX_BURST 692 bool "Special UDMA Feature" 693 depends on BLK_DEV_PDC202XX_OLD 694 help 695 This option causes the pdc202xx driver to enable UDMA modes on the 696 PDC202xx even when the PDC202xx BIOS has not done so. 697 698 It was originally designed for the PDC20246/Ultra33, whose BIOS will 699 only setup UDMA on the first two PDC20246 cards. It has also been 700 used successfully on a PDC20265/Ultra100, allowing use of UDMA modes 701 when the PDC20265 BIOS has been disabled (for faster boot up). 702 703 Please read the comments at the top of 704 <file:drivers/ide/pci/pdc202xx_old.c>. 705 706 If unsure, say N. 707 708config BLK_DEV_PDC202XX_NEW 709 tristate "PROMISE PDC202{68|69|70|71|75|76|77} support" 710 select BLK_DEV_IDEDMA_PCI 711 712config BLK_DEV_SVWKS 713 tristate "ServerWorks OSB4/CSB5/CSB6 chipsets support" 714 select BLK_DEV_IDEDMA_PCI 715 help 716 This driver adds PIO/(U)DMA support for the ServerWorks OSB4/CSB5 717 chipsets. 718 719config BLK_DEV_SGIIOC4 720 tristate "Silicon Graphics IOC4 chipset ATA/ATAPI support" 721 depends on (IA64_SGI_SN2 || IA64_GENERIC) && SGI_IOC4 722 select BLK_DEV_IDEDMA_PCI 723 help 724 This driver adds PIO & MultiMode DMA-2 support for the SGI IOC4 725 chipset, which has one channel and can support two devices. 726 Please say Y here if you have an Altix System from SGI. 727 728config BLK_DEV_SIIMAGE 729 tristate "Silicon Image chipset support" 730 select BLK_DEV_IDEDMA_PCI 731 help 732 This driver adds PIO/(U)DMA support for the SI CMD680 and SII 733 3112 (Serial ATA) chips. 734 735config BLK_DEV_SIS5513 736 tristate "SiS5513 chipset support" 737 depends on X86 738 select BLK_DEV_IDEDMA_PCI 739 help 740 This driver ensures (U)DMA support for SIS5513 chipset family based 741 mainboards. 742 743 The following chipsets are supported: 744 ATA16: SiS5511, SiS5513 745 ATA33: SiS5591, SiS5597, SiS5598, SiS5600 746 ATA66: SiS530, SiS540, SiS620, SiS630, SiS640 747 ATA100: SiS635, SiS645, SiS650, SiS730, SiS735, SiS740, 748 SiS745, SiS750 749 750 If you say Y here, you need to say Y to "Use DMA by default when 751 available" as well. 752 753 Please read the comments at the top of <file:drivers/ide/pci/sis5513.c>. 754 755config BLK_DEV_SL82C105 756 tristate "Winbond SL82c105 support" 757 depends on (PPC || ARM) 758 select BLK_DEV_IDEDMA_PCI 759 help 760 If you have a Winbond SL82c105 IDE controller, say Y here to enable 761 special configuration for this chip. This is common on various CHRP 762 motherboards, but could be used elsewhere. If in doubt, say Y. 763 764config BLK_DEV_SLC90E66 765 tristate "SLC90E66 chipset support" 766 select BLK_DEV_IDEDMA_PCI 767 help 768 This driver ensures (U)DMA support for Victory66 SouthBridges for 769 SMsC with Intel NorthBridges. This is an Ultra66 based chipset. 770 The nice thing about it is that you can mix Ultra/DMA/PIO devices 771 and it will handle timing cycles. Since this is an improved 772 look-a-like to the PIIX4 it should be a nice addition. 773 774 If you say Y here, you need to say Y to "Use DMA by default when 775 available" as well. 776 777 Please read the comments at the top of 778 <file:drivers/ide/pci/slc90e66.c>. 779 780config BLK_DEV_TRM290 781 tristate "Tekram TRM290 chipset support" 782 select BLK_DEV_IDEDMA_PCI 783 help 784 This driver adds support for bus master DMA transfers 785 using the Tekram TRM290 PCI IDE chip. Volunteers are 786 needed for further tweaking and development. 787 Please read the comments at the top of <file:drivers/ide/pci/trm290.c>. 788 789config BLK_DEV_VIA82CXXX 790 tristate "VIA82CXXX chipset support" 791 select BLK_DEV_IDEDMA_PCI 792 help 793 This driver adds explicit support for VIA BusMastering IDE chips. 794 This allows the kernel to change PIO, DMA and UDMA speeds and to 795 configure the chip to optimum performance. 796 797config BLK_DEV_TC86C001 798 tristate "Toshiba TC86C001 support" 799 select BLK_DEV_IDEDMA_PCI 800 help 801 This driver adds support for Toshiba TC86C001 GOKU-S chip. 802 803config BLK_DEV_CELLEB 804 tristate "Toshiba's Cell Reference Set IDE support" 805 depends on PPC_CELLEB 806 select BLK_DEV_IDEDMA_PCI 807 help 808 This driver provides support for the on-board IDE controller on 809 Toshiba Cell Reference Board. 810 If unsure, say Y. 811 812endif 813 814config BLK_DEV_IDE_PMAC 815 tristate "PowerMac on-board IDE support" 816 depends on PPC_PMAC && IDE=y && BLK_DEV_IDE=y 817 help 818 This driver provides support for the on-board IDE controller on 819 most of the recent Apple Power Macintoshes and PowerBooks. 820 If unsure, say Y. 821 822config BLK_DEV_IDE_PMAC_ATA100FIRST 823 bool "Probe on-board ATA/100 (Kauai) first" 824 depends on BLK_DEV_IDE_PMAC 825 help 826 This option will cause the ATA/100 controller found in UniNorth2 827 based machines (Windtunnel PowerMac, Aluminium PowerBooks, ...) 828 to be probed before the ATA/66 and ATA/33 controllers. Without 829 these, those machine used to have the hard disk on hdc and the 830 CD-ROM on hda. This option changes this to more natural hda for 831 hard disk and hdc for CD-ROM. 832 833config BLK_DEV_IDEDMA_PMAC 834 bool "PowerMac IDE DMA support" 835 depends on BLK_DEV_IDE_PMAC 836 select BLK_DEV_IDEDMA_PCI 837 help 838 This option allows the driver for the on-board IDE controller on 839 Power Macintoshes and PowerBooks to use DMA (direct memory access) 840 to transfer data to and from memory. Saying Y is safe and improves 841 performance. 842 843config BLK_DEV_IDE_SWARM 844 tristate "IDE for Sibyte evaluation boards" 845 depends on SIBYTE_SB1xxx_SOC 846 847config BLK_DEV_IDE_AU1XXX 848 bool "IDE for AMD Alchemy Au1200" 849 depends on SOC_AU1200 850choice 851 prompt "IDE Mode for AMD Alchemy Au1200" 852 default CONFIG_BLK_DEV_IDE_AU1XXX_PIO_DBDMA 853 depends on SOC_AU1200 && BLK_DEV_IDE_AU1XXX 854 855config BLK_DEV_IDE_AU1XXX_PIO_DBDMA 856 bool "PIO+DbDMA IDE for AMD Alchemy Au1200" 857 858config BLK_DEV_IDE_AU1XXX_MDMA2_DBDMA 859 bool "MDMA2+DbDMA IDE for AMD Alchemy Au1200" 860 depends on SOC_AU1200 && BLK_DEV_IDE_AU1XXX 861endchoice 862 863config BLK_DEV_IDE_AU1XXX_SEQTS_PER_RQ 864 int "Maximum transfer size (KB) per request (up to 128)" 865 default "128" 866 depends on BLK_DEV_IDE_AU1XXX 867 868config IDE_ARM 869 tristate "ARM IDE support" 870 depends on ARM && (ARCH_CLPS7500 || ARCH_RPC || ARCH_SHARK) 871 default y 872 873config BLK_DEV_IDE_ICSIDE 874 tristate "ICS IDE interface support" 875 depends on ARM && ARCH_ACORN 876 help 877 On Acorn systems, say Y here if you wish to use the ICS IDE 878 interface card. This is not required for ICS partition support. 879 If you are unsure, say N to this. 880 881config BLK_DEV_IDEDMA_ICS 882 bool "ICS DMA support" 883 depends on BLK_DEV_IDE_ICSIDE 884 help 885 Say Y here if you want to add DMA (Direct Memory Access) support to 886 the ICS IDE driver. 887 888config BLK_DEV_IDE_RAPIDE 889 tristate "RapIDE interface support" 890 depends on ARM && ARCH_ACORN 891 help 892 Say Y here if you want to support the Yellowstone RapIDE controller 893 manufactured for use with Acorn computers. 894 895config BLK_DEV_IDE_BAST 896 tristate "Simtec BAST / Thorcom VR1000 IDE support" 897 depends on ARM && (ARCH_BAST || MACH_VR1000) 898 help 899 Say Y here if you want to support the onboard IDE channels on the 900 Simtec BAST or the Thorcom VR1000 901 902config ETRAX_IDE 903 tristate "ETRAX IDE support" 904 depends on CRIS && BROKEN 905 select BLK_DEV_IDEDMA 906 help 907 Enables the ETRAX IDE driver. 908 909 You can't use parallel ports or SCSI ports at the same time. 910 911config ETRAX_IDE_DELAY 912 int "Delay for drives to regain consciousness" 913 depends on ETRAX_IDE && ETRAX_ARCH_V10 914 default 15 915 help 916 Number of seconds to wait for IDE drives to spin up after an IDE 917 reset. 918 919choice 920 prompt "IDE reset pin" 921 depends on ETRAX_IDE && ETRAX_ARCH_V10 922 default ETRAX_IDE_PB7_RESET 923 924config ETRAX_IDE_PB7_RESET 925 bool "Port_PB_Bit_7" 926 help 927 IDE reset on pin 7 on port B 928 929config ETRAX_IDE_G27_RESET 930 bool "Port_G_Bit_27" 931 help 932 IDE reset on pin 27 on port G 933 934endchoice 935 936config IDE_H8300 937 tristate "H8300 IDE support" 938 depends on H8300 939 default y 940 help 941 Enables the H8300 IDE driver. 942 943config BLK_DEV_GAYLE 944 tristate "Amiga Gayle IDE interface support" 945 depends on AMIGA 946 help 947 This is the IDE driver for the Amiga Gayle IDE interface. It supports 948 both the `A1200 style' and `A4000 style' of the Gayle IDE interface, 949 This includes on-board IDE interfaces on some Amiga models (A600, 950 A1200, A4000, and A4000T), and IDE interfaces on the Zorro expansion 951 bus (M-Tech E-Matrix 530 expansion card). 952 Say Y if you have an Amiga with a Gayle IDE interface and want to use 953 IDE devices (hard disks, CD-ROM drives, etc.) that are connected to 954 it. 955 Note that you also have to enable Zorro bus support if you want to 956 use Gayle IDE interfaces on the Zorro expansion bus. 957 958config BLK_DEV_IDEDOUBLER 959 bool "Amiga IDE Doubler support (EXPERIMENTAL)" 960 depends on BLK_DEV_GAYLE && EXPERIMENTAL 961 ---help--- 962 This driver provides support for the so-called `IDE doublers' (made 963 by various manufacturers, e.g. Eyetech) that can be connected to 964 the on-board IDE interface of some Amiga models. Using such an IDE 965 doubler, you can connect up to four instead of two IDE devices to 966 the Amiga's on-board IDE interface. 967 968 Note that the normal Amiga Gayle IDE driver may not work correctly 969 if you have an IDE doubler and don't enable this driver! 970 971 Say Y if you have an IDE doubler. The driver is enabled at kernel 972 runtime using the "ide=doubler" kernel boot parameter. 973 974config BLK_DEV_BUDDHA 975 tristate "Buddha/Catweasel/X-Surf IDE interface support (EXPERIMENTAL)" 976 depends on ZORRO && EXPERIMENTAL 977 help 978 This is the IDE driver for the IDE interfaces on the Buddha, Catweasel 979 and X-Surf expansion boards. It supports up to two interfaces on the 980 Buddha, three on the Catweasel and two on the X-Surf. 981 982 Say Y if you have a Buddha or Catweasel expansion board and want to 983 use IDE devices (hard disks, CD-ROM drives, etc.) that are connected 984 to one of its IDE interfaces. 985 986config BLK_DEV_FALCON_IDE 987 tristate "Falcon IDE interface support" 988 depends on ATARI 989 help 990 This is the IDE driver for the on-board IDE interface on the Atari 991 Falcon. Say Y if you have a Falcon and want to use IDE devices (hard 992 disks, CD-ROM drives, etc.) that are connected to the on-board IDE 993 interface. 994 995config BLK_DEV_MAC_IDE 996 tristate "Macintosh Quadra/Powerbook IDE interface support" 997 depends on MAC 998 help 999 This is the IDE driver for the on-board IDE interface on some m68k 1000 Macintosh models. It supports both the `Quadra style' (used in 1001 Quadra/ Centris 630 and Performa 588 models) and `Powerbook style' 1002 (used in the Powerbook 150 and 190 models) IDE interface. 1003 1004 Say Y if you have such an Macintosh model and want to use IDE 1005 devices (hard disks, CD-ROM drives, etc.) that are connected to the 1006 on-board IDE interface. 1007 1008config BLK_DEV_Q40IDE 1009 tristate "Q40/Q60 IDE interface support" 1010 depends on Q40 1011 help 1012 Enable the on-board IDE controller in the Q40/Q60. This should 1013 normally be on; disable it only if you are running a custom hard 1014 drive subsystem through an expansion card. 1015 1016config BLK_DEV_PALMCHIP_BK3710 1017 tristate "Palmchip bk3710 IDE controller support" 1018 depends on ARCH_DAVINCI 1019 select BLK_DEV_IDEDMA_PCI 1020 help 1021 Say Y here if you want to support the onchip IDE controller on the 1022 TI DaVinci SoC 1023 1024 1025config BLK_DEV_MPC8xx_IDE 1026 tristate "MPC8xx IDE support" 1027 depends on 8xx && (LWMON || IVMS8 || IVML24 || TQM8xxL) && IDE=y && BLK_DEV_IDE=y && !PPC_MERGE 1028 help 1029 This option provides support for IDE on Motorola MPC8xx Systems. 1030 Please see 'Type of MPC8xx IDE interface' for details. 1031 1032 If unsure, say N. 1033 1034choice 1035 prompt "Type of MPC8xx IDE interface" 1036 depends on BLK_DEV_MPC8xx_IDE 1037 default IDE_8xx_PCCARD 1038 1039config IDE_8xx_PCCARD 1040 bool "8xx_PCCARD" 1041 ---help--- 1042 Select how the IDE devices are connected to the MPC8xx system: 1043 1044 8xx_PCCARD uses the 8xx internal PCMCIA interface in combination 1045 with a PC Card (e.g. ARGOSY portable Hard Disk Adapter), 1046 ATA PC Card HDDs or ATA PC Flash Cards (example: TQM8xxL 1047 systems) 1048 1049 8xx_DIRECT is used for directly connected IDE devices using the 8xx 1050 internal PCMCIA interface (example: IVMS8 systems) 1051 1052 EXT_DIRECT is used for IDE devices directly connected to the 8xx 1053 bus using some glue logic, but _not_ the 8xx internal 1054 PCMCIA interface (example: IDIF860 systems) 1055 1056config IDE_8xx_DIRECT 1057 bool "8xx_DIRECT" 1058 1059config IDE_EXT_DIRECT 1060 bool "EXT_DIRECT" 1061 1062endchoice 1063 1064# no isa -> no vlb 1065if ISA 1066 1067comment "Other IDE chipsets support" 1068comment "Note: most of these also require special kernel boot parameters" 1069 1070config BLK_DEV_4DRIVES 1071 bool "Generic 4 drives/port support" 1072 help 1073 Certain older chipsets, including the Tekram 690CD, use a single set 1074 of I/O ports at 0x1f0 to control up to four drives, instead of the 1075 customary two drives per port. Support for this can be enabled at 1076 runtime using the "ide0=four" kernel boot parameter if you say Y 1077 here. 1078 1079config BLK_DEV_ALI14XX 1080 tristate "ALI M14xx support" 1081 help 1082 This driver is enabled at runtime using the "ali14xx.probe" kernel 1083 boot parameter. It enables support for the secondary IDE interface 1084 of the ALI M1439/1443/1445/1487/1489 chipsets, and permits faster 1085 I/O speeds to be set as well. See the files 1086 <file:Documentation/ide.txt> and <file:drivers/ide/legacy/ali14xx.c> 1087 for more info. 1088 1089config BLK_DEV_DTC2278 1090 tristate "DTC-2278 support" 1091 help 1092 This driver is enabled at runtime using the "dtc2278.probe" kernel 1093 boot parameter. It enables support for the secondary IDE interface 1094 of the DTC-2278 card, and permits faster I/O speeds to be set as 1095 well. See the <file:Documentation/ide.txt> and 1096 <file:drivers/ide/legacy/dtc2278.c> files for more info. 1097 1098config BLK_DEV_HT6560B 1099 tristate "Holtek HT6560B support" 1100 help 1101 This driver is enabled at runtime using the "ht6560b.probe" kernel 1102 boot parameter. It enables support for the secondary IDE interface 1103 of the Holtek card, and permits faster I/O speeds to be set as well. 1104 See the <file:Documentation/ide.txt> and 1105 <file:drivers/ide/legacy/ht6560b.c> files for more info. 1106 1107config BLK_DEV_QD65XX 1108 tristate "QDI QD65xx support" 1109 help 1110 This driver is enabled at runtime using the "qd65xx.probe" kernel 1111 boot parameter. It permits faster I/O speeds to be set. See the 1112 <file:Documentation/ide.txt> and <file:drivers/ide/legacy/qd65xx.c> 1113 for more info. 1114 1115config BLK_DEV_UMC8672 1116 tristate "UMC-8672 support" 1117 help 1118 This driver is enabled at runtime using the "umc8672.probe" kernel 1119 boot parameter. It enables support for the secondary IDE interface 1120 of the UMC-8672, and permits faster I/O speeds to be set as well. 1121 See the files <file:Documentation/ide.txt> and 1122 <file:drivers/ide/legacy/umc8672.c> for more info. 1123 1124endif 1125 1126config BLK_DEV_IDEDMA 1127 def_bool BLK_DEV_IDEDMA_PCI || BLK_DEV_IDEDMA_PMAC || BLK_DEV_IDEDMA_ICS || BLK_DEV_IDE_AU1XXX_MDMA2_DBDMA 1128 1129config IDE_ARCH_OBSOLETE_INIT 1130 def_bool ALPHA || (ARM && !ARCH_L7200) || BLACKFIN || X86 || IA64 || M32R || MIPS || PARISC || PPC || (SUPERH64 && BLK_DEV_IDEPCI) || SPARC 1131 1132endif 1133 1134config BLK_DEV_HD_ONLY 1135 bool "Old hard disk (MFM/RLL/IDE) driver" 1136 depends on BLK_DEV_IDE=n 1137 help 1138 There are two drivers for MFM/RLL/IDE hard disks. Most people use 1139 the newer enhanced driver, but this old one is still around for two 1140 reasons. Some older systems have strange timing problems and seem to 1141 work only with the old driver (which itself does not work with some 1142 newer systems). The other reason is that the old driver is smaller, 1143 since it lacks the enhanced functionality of the new one. This makes 1144 it a good choice for systems with very tight memory restrictions, or 1145 for systems with only older MFM/RLL/ESDI drives. Choosing the old 1146 driver can save 13 KB or so of kernel memory. 1147 1148 If you are unsure, then just choose the Enhanced IDE/MFM/RLL driver 1149 instead of this one. For more detailed information, read the 1150 Disk-HOWTO, available from 1151 <http://www.tldp.org/docs.html#howto>. 1152 1153config BLK_DEV_HD 1154 def_bool BLK_DEV_HD_IDE || BLK_DEV_HD_ONLY 1155 1156endif # IDE 1157