Kconfig revision f7d7f3fd21f06c1f07d1dc9e2cc8a3c43b53faa6
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 Note that older versions of LILO (LInux LOader) cannot properly deal 207 with IDE/ATAPI CD-ROMs, so install LILO 16 or higher, available from 208 <http://lilo.go.dyndns.org/>. 209 210 To compile this driver as a module, choose M here: the 211 module will be called ide-cd. 212 213config BLK_DEV_IDETAPE 214 tristate "Include IDE/ATAPI TAPE support (EXPERIMENTAL)" 215 depends on EXPERIMENTAL 216 help 217 If you have an IDE tape drive using the ATAPI protocol, say Y. 218 ATAPI is a newer protocol used by IDE tape and CD-ROM drives, 219 similar to the SCSI protocol. If you have an SCSI tape drive 220 however, you can say N here. 221 222 You should also say Y if you have an OnStream DI-30 tape drive; this 223 will not work with the SCSI protocol, until there is support for the 224 SC-30 and SC-50 versions. 225 226 If you say Y here, the tape drive will be identified at boot time 227 along with other IDE devices, as "hdb" or "hdc", or something 228 similar, and will be mapped to a character device such as "ht0" 229 (check the boot messages with dmesg). Be sure to consult the 230 <file:drivers/ide/ide-tape.c> and <file:Documentation/ide.txt> files 231 for usage information. 232 233 To compile this driver as a module, choose M here: the 234 module will be called ide-tape. 235 236config BLK_DEV_IDEFLOPPY 237 tristate "Include IDE/ATAPI FLOPPY support" 238 ---help--- 239 If you have an IDE floppy drive which uses the ATAPI protocol, 240 answer Y. ATAPI is a newer protocol used by IDE CD-ROM/tape/floppy 241 drives, similar to the SCSI protocol. 242 243 The LS-120 and the IDE/ATAPI Iomega ZIP drive are also supported by 244 this driver. For information about jumper settings and the question 245 of when a ZIP drive uses a partition table, see 246 <http://www.win.tue.nl/~aeb/linux/zip/zip-1.html>. 247 (ATAPI PD-CD/CDR drives are not supported by this driver; support 248 for PD-CD/CDR drives is available if you answer Y to 249 "SCSI emulation support", below). 250 251 If you say Y here, the FLOPPY drive will be identified along with 252 other IDE devices, as "hdb" or "hdc", or something similar (check 253 the boot messages with dmesg). 254 255 To compile this driver as a module, choose M here: the 256 module will be called ide-floppy. 257 258config BLK_DEV_IDESCSI 259 tristate "SCSI emulation support" 260 depends on SCSI 261 ---help--- 262 WARNING: ide-scsi is no longer needed for cd writing applications! 263 The 2.6 kernel supports direct writing to ide-cd, which eliminates 264 the need for ide-scsi + the entire scsi stack just for writing a 265 cd. The new method is more efficient in every way. 266 267 This will provide SCSI host adapter emulation for IDE ATAPI devices, 268 and will allow you to use a SCSI device driver instead of a native 269 ATAPI driver. 270 271 This is useful if you have an ATAPI device for which no native 272 driver has been written (for example, an ATAPI PD-CD drive); 273 you can then use this emulation together with an appropriate SCSI 274 device driver. In order to do this, say Y here and to "SCSI support" 275 and "SCSI generic support", below. You must then provide the kernel 276 command line "hdx=ide-scsi" (try "man bootparam" or see the 277 documentation of your boot loader (lilo or loadlin) about how to 278 pass options to the kernel at boot time) for devices if you want the 279 native EIDE sub-drivers to skip over the native support, so that 280 this SCSI emulation can be used instead. 281 282 Note that this option does NOT allow you to attach SCSI devices to a 283 box that doesn't have a SCSI host adapter installed. 284 285 If both this SCSI emulation and native ATAPI support are compiled 286 into the kernel, the native support will be used. 287 288config BLK_DEV_IDEACPI 289 bool "IDE ACPI support" 290 depends on ACPI 291 ---help--- 292 Implement ACPI support for generic IDE devices. On modern 293 machines ACPI support is required to properly handle ACPI S3 states. 294 295config IDE_TASK_IOCTL 296 bool "IDE Taskfile Access" 297 help 298 This is a direct raw access to the media. It is a complex but 299 elegant solution to test and validate the domain of the hardware and 300 perform below the driver data recovery if needed. This is the most 301 basic form of media-forensics. 302 303 If you are unsure, say N here. 304 305config IDE_PROC_FS 306 bool "legacy /proc/ide/ support" 307 depends on IDE && PROC_FS 308 default y 309 help 310 This option enables support for the various files in 311 /proc/ide. In Linux 2.6 this has been superseded by 312 files in sysfs but many legacy applications rely on this. 313 314 If unsure say Y. 315 316comment "IDE chipset support/bugfixes" 317 318config IDE_GENERIC 319 tristate "generic/default IDE chipset support" 320 default H8300 321 help 322 If unsure, say N. 323 324config BLK_DEV_PLATFORM 325 tristate "Platform driver for IDE interfaces" 326 help 327 This is the platform IDE driver, used mostly for Memory Mapped 328 IDE devices, like Compact Flashes running in True IDE mode. 329 330 If unsure, say N. 331 332config BLK_DEV_CMD640 333 bool "CMD640 chipset bugfix/support" 334 depends on X86 335 ---help--- 336 The CMD-Technologies CMD640 IDE chip is used on many common 486 and 337 Pentium motherboards, usually in combination with a "Neptune" or 338 "SiS" chipset. Unfortunately, it has a number of rather nasty 339 design flaws that can cause severe data corruption under many common 340 conditions. Say Y here to include code which tries to automatically 341 detect and correct the problems under Linux. This option also 342 enables access to the secondary IDE ports in some CMD640 based 343 systems. 344 345 This driver will work automatically in PCI based systems (most new 346 systems have PCI slots). But if your system uses VESA local bus 347 (VLB) instead of PCI, you must also supply a kernel boot parameter 348 to enable the CMD640 bugfix/support: "ide0=cmd640_vlb". (Try "man 349 bootparam" or see the documentation of your boot loader about how to 350 pass options to the kernel.) 351 352 The CMD640 chip is also used on add-in cards by Acculogic, and on 353 the "CSA-6400E PCI to IDE controller" that some people have. For 354 details, read <file:Documentation/ide.txt>. 355 356config BLK_DEV_CMD640_ENHANCED 357 bool "CMD640 enhanced support" 358 depends on BLK_DEV_CMD640 359 help 360 This option includes support for setting/autotuning PIO modes and 361 prefetch on CMD640 IDE interfaces. For details, read 362 <file:Documentation/ide.txt>. If you have a CMD640 IDE interface 363 and your BIOS does not already do this for you, then say Y here. 364 Otherwise say N. 365 366config BLK_DEV_IDEPNP 367 bool "PNP EIDE support" 368 depends on PNP 369 select IDE_GENERIC 370 help 371 If you have a PnP (Plug and Play) compatible EIDE card and 372 would like the kernel to automatically detect and activate 373 it, say Y here. 374 375if PCI 376 377comment "PCI IDE chipsets support" 378 379config BLK_DEV_IDEPCI 380 bool 381 382config IDEPCI_SHARE_IRQ 383 bool "Sharing PCI IDE interrupts support" 384 depends on BLK_DEV_IDEPCI 385 help 386 Some ATA/IDE chipsets have hardware support which allows for 387 sharing a single IRQ with other cards. To enable support for 388 this in the ATA/IDE driver, say Y here. 389 390 It is safe to say Y to this question, in most cases. 391 If unsure, say N. 392 393config IDEPCI_PCIBUS_ORDER 394 def_bool BLK_DEV_IDE=y && BLK_DEV_IDEPCI 395 396# TODO: split it on per host driver config options (or module parameters) 397config BLK_DEV_OFFBOARD 398 bool "Boot off-board chipsets first support" 399 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) 400 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 409 If you say Y here, and you actually want to reverse the device scan 410 order as explained above, you also need to issue the kernel command 411 line option "ide=reverse". (Try "man bootparam" or see the 412 documentation of your boot loader (lilo or loadlin) about how to 413 pass options to the kernel at boot time.) 414 415 Note that, if you do this, the order of the hd* devices will be 416 rearranged which may require modification of fstab and other files. 417 418 If in doubt, say N. 419 420config BLK_DEV_GENERIC 421 tristate "Generic PCI IDE Chipset Support" 422 select BLK_DEV_IDEPCI 423 help 424 This option provides generic support for various PCI IDE Chipsets 425 which otherwise might not be supported. 426 427config BLK_DEV_OPTI621 428 tristate "OPTi 82C621 chipset enhanced support (EXPERIMENTAL)" 429 depends on EXPERIMENTAL 430 select BLK_DEV_IDEPCI 431 help 432 This is a driver for the OPTi 82C621 EIDE controller. 433 Please read the comments at the top of <file:drivers/ide/pci/opti621.c>. 434 435config BLK_DEV_RZ1000 436 tristate "RZ1000 chipset bugfix/support" 437 depends on X86 438 select BLK_DEV_IDEPCI 439 help 440 The PC-Technologies RZ1000 IDE chip is used on many common 486 and 441 Pentium motherboards, usually along with the "Neptune" chipset. 442 Unfortunately, it has a rather nasty design flaw that can cause 443 severe data corruption under many conditions. Say Y here to include 444 code which automatically detects and corrects the problem under 445 Linux. This may slow disk throughput by a few percent, but at least 446 things will operate 100% reliably. 447 448config BLK_DEV_IDEDMA_PCI 449 bool 450 select BLK_DEV_IDEPCI 451 452config BLK_DEV_AEC62XX 453 tristate "AEC62XX chipset support" 454 select BLK_DEV_IDEDMA_PCI 455 help 456 This driver adds explicit support for Acard AEC62xx (Artop ATP8xx) 457 IDE controllers. This allows the kernel to change PIO, DMA and UDMA 458 speeds and to configure the chip to optimum performance. 459 460config BLK_DEV_ALI15X3 461 tristate "ALI M15x3 chipset support" 462 select BLK_DEV_IDEDMA_PCI 463 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 468 If you say Y here, you also need to say Y to "Use DMA by default 469 when available", above. Please read the comments at the top of 470 <file:drivers/ide/pci/alim15x3.c>. 471 472 If unsure, say N. 473 474config WDC_ALI15X3 475 bool "ALI M15x3 WDC support (DANGEROUS)" 476 depends on BLK_DEV_ALI15X3 477 ---help--- 478 This allows for UltraDMA support for WDC drives that ignore CRC 479 checking. You are a fool for enabling this option, but there have 480 been requests. DO NOT COMPLAIN IF YOUR DRIVE HAS FS CORRUPTION, IF 481 YOU ENABLE THIS! No one will listen, just laugh for ignoring this 482 SERIOUS WARNING. 483 484 Using this option can allow WDC drives to run at ATA-4/5 transfer 485 rates with only an ATA-2 support structure. 486 487 SAY N! 488 489config BLK_DEV_AMD74XX 490 tristate "AMD and nVidia IDE support" 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 BLK_DEV_GAYLE 891 bool "Amiga Gayle IDE interface support" 892 depends on AMIGA 893 select IDE_GENERIC 894 help 895 This is the IDE driver for the Amiga Gayle IDE interface. It supports 896 both the `A1200 style' and `A4000 style' of the Gayle IDE interface, 897 This includes builtin IDE interfaces on some Amiga models (A600, 898 A1200, A4000, and A4000T), and IDE interfaces on the Zorro expansion 899 bus (M-Tech E-Matrix 530 expansion card). 900 Say Y if you have an Amiga with a Gayle IDE interface and want to use 901 IDE devices (hard disks, CD-ROM drives, etc.) that are connected to 902 it. 903 Note that you also have to enable Zorro bus support if you want to 904 use Gayle IDE interfaces on the Zorro expansion bus. 905 906config BLK_DEV_IDEDOUBLER 907 bool "Amiga IDE Doubler support (EXPERIMENTAL)" 908 depends on BLK_DEV_GAYLE && EXPERIMENTAL 909 ---help--- 910 This driver provides support for the so-called `IDE doublers' (made 911 by various manufacturers, e.g. Eyetech) that can be connected to the 912 builtin IDE interface of some Amiga models. Using such an IDE 913 doubler, you can connect up to four instead of two IDE devices on 914 the Amiga's builtin IDE interface. 915 916 Note that the normal Amiga Gayle IDE driver may not work correctly 917 if you have an IDE doubler and don't enable this driver! 918 919 Say Y if you have an IDE doubler. The driver is enabled at kernel 920 runtime using the "ide=doubler" kernel boot parameter. 921 922config BLK_DEV_BUDDHA 923 bool "Buddha/Catweasel/X-Surf IDE interface support (EXPERIMENTAL)" 924 depends on ZORRO && EXPERIMENTAL 925 select IDE_GENERIC 926 help 927 This is the IDE driver for the IDE interfaces on the Buddha, 928 Catweasel and X-Surf expansion boards. It supports up to two interfaces 929 on the Buddha, three on the Catweasel and two on the X-Surf. 930 931 Say Y if you have a Buddha or Catweasel expansion board and want to 932 use IDE devices (hard disks, CD-ROM drives, etc.) that are connected 933 to one of its IDE interfaces. 934 935config BLK_DEV_FALCON_IDE 936 bool "Falcon IDE interface support" 937 depends on ATARI 938 select IDE_GENERIC 939 help 940 This is the IDE driver for the builtin IDE interface on the Atari 941 Falcon. Say Y if you have a Falcon and want to use IDE devices (hard 942 disks, CD-ROM drives, etc.) that are connected to the builtin IDE 943 interface. 944 945config BLK_DEV_MAC_IDE 946 bool "Macintosh Quadra/Powerbook IDE interface support" 947 depends on MAC 948 select IDE_GENERIC 949 help 950 This is the IDE driver for the builtin IDE interface on some m68k 951 Macintosh models. It supports both the `Quadra style' (used in 952 Quadra/ Centris 630 and Performa 588 models) and `Powerbook style' 953 (used in the Powerbook 150 and 190 models) IDE interface. 954 955 Say Y if you have such an Macintosh model and want to use IDE 956 devices (hard disks, CD-ROM drives, etc.) that are connected to the 957 builtin IDE interface. 958 959config BLK_DEV_Q40IDE 960 bool "Q40/Q60 IDE interface support" 961 depends on Q40 962 select IDE_GENERIC 963 help 964 Enable the on-board IDE controller in the Q40/Q60. This should 965 normally be on; disable it only if you are running a custom hard 966 drive subsystem through an expansion card. 967 968config BLK_DEV_MPC8xx_IDE 969 bool "MPC8xx IDE support" 970 depends on 8xx && IDE=y && BLK_DEV_IDE=y && !PPC_MERGE 971 select IDE_GENERIC 972 help 973 This option provides support for IDE on Motorola MPC8xx Systems. 974 Please see 'Type of MPC8xx IDE interface' for details. 975 976 If unsure, say N. 977 978choice 979 prompt "Type of MPC8xx IDE interface" 980 depends on BLK_DEV_MPC8xx_IDE 981 default IDE_8xx_PCCARD 982 983config IDE_8xx_PCCARD 984 bool "8xx_PCCARD" 985 ---help--- 986 Select how the IDE devices are connected to the MPC8xx system: 987 988 8xx_PCCARD uses the 8xx internal PCMCIA interface in combination 989 with a PC Card (e.g. ARGOSY portable Hard Disk Adapter), 990 ATA PC Card HDDs or ATA PC Flash Cards (example: TQM8xxL 991 systems) 992 993 8xx_DIRECT is used for directly connected IDE devices using the 8xx 994 internal PCMCIA interface (example: IVMS8 systems) 995 996 EXT_DIRECT is used for IDE devices directly connected to the 8xx 997 bus using some glue logic, but _not_ the 8xx internal 998 PCMCIA interface (example: IDIF860 systems) 999 1000config IDE_8xx_DIRECT 1001 bool "8xx_DIRECT" 1002 1003config IDE_EXT_DIRECT 1004 bool "EXT_DIRECT" 1005 1006endchoice 1007 1008# no isa -> no vlb 1009if ISA 1010 1011comment "Other IDE chipsets support" 1012comment "Note: most of these also require special kernel boot parameters" 1013 1014config BLK_DEV_4DRIVES 1015 bool "Generic 4 drives/port support" 1016 help 1017 Certain older chipsets, including the Tekram 690CD, use a single set 1018 of I/O ports at 0x1f0 to control up to four drives, instead of the 1019 customary two drives per port. Support for this can be enabled at 1020 runtime using the "ide0=four" kernel boot parameter if you say Y 1021 here. 1022 1023config BLK_DEV_ALI14XX 1024 tristate "ALI M14xx support" 1025 help 1026 This driver is enabled at runtime using the "ali14xx.probe" kernel 1027 boot parameter. It enables support for the secondary IDE interface 1028 of the ALI M1439/1443/1445/1487/1489 chipsets, and permits faster 1029 I/O speeds to be set as well. See the files 1030 <file:Documentation/ide.txt> and <file:drivers/ide/legacy/ali14xx.c> for 1031 more info. 1032 1033config BLK_DEV_DTC2278 1034 tristate "DTC-2278 support" 1035 help 1036 This driver is enabled at runtime using the "dtc2278.probe" kernel 1037 boot parameter. It enables support for the secondary IDE interface 1038 of the DTC-2278 card, and permits faster I/O speeds to be set as 1039 well. See the <file:Documentation/ide.txt> and 1040 <file:drivers/ide/legacy/dtc2278.c> files for more info. 1041 1042config BLK_DEV_HT6560B 1043 tristate "Holtek HT6560B support" 1044 help 1045 This driver is enabled at runtime using the "ht6560b.probe" kernel 1046 boot parameter. It enables support for the secondary IDE interface 1047 of the Holtek card, and permits faster I/O speeds to be set as well. 1048 See the <file:Documentation/ide.txt> and 1049 <file:drivers/ide/legacy/ht6560b.c> files for more info. 1050 1051config BLK_DEV_QD65XX 1052 tristate "QDI QD65xx support" 1053 help 1054 This driver is enabled at runtime using the "qd65xx.probe" kernel 1055 boot parameter. It permits faster I/O speeds to be set. See the 1056 <file:Documentation/ide.txt> and <file:drivers/ide/legacy/qd65xx.c> for 1057 more info. 1058 1059config BLK_DEV_UMC8672 1060 tristate "UMC-8672 support" 1061 help 1062 This driver is enabled at runtime using the "umc8672.probe" kernel 1063 boot parameter. It enables support for the secondary IDE interface 1064 of the UMC-8672, and permits faster I/O speeds to be set as well. 1065 See the files <file:Documentation/ide.txt> and 1066 <file:drivers/ide/legacy/umc8672.c> for more info. 1067 1068endif 1069 1070config BLK_DEV_IDEDMA 1071 def_bool BLK_DEV_IDEDMA_PCI || BLK_DEV_IDEDMA_PMAC || BLK_DEV_IDEDMA_ICS || BLK_DEV_IDE_AU1XXX_MDMA2_DBDMA 1072 1073config IDE_ARCH_OBSOLETE_INIT 1074 def_bool ALPHA || (ARM && !ARCH_L7200) || BLACKFIN || X86 || IA64 || M32R || MIPS || PARISC || PPC || (SUPERH64 && BLK_DEV_IDEPCI) || SPARC 1075 1076endif 1077 1078config BLK_DEV_HD_ONLY 1079 bool "Old hard disk (MFM/RLL/IDE) driver" 1080 depends on BLK_DEV_IDE=n 1081 help 1082 There are two drivers for MFM/RLL/IDE hard disks. Most people use 1083 the newer enhanced driver, but this old one is still around for two 1084 reasons. Some older systems have strange timing problems and seem to 1085 work only with the old driver (which itself does not work with some 1086 newer systems). The other reason is that the old driver is smaller, 1087 since it lacks the enhanced functionality of the new one. This makes 1088 it a good choice for systems with very tight memory restrictions, or 1089 for systems with only older MFM/RLL/ESDI drives. Choosing the old 1090 driver can save 13 KB or so of kernel memory. 1091 1092 If you are unsure, then just choose the Enhanced IDE/MFM/RLL driver 1093 instead of this one. For more detailed information, read the 1094 Disk-HOWTO, available from 1095 <http://www.tldp.org/docs.html#howto>. 1096 1097config BLK_DEV_HD 1098 def_bool BLK_DEV_HD_IDE || BLK_DEV_HD_ONLY 1099 1100endif # IDE 1101