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