#
# IDE ATA ATAPI Block device driver configuration
#
# Andre Hedrick <andre@linux-ide.org>
#

menu "IDE, ATA and ATAPI Block devices"
	depends on IDE!=n

config BLK_DEV_IDE
	tristate "Enhanced IDE/MFM/RLL disk/cdrom/tape/floppy support"
	depends on IDE
	---help---
	  If you say Y here, you will use the full-featured IDE driver to
	  control up to ten ATA/IDE interfaces, each being able to serve a
	  "master" and a "slave" device, for a total of up to twenty ATA/IDE
	  disk/cdrom/tape/floppy drives.

	  Useful information about large (>540 MB) IDE disks, multiple
	  interfaces, what to do if ATA/IDE devices are not automatically
	  detected, sound card ATA/IDE ports, module support, and other
	  topics, is contained in <file:Documentation/ide.txt>. For detailed
	  information about hard drives, consult the Disk-HOWTO and the
	  Multi-Disk-HOWTO, available from
	  <http://www.tldp.org/docs.html#howto>.

	  To fine-tune ATA/IDE drive/interface parameters for improved
	  performance, look for the hdparm package at
	  <ftp://ibiblio.org/pub/Linux/system/hardware/>.

	  If you want to compile this driver as a module ( = code which can be
	  inserted in and removed from the running kernel whenever you want),
	  say M here and read <file:Documentation/modules.txt> and
	  <file:Documentation/ide.txt>. The module will be called ide-mod.
	  Do not compile this driver as a module if your root file system (the
	  one containing the directory /) is located on an IDE device.

	  If you have one or more IDE drives, say Y or M here. If your system
	  has no IDE drives, or if memory requirements are really tight, you
	  could say N here, and select the "Old hard disk driver" below
	  instead to save about 13 KB of memory in the kernel.

comment "Please see Documentation/ide.txt for help/info on IDE drives"

config BLK_DEV_HD_IDE
	bool "Use old disk-only driver on primary interface"
	depends on BLK_DEV_IDE && X86 && X86_PC9800!=y
	---help---
	  There are two drivers for MFM/RLL/IDE disks.  Most people use just
	  the new enhanced driver by itself.  This option however installs the
	  old hard disk driver to control the primary IDE/disk interface in
	  the system, leaving the new enhanced IDE driver to take care of only
	  the 2nd/3rd/4th IDE interfaces.  Doing this will prevent you from
	  having an IDE/ATAPI CD-ROM or tape drive connected to the primary
	  IDE interface.  Choosing this option may be useful for older systems
	  which have MFM/RLL/ESDI controller+drives at the primary port
	  address (0x1f0), along with IDE drives at the secondary/3rd/4th port
	  addresses.

	  Normally, just say N here; you will then use the new driver for all
	  4 interfaces.

config BLK_DEV_HD_IDE98
	bool "Use old disk-only driver on primary interface"
	depends on BLK_DEV_IDE && X86 && X86_PC9800
	---help---
	  There are two drivers for MFM/RLL/IDE disks.  Most people use just
	  the new enhanced driver by itself.  This option however installs the
	  old hard disk driver to control the primary IDE/disk interface in
	  the system, leaving the new enhanced IDE driver to take care of only
	  the 2nd/3rd/4th IDE interfaces.  Doing this will prevent you from
	  having an IDE/ATAPI CD-ROM or tape drive connected to the primary
	  IDE interface.  Choosing this option may be useful for older systems
	  which have MFM/RLL/ESDI controller+drives at the primary port
	  address (0x1f0), along with IDE drives at the secondary/3rd/4th port
	  addresses.

	  Normally, just say N here; you will then use the new driver for all
	  4 interfaces.

config BLK_DEV_HD
	bool
	default BLK_DEV_HD_ONLY if BLK_DEV_IDE=n
	default BLK_DEV_HD_IDE if BLK_DEV_IDE

config BLK_DEV_IDEDISK
	tristate "Include IDE/ATA-2 DISK support"
	depends on BLK_DEV_IDE
	---help---
	  This will include enhanced support for MFM/RLL/IDE hard disks.  If
	  you have a MFM/RLL/IDE disk, and there is no special reason to use
	  the old hard disk driver instead, say Y.  If you have an SCSI-only
	  system, you can say N here.

	  If you want to compile this driver as a module ( = code which can be
	  inserted in and removed from the running kernel whenever you want),
	  say M here and read <file:Documentation/modules.txt>.  The module
	  will be called ide-disk.  Do not compile this driver as a module
	  if your root file system (the one containing the directory /) is
	  located on the IDE disk. If unsure, say Y.

config IDEDISK_MULTI_MODE
	bool "Use multi-mode by default"
	depends on BLK_DEV_IDEDISK
	help
	  If you get this error, try to say Y here:

	  hda: set_multmode: status=0x51 { DriveReady SeekComplete Error }
	  hda: set_multmode: error=0x04 { DriveStatusError }

	  If in doubt, say N.

config IDEDISK_STROKE
	bool "Auto-Geometry Resizing support"
	depends on BLK_DEV_IDEDISK
	help
	  Should you have a system w/ an AWARD Bios and your drives are larger
	  than 32GB and it will not boot, one is required to perform a few OEM
	  operations first.  The option is called "STROKE" because it allows
	  one to "soft clip" the drive to work around a barrier limit.  For
	  Maxtor drives it is called "jumpon.exe".  Please search Maxtor's
	  web-site for "JUMPON.EXE".  IBM has a similar tool at:
	  <http://www.storage.ibm.com/hdd/support/download.htm>.

	  If you are unsure, say N here.

config BLK_DEV_IDECS
	tristate "PCMCIA IDE support"
	depends on BLK_DEV_IDE && PCMCIA
	help
	  Support for outboard IDE disks, tape drives, and CD-ROM drives
	  connected through a  PCMCIA card.

config BLK_DEV_IDECD
	tristate "Include IDE/ATAPI CDROM support"
	depends on BLK_DEV_IDE
	---help---
	  If you have a CD-ROM drive using the ATAPI protocol, say Y. ATAPI is
	  a newer protocol used by IDE CD-ROM and TAPE drives, similar to the
	  SCSI protocol. Most new CD-ROM drives use ATAPI, including the
	  NEC-260, Mitsumi FX400, Sony 55E, and just about all non-SCSI
	  double(2X) or better speed drives.

	  If you say Y here, the CD-ROM drive will be identified at boot time
	  along with other IDE devices, as "hdb" or "hdc", or something
	  similar (check the boot messages with dmesg). If this is your only
	  CD-ROM drive, you can say N to all other CD-ROM options, but be sure
	  to say Y or M to "ISO 9660 CD-ROM file system support".

	  Note that older versions of LILO (LInux LOader) cannot properly deal
	  with IDE/ATAPI CD-ROMs, so install LILO 16 or higher, available from
	  <ftp://brun.dyndns.org/pub/linux/lilo/>.

	  If you want to compile the driver as a module ( = code which can be
	  inserted in and removed from the running kernel whenever you want),
	  say M here and read <file:Documentation/modules.txt>.  The module
	  will be called ide-cd.

#dep_tristate '  Include IDE/ATAPI TAPE support' CONFIG_BLK_DEV_IDETAPE $CONFIG_BLK_DEV_IDE
config BLK_DEV_IDEFLOPPY
	tristate "Include IDE/ATAPI FLOPPY support"
	depends on BLK_DEV_IDE
	---help---
	  If you have an IDE floppy drive which uses the ATAPI protocol,
	  answer Y.  ATAPI is a newer protocol used by IDE CD-ROM/tape/floppy
	  drives, similar to the SCSI protocol.

	  The LS-120 and the IDE/ATAPI Iomega ZIP drive are also supported by
	  this driver. For information about jumper settings and the question
	  of when a ZIP drive uses a partition table, see
	  <http://www.win.tue.nl/~aeb/linux/zip/zip-1.html>.
	  (ATAPI PD-CD/CDR drives are not supported by this driver; support
	  for PD-CD/CDR drives is available if you answer Y to
	  "SCSI emulation support", below).

	  If you say Y here, the FLOPPY drive will be identified along with
	  other IDE devices, as "hdb" or "hdc", or something similar (check
	  the boot messages with dmesg).

	  If you want to compile the driver as a module ( = code which can be
	  inserted in and removed from the running kernel whenever you want),
	  say M here and read <file:Documentation/modules.txt>.  The module
	  will be called ide-floppy.

config BLK_DEV_IDESCSI
	tristate "SCSI emulation support"
	depends on BLK_DEV_IDE && SCSI
	---help---
	  This will provide SCSI host adapter emulation for IDE ATAPI devices,
	  and will allow you to use a SCSI device driver instead of a native
	  ATAPI driver.

	  This is useful if you have an ATAPI device for which no native
	  driver has been written (for example, an ATAPI PD-CD or CDR drive);
	  you can then use this emulation together with an appropriate SCSI
	  device driver. In order to do this, say Y here and to "SCSI support"
	  and "SCSI generic support", below. You must then provide the kernel
	  command line "hdx=ide-scsi" (try "man bootparam" or see the
	  documentation of your boot loader (lilo or loadlin) about how to
	  pass options to the kernel at boot time) for devices if you want the
	  native EIDE sub-drivers to skip over the native support, so that
	  this SCSI emulation can be used instead. This is required for use of
	  CD-RW's.

	  Note that this option does NOT allow you to attach SCSI devices to a
	  box that doesn't have a SCSI host adapter installed.

	  If both this SCSI emulation and native ATAPI support are compiled
	  into the kernel, the native support will be used.

config IDE_TASK_IOCTL
	bool "IDE Taskfile Access"
	depends on BLK_DEV_IDE
	help
	  This is a direct raw access to the media.  It is a complex but
	  elegant solution to test and validate the domain of the hardware and
	  perform below the driver data recover if needed.  This is the most
	  basic form of media-forensics.

	  If you are unsure, say N here.

#bool '  IDE Taskfile IO' CONFIG_IDE_TASKFILE_IO
comment "IDE chipset support/bugfixes"
	depends on BLK_DEV_IDE

config BLK_DEV_CMD640
	bool "CMD640 chipset bugfix/support"
	depends on BLK_DEV_IDE && X86
	---help---
	  The CMD-Technologies CMD640 IDE chip is used on many common 486 and
	  Pentium motherboards, usually in combination with a "Neptune" or
	  "SiS" chipset. Unfortunately, it has a number of rather nasty
	  design flaws that can cause severe data corruption under many common
	  conditions. Say Y here to include code which tries to automatically
	  detect and correct the problems under Linux. This option also
	  enables access to the secondary IDE ports in some CMD640 based
	  systems.

	  This driver will work automatically in PCI based systems (most new
	  systems have PCI slots). But if your system uses VESA local bus
	  (VLB) instead of PCI, you must also supply a kernel boot parameter
	  to enable the CMD640 bugfix/support: "ide0=cmd640_vlb". (Try "man
	  bootparam" or see the documentation of your boot loader about how to
	  pass options to the kernel.)

	  The CMD640 chip is also used on add-in cards by Acculogic, and on
	  the "CSA-6400E PCI to IDE controller" that some people have. For
	  details, read <file:Documentation/ide.txt>.

config BLK_DEV_CMD640_ENHANCED
	bool "CMD640 enhanced support"
	depends on BLK_DEV_CMD640
	help
	  This option includes support for setting/autotuning PIO modes and
	  prefetch on CMD640 IDE interfaces.  For details, read
	  <file:Documentation/ide.txt>. If you have a CMD640 IDE interface
	  and your BIOS does not already do this for you, then say Y here.
	  Otherwise say N.

config BLK_DEV_IDEPNP
	bool "PNP EIDE support"
	depends on BLK_DEV_IDE && PNP
	help
	  If you have a PnP (Plug and Play) compatible EIDE card and
	  would like the kernel to automatically detect and activate
	  it, say Y here.

config BLK_DEV_IDEPCI
	bool "PCI IDE chipset support" if PCI
	depends on BLK_DEV_IDE
	default BLK_DEV_IDEDMA_PMAC if ALL_PPC && BLK_DEV_IDEDMA_PMAC
	help
	  Say Y here for PCI systems which use IDE drive(s).
	  This option helps the IDE driver to automatically detect and
	  configure all PCI-based IDE interfaces in your system.

config BLK_DEV_GENERIC
	bool "Generic PCI IDE Chipset Support"
	depends on PCI && BLK_DEV_IDEPCI

config IDEPCI_SHARE_IRQ
	bool "Sharing PCI IDE interrupts support"
	depends on PCI && BLK_DEV_IDEPCI
	help
	  Some ATA/IDE chipsets have hardware support which allows for
	  sharing a single IRQ with other cards. To enable support for
	  this in the ATA/IDE driver, say Y here.

	  It is safe to say Y to this question, in most cases.
	  If unsure, say N.

config BLK_DEV_IDEDMA_PCI
	bool "Generic PCI bus-master DMA support"
	depends on PCI && BLK_DEV_IDEPCI
	---help---
	  If your PCI system uses IDE drive(s) (as opposed to SCSI, say) and
	  is capable of bus-master DMA operation (most Pentium PCI systems),
	  you will want to say Y here to reduce CPU overhead. You can then use
	  the "hdparm" utility to enable DMA for drives for which it was not
	  enabled automatically. By default, DMA is not enabled automatically
	  for these drives, but you can change that by saying Y to the
	  following question "Use DMA by default when available". You can get
	  the latest version of the hdparm utility from
	  <ftp://ibiblio.org/pub/Linux/system/hardware/>.

	  Read the comments at the beginning of <file:drivers/ide/ide-dma.c>
	  and the file <file:Documentation/ide.txt> for more information.

	  It is safe to say Y to this question.

config BLK_DEV_IDE_TCQ
	bool "ATA tagged command queueing (EXPERIMENTAL)"
	depends on BLK_DEV_IDEDMA_PCI && EXPERIMENTAL
	help
	  Support for tagged command queueing on ATA disk drives. This enables
	  the IDE layer to have multiple in-flight requests on hardware that
	  supports it. For now this includes the IBM Deskstar series drives,
	  such as the 22GXP, 75GXP, 40GV, 60GXP, and 120GXP (ie any Deskstar made
	  in the last couple of years), and at least some of the Western
	  Digital drives in the Expert series (by nature of really being IBM
	  drives).

	  If you have such a drive, say Y here.

config BLK_DEV_IDE_TCQ_DEFAULT
	bool "TCQ on by default"
	depends on BLK_DEV_IDE_TCQ
	---help---
	  Enable tagged command queueing unconditionally on drives that report
	  support for it. Regardless of the chosen value here, tagging can be
	  controlled at run time:

	  echo "using_tcq:32" > /proc/ide/hdX/settings

	  where any value between 1-32 selects chosen queue depth and enables
	  TCQ, and 0 disables it. hdparm version 4.7 an above also support
	  TCQ manipulations.

	  Generally say Y here.

config BLK_DEV_IDE_TCQ_DEPTH
	int "Default queue depth"
	depends on BLK_DEV_IDE_TCQ
	default "8"
	help
	  Maximum size of commands to enable per-drive. Any value between 1
	  and 32 is valid, with 32 being the maxium that the hardware supports.

	  You probably just want the default of 32 here. If you enter an invalid
	  number, the default value will be used.

config BLK_DEV_OFFBOARD
	bool "Boot off-board chipsets first support"
	depends on PCI && BLK_DEV_IDEPCI
	---help---
	  Normally, IDE controllers built into the motherboard (on-board
	  controllers) are assigned to ide0 and ide1 while those on add-in PCI
	  cards (off-board controllers) are relegated to ide2 and ide3.
	  Answering Y here will allow you to reverse the situation, with
	  off-board controllers on ide0/1 and on-board controllers on ide2/3.
	  This can improve the usability of some boot managers such as lilo
	  when booting from a drive on an off-board controller.

	  If you say Y here, and you actually want to reverse the device scan
	  order as explained above, you also need to issue the kernel command
	  line option "ide=reverse". (Try "man bootparam" or see the
	  documentation of your boot loader (lilo or loadlin) about how to
	  pass options to the kernel at boot time.)

	  Note that, if you do this, the order of the hd* devices will be
	  rearranged which may require modification of fstab and other files.

	  If in doubt, say N.

config BLK_DEV_IDEDMA_FORCED
	bool "Force enable legacy 2.0.X HOSTS to use DMA"
	depends on BLK_DEV_IDEDMA_PCI
	help
	  This is an old piece of lost code from Linux 2.0 Kernels.

	  Generally say N here.

config IDEDMA_PCI_AUTO
	bool "Use PCI DMA by default when available"
	depends on BLK_DEV_IDEDMA_PCI
	---help---
	  Prior to kernel version 2.1.112, Linux used to automatically use
	  DMA for IDE drives and chipsets which support it. Due to concerns
	  about a couple of cases where buggy hardware may have caused damage,
	  the default is now to NOT use DMA automatically. To revert to the
	  previous behaviour, say Y to this question.

	  If you suspect your hardware is at all flakey, say N here.
	  Do NOT email the IDE kernel people regarding this issue!

	  It is normally safe to answer Y to this question unless your
	  motherboard uses a VIA VP2 chipset, in which case you should say N.

config IDEDMA_ONLYDISK
	bool "Enable DMA only for disks "
	depends on IDEDMA_PCI_AUTO
	help
	  This is used if you know your ATAPI Devices are going to fail DMA
	  Transfers.

	  Generally say N here.

config BLK_DEV_IDEDMA
	bool
	depends on BLK_DEV_IDE
	default BLK_DEV_IDEDMA_ICS if ARCH_ACORN
	default BLK_DEV_IDEDMA_PMAC if ALL_PPC && BLK_DEV_IDE_PMAC
	default BLK_DEV_IDEDMA_PCI if PCI && BLK_DEV_IDEPCI

config IDEDMA_PCI_WIP
	bool "ATA Work(s) In Progress (EXPERIMENTAL)"
	depends on BLK_DEV_IDEDMA_PCI && EXPERIMENTAL
	help
	  If you enable this you will be able to use and test highly
	  developmental projects. If you say N, the configurator will
	  simply skip those options.

	  It is SAFEST to say N to this question.

config IDEDMA_NEW_DRIVE_LISTINGS
	bool "Good-Bad DMA Model-Firmware (WIP)"
	depends on IDEDMA_PCI_WIP
	help
	  If you say Y here, the model and firmware revision of your drive
	  will be compared against a blacklist of buggy drives that claim to
	  be (U)DMA capable but aren't. This is a blanket on/off test with no
	  speed limit options.

	  If in doubt, say N.

config BLK_DEV_ADMA
	bool
	depends on PCI && BLK_DEV_IDEPCI
	default BLK_DEV_IDEDMA_PCI

config BLK_DEV_AEC62XX
	tristate "AEC62XX chipset support"
	depends on BLK_DEV_IDEDMA_PCI
	help
	  This driver adds explicit support for Acard AEC62xx (Artop ATP8xx)
	  IDE controllers. This allows the kernel to change PIO, DMA and UDMA
	  speeds and to configure the chip to optimum performance.

config BLK_DEV_ALI15X3
	tristate "ALI M15x3 chipset support"
	depends on BLK_DEV_IDEDMA_PCI
	help
	  This driver ensures (U)DMA support for ALI 1533, 1543 and 1543C
	  onboard chipsets.  It also tests for Simplex mode and enables
	  normal dual channel support.

	  If you say Y here, you also need to say Y to "Use DMA by default
	  when available", above.  Please read the comments at the top of
	  <file:drivers/ide/alim15x3.c>.

	  If unsure, say N.

config WDC_ALI15X3
	bool "ALI M15x3 WDC support (DANGEROUS)"
	depends on BLK_DEV_ALI15X3
	---help---
	  This allows for UltraDMA support for WDC drives that ignore CRC
	  checking. You are a fool for enabling this option, but there have
	  been requests. DO NOT COMPLAIN IF YOUR DRIVE HAS FS CORRUPTION, IF
	  YOU ENABLE THIS! No one will listen, just laugh for ignoring this
	  SERIOUS WARNING.

	  Using this option can allow WDC drives to run at ATA-4/5 transfer
	  rates with only an ATA-2 support structure.

	  SAY N!

config BLK_DEV_AMD74XX
	tristate "AMD and nVidia IDE support"
	depends on BLK_DEV_IDEDMA_PCI
	help
	  This driver adds explicit support for AMD-7xx and AMD-8111 chips
	  and also for the nVidia nForce chip.  This allows the kernel to
	  change PIO, DMA and UDMA speeds and to configure the chip to
	  optimum performance.

config BLK_DEV_CMD64X
	tristate "CMD64{3|6|8|9} chipset support"
	depends on BLK_DEV_IDEDMA_PCI
	help
	  Say Y here if you have an IDE controller which uses any of these
	  chipsets: CMD643, CMD646, or CMD648.

config BLK_DEV_TRIFLEX
	tristate "Compaq Triflex IDE support"
	depends on BLK_DEV_IDEDMA_PCI
	help
	  Say Y here if you have a Compaq Triflex IDE controller, such
	  as those commonly found on Compaq Pentium-Pro systems

config BLK_DEV_CY82C693
	tristate "CY82C693 chipset support"
	depends on BLK_DEV_IDEDMA_PCI
	help
	  This driver adds detection and support for the CY82C693 chipset
	  used on Digital's PC-Alpha 164SX boards.

	  If you say Y here, you need to say Y to "Use DMA by default
	  when available" as well.

config BLK_DEV_CS5520
	tristate "Cyrix CS5510/20 MediaGX chipset support (VERY EXPERIMENTAL)"
	depends on BLK_DEV_IDEDMA_PCI && EXPERIMENTAL
	help
	  Include support for PIO tuning an virtual DMA on the Cyrix MediaGX 
	  5510/5520 chipset. This will automatically be detected and
	  configured if found.

	  It is safe to say Y to this question.

config BLK_DEV_CS5530
	tristate "Cyrix/National Semiconductor CS5530 MediaGX chipset support"
	depends on BLK_DEV_IDEDMA_PCIOA
	help
	  Include support for UDMA on the Cyrix MediaGX 5530 chipset. This
	  will automatically be detected and configured if found.

	  It is safe to say Y to this question.

config BLK_DEV_HPT34X
	tristate "HPT34X chipset support"
	depends on BLK_DEV_IDEDMA_PCI
	help
	  This driver adds up to 4 more EIDE devices sharing a single
	  interrupt. The HPT343 chipset in its current form is a non-bootable
	  controller; the HPT345/HPT363 chipset is a bootable (needs BIOS FIX)
	  PCI UDMA controllers. This driver requires dynamic tuning of the
	  chipset during the ide-probe at boot time. It is reported to support
	  DVD II drives, by the manufacturer.

config HPT34X_AUTODMA
	bool "HPT34X AUTODMA support (WIP)"
	depends on BLK_DEV_HPT34X && IDEDMA_PCI_WIP
	help
	  This is a dangerous thing to attempt currently! Please read the
	  comments at the top of <file:drivers/ide/hpt34x.c>.  If you say Y
	  here, then say Y to "Use DMA by default when available" as well.

	  If unsure, say N.

config BLK_DEV_HPT366
	tristate "HPT36X/37X chipset support"
	depends on BLK_DEV_IDEDMA_PCI
	---help---
	  HPT366 is an Ultra DMA chipset for ATA-66.
	  HPT368 is an Ultra DMA chipset for ATA-66 RAID Based.
	  HPT370 is an Ultra DMA chipset for ATA-100.
	  HPT372 is an Ultra DMA chipset for ATA-100.
	  HPT374 is an Ultra DMA chipset for ATA-100.

	  This driver adds up to 4 more EIDE devices sharing a single
	  interrupt.

	  The HPT366 chipset in its current form is bootable. One solution
	  for this problem are special LILO commands for redirecting the
	  reference to device 0x80. The other solution is to say Y to "Boot
	  off-board chipsets first support" (CONFIG_BLK_DEV_OFFBOARD) unless
	  your mother board has the chipset natively mounted. Regardless one
	  should use the fore mentioned option and call at LILO or include
	  "ide=reverse" in LILO's append-line.

	  This driver requires dynamic tuning of the chipset during the
	  ide-probe at boot. It is reported to support DVD II drives, by the
	  manufacturer.

config BLK_DEV_SC1200
	tristate "National SCx200 chipset support"
	depends on BLK_DEV_IDEDMA_PCI
	help
	  This driver adds support for the built in IDE on the National
	  SCx200 series of embedded x86 "Geode" systems

config BLK_DEV_PIIX
	tristate "Intel PIIXn chipsets support"
	depends on BLK_DEV_IDEDMA_PCI
	help
	  This driver adds explicit support for Intel PIIX and ICH chips
	  and also for the Efar Victory66 (slc90e66) chip.  This allows
	  the kernel to change PIO, DMA and UDMA speeds and to configure
	  the chip to optimum performance.

config BLK_DEV_IT8172
	bool "IT8172 IDE support"
	depends on (MIPS_ITE8172 || MIPS_IVR) && BLK_DEV_IDEDMA_PCI
	help
	  Say Y here to support the on-board IDE controller on the Integrated
	  Technology Express, Inc. ITE8172 SBC.  Vendor page at
	  <http://www.ite.com.tw/ia/brief_it8172bsp.htm>; picture of the
	  board at <http://www.mvista.com/allies/semiconductor/ite.html>.

config BLK_DEV_NS87415
	tristate "NS87415 chipset support"
	depends on BLK_DEV_IDEDMA_PCI
	help
	  This driver adds detection and support for the NS87415 chip
	  (used in SPARC64, among others).

	  Please read the comments at the top of <file:drivers/ide/ns87415.c>.

config BLK_DEV_OPTI621
	tristate "OPTi 82C621 chipset enhanced support (EXPERIMENTAL)"
	depends on PCI && BLK_DEV_IDEPCI && EXPERIMENTAL
	help
	  This is a driver for the OPTi 82C621 EIDE controller.
	  Please read the comments at the top of <file:drivers/ide/opti621.c>.

config BLK_DEV_PDC202XX_OLD
	tristate "PROMISE PDC202{46|62|65|67} support"
	depends on BLK_DEV_IDEDMA_PCI

config PDC202XX_BURST
	bool "Special UDMA Feature"
	depends on BLK_DEV_PDC202XX_OLD=y && CONFI_BLK_DEV_IDEDMA_PCI
	---help---
	  This option causes the pdc202xx driver to enable UDMA modes on the
	  PDC202xx even when the PDC202xx BIOS has not done so.

	  It was originally designed for the PDC20246/Ultra33, whose BIOS will
	  only setup UDMA on the first two PDC20246 cards.  It has also been
	  used succesfully on a PDC20265/Ultra100, allowing use of UDMA modes
	  when the PDC20265 BIOS has been disabled (for faster boot up).

	  Please read the comments at the top of
	  <file:drivers/ide/pdc202xx.c>.

	  If unsure, say N.

config BLK_DEV_PDC202XX_NEW
	tristate "PROMISE PDC202{68|69|70|71|75|76|77} support"
	depends on BLK_DEV_IDEDMA_PCI

# FIXME - probably wants to be one for old and for new
config PDC202XX_FORCE
	bool "Special FastTrak Feature"
	depends on BLK_DEV_PDC202XX_NEW=y
	help
	  For FastTrak enable overriding BIOS.

config BLK_DEV_RZ1000
	tristate "RZ1000 chipset bugfix/support"
	depends on PCI && BLK_DEV_IDEPCI && X86
	help
	  The PC-Technologies RZ1000 IDE chip is used on many common 486 and
	  Pentium motherboards, usually along with the "Neptune" chipset.
	  Unfortunately, it has a rather nasty design flaw that can cause
	  severe data corruption under many conditions. Say Y here to include
	  code which automatically detects and corrects the problem under
	  Linux. This may slow disk throughput by a few percent, but at least
	  things will operate 100% reliably.

config BLK_DEV_SVWKS
	tristate "ServerWorks OSB4/CSB5/CSB6 chipsets support"
	depends on BLK_DEV_IDEDMA_PCI
	help
	  This driver adds PIO/(U)DMA support for the ServerWorks OSB4/CSB5
	  chipsets.

config BLK_DEV_SIIMAGE
	tristate "Silicon Image chipset support"
	depends on BLK_DEV_IDEDMA_PCI
	help
	  This driver adds PIO/(U)DMA support for the SI CMD680 and SII
	  3112 (Serial ATA) chips.

config BLK_DEV_SIS5513
	tristate "SiS5513 chipset support"
	depends on BLK_DEV_IDEDMA_PCI && X86
	---help---
	  This driver ensures (U)DMA support for SIS5513 chipset family based
	  mainboards.

	  The following chipsets are supported:
	  ATA16:  SiS5511, SiS5513
	  ATA33:  SiS5591, SiS5597, SiS5598, SiS5600
	  ATA66:  SiS530, SiS540, SiS620, SiS630, SiS640
	  ATA100: SiS635, SiS645, SiS650, SiS730, SiS735, SiS740,
	  SiS745, SiS750

	  If you say Y here, you need to say Y to "Use DMA by default when
	  available" as well.

	  Please read the comments at the top of <file:drivers/ide/sis5513.c>.

config BLK_DEV_SLC90E66
	tristate "SLC90E66 chipset support"
	depends on BLK_DEV_IDEDMA_PCI
	help
	  This driver ensures (U)DMA support for Victroy66 SouthBridges for
	  SMsC with Intel NorthBridges.  This is an Ultra66 based chipset.
	  The nice thing about it is that you can mix Ultra/DMA/PIO devices
	  and it will handle timing cycles.  Since this is an improved
	  look-a-like to the PIIX4 it should be a nice addition.

	  If you say Y here, you need to say Y to "Use DMA by default when
	  available" as well.

	  Please read the comments at the top of
	  drivers/ide/slc90e66.c.

config BLK_DEV_TRM290
	tristate "Tekram TRM290 chipset support"
	depends on BLK_DEV_IDEDMA_PCI
	help
	  This driver adds support for bus master DMA transfers
	  using the Tekram TRM290 PCI IDE chip. Volunteers are
	  needed for further tweaking and development.
	  Please read the comments at the top of <file:drivers/ide/trm290.c>.

config BLK_DEV_VIA82CXXX
	tristate "VIA82CXXX chipset support"
	depends on BLK_DEV_IDEDMA_PCI
	help
	  This driver adds explicit support for VIA BusMastering IDE chips.
	  This allows the kernel to change PIO, DMA and UDMA speeds and to
	  configure the chip to optimum performance.

config BLK_DEV_SL82C105
	tristate "Winbond SL82c105 support"
	depends on PCI && (PPC || ARM) && BLK_DEV_IDEPCI
	help
	  If you have a Winbond SL82c105 IDE controller, say Y here to enable
	  special configuration for this chip. This is common on various CHRP
	  motherboards, but could be used elsewhere. If in doubt, say Y.

config BLK_DEV_IDE_PMAC
	bool "Builtin PowerMac IDE support"
	depends on BLK_DEV_IDE && ALL_PPC
	help
	  This driver provides support for the built-in IDE controller on
	  most of the recent Apple Power Macintoshes and PowerBooks.
	  If unsure, say Y.

config BLK_DEV_IDEDMA_PMAC
	bool "PowerMac IDE DMA support"
	depends on BLK_DEV_IDE_PMAC
	help
	  This option allows the driver for the built-in IDE controller on
	  Power Macintoshes and PowerBooks to use DMA (direct memory access)
	  to transfer data to and from memory.  Saying Y is safe and improves
	  performance.

config BLK_DEV_IDEDMA_PMAC_AUTO
	bool "Use DMA by default"
	depends on BLK_DEV_IDEDMA_PMAC
	help
	  This option allows the driver for the built-in IDE controller on
	  Power Macintoshes and PowerBooks to use DMA automatically, without
	  it having to be explicitly enabled.  This option is provided because
	  of concerns about a couple of cases where using DMA on buggy PC
	  hardware may have caused damage.  Saying Y should be safe on all
	  Apple machines.

config BLK_DEV_IDE_SWARM
	bool "SWARM onboard IDE support"
	depends on BLK_DEV_IDE && SIBYTE_SWARM

config BLK_DEV_IDE_ICSIDE
	tristate "ICS IDE interface support"
	depends on BLK_DEV_IDE!=n && ARM && ARCH_ACORN
	help
	  On Acorn systems, say Y here if you wish to use the ICS IDE
	  interface card.  This is not required for ICS partition support.
	  If you are unsure, say N to this.

config BLK_DEV_IDEDMA_ICS
	bool "ICS DMA support"
	depends on BLK_DEV_IDE_ICSIDE
	help
	  Say Y here if you want to add DMA (Direct Memory Access) support to
	  the ICS IDE driver.

config IDEDMA_ICS_AUTO
	bool "Use ICS DMA by default"
	depends on BLK_DEV_IDEDMA_ICS
	help
	  Prior to kernel version 2.1.112, Linux used to automatically use
	  DMA for IDE drives and chipsets which support it. Due to concerns
	  about a couple of cases where buggy hardware may have caused damage,
	  the default is now to NOT use DMA automatically. To revert to the
	  previous behaviour, say Y to this question.

	  If you suspect your hardware is at all flakey, say N here.
	  Do NOT email the IDE kernel people regarding this issue!

config BLK_DEV_IDE_RAPIDE
	tristate "RapIDE interface support"
	depends on BLK_DEV_IDE!=n && ARM && ARCH_ACORN
	help
	  Say Y here if you want to support the Yellowstone RapIDE controller
	  manufactured for use with Acorn computers.

config BLK_DEV_GAYLE
	bool "Amiga Gayle IDE interface support"
	depends on BLK_DEV_IDE && AMIGA
	help
	  This is the IDE driver for the builtin IDE interface on some Amiga
	  models. It supports both the `A1200 style' (used in A600 and A1200)
	  and `A4000 style' (used in A4000 and A4000T) of the Gayle IDE
	  interface. Say Y if you have such an Amiga model and want to use IDE
	  devices (hard disks, CD-ROM drives, etc.) that are connected to the
	  builtin IDE interface.

config BLK_DEV_IDEDOUBLER
	bool "Amiga IDE Doubler support (EXPERIMENTAL)"
	depends on BLK_DEV_GAYLE && EXPERIMENTAL
	---help---
	  This driver provides support for the so-called `IDE doublers' (made
	  by various manufacturers, e.g. Eyetech) that can be connected to the
	  builtin IDE interface of some Amiga models. Using such an IDE
	  doubler, you can connect up to four instead of two IDE devices on
	  the Amiga's builtin IDE interface.

	  Note that the normal Amiga Gayle IDE driver may not work correctly
	  if you have an IDE doubler and don't enable this driver!

	  Say Y if you have an IDE doubler.  The driver is enabled at kernel
	  runtime using the "ide=doubler" kernel boot parameter.

config BLK_DEV_BUDDHA
	bool "Buddha/Catweasel/X-Surf IDE interface support (EXPERIMENTAL)"
	depends on BLK_DEV_IDE && ZORRO && EXPERIMENTAL
	help
	  This is the IDE driver for the IDE interfaces on the Buddha, 
	  Catweasel and X-Surf expansion boards.  It supports up to two interfaces 
	  on the Buddha, three on the Catweasel and two on the X-Surf.

	  Say Y if you have a Buddha or Catweasel expansion board and want to
	  use IDE devices (hard disks, CD-ROM drives, etc.) that are connected
	  to one of its IDE interfaces.

config BLK_DEV_FALCON_IDE
	bool "Falcon IDE interface support"
	depends on BLK_DEV_IDE && ATARI
	help
	  This is the IDE driver for the builtin IDE interface on the Atari
	  Falcon. Say Y if you have a Falcon and want to use IDE devices (hard
	  disks, CD-ROM drives, etc.) that are connected to the builtin IDE
	  interface.

config BLK_DEV_MAC_IDE
	bool "Macintosh Quadra/Powerbook IDE interface support"
	depends on BLK_DEV_IDE && MAC
	help
	  This is the IDE driver for the builtin IDE interface on some m68k
	  Macintosh models. It supports both the `Quadra style' (used in
	  Quadra/ Centris 630 and Performa 588 models) and `Powerbook style'
	  (used in the Powerbook 150 and 190 models) IDE interface.

	  Say Y if you have such an Macintosh model and want to use IDE
	  devices (hard disks, CD-ROM drives, etc.) that are connected to the
	  builtin IDE interface.

config BLK_DEV_Q40IDE
	bool "Q40/Q60 IDE interface support"
	depends on BLK_DEV_IDE && Q40
	help
	  Enable the on-board IDE controller in the Q40/Q60.  This should
	  normally be on; disable it only if you are running a custom hard
	  drive subsystem through an expansion card.

config BLK_DEV_MPC8xx_IDE
	bool "MPC8xx IDE support"
	depends on BLK_DEV_IDE && 8xx
	help
	  This option provides support for IDE on Motorola MPC8xx Systems.
	  Please see 'Type of MPC8xx IDE interface' for details.

	  If unsure, say N.

choice
	prompt "Type of MPC8xx IDE interface"
	depends on BLK_DEV_MPC8xx_IDE
	default IDE_8xx_PCCARD

config IDE_8xx_PCCARD
	bool "8xx_PCCARD"
	---help---
	  Select how the IDE devices are connected to the MPC8xx system:

	  8xx_PCCARD uses the 8xx internal PCMCIA interface in combination
	  with a PC Card (e.g. ARGOSY portable Hard Disk Adapter),
	  ATA PC Card HDDs or ATA PC Flash Cards (example: TQM8xxL
	  systems)

	  8xx_DIRECT is used for directly connected IDE devices using the 8xx
	  internal PCMCIA interface (example: IVMS8 systems)

	  EXT_DIRECT is used for IDE devices directly connected to the 8xx
	  bus using some glue logic, but _not_ the 8xx internal
	  PCMCIA interface (example: IDIF860 systems)

config IDE_8xx_DIRECT
	bool "8xx_DIRECT"

config IDE_EXT_DIRECT
	bool "EXT_DIRECT"

endchoice

# no isa -> no vlb
config IDE_CHIPSETS
	bool "Other IDE chipset support"
	depends on BLK_DEV_IDE && ISA
	---help---
	  Say Y here if you want to include enhanced support for various IDE
	  interface chipsets used on motherboards and add-on cards. You can
	  then pick your particular IDE chip from among the following options.
	  This enhanced support may be necessary for Linux to be able to
	  access the 3rd/4th drives in some systems. It may also enable
	  setting of higher speed I/O rates to improve system performance with
	  these chipsets. Most of these also require special kernel boot
	  parameters to actually turn on the support at runtime; you can find
	  a list of these in the file <file:Documentation/ide.txt>.

	  People with SCSI-only systems can say N here.

comment "Note: most of these also require special kernel boot parameters"
	depends on BLK_DEV_IDE && IDE_CHIPSETS

config BLK_DEV_4DRIVES
	bool "Generic 4 drives/port support"
	depends on IDE_CHIPSETS
	help
	  Certain older chipsets, including the Tekram 690CD, use a single set
	  of I/O ports at 0x1f0 to control up to four drives, instead of the
	  customary two drives per port. Support for this can be enabled at
	  runtime using the "ide0=four" kernel boot parameter if you say Y
	  here.

config BLK_DEV_ALI14XX
	tristate "ALI M14xx support"
	depends on IDE_CHIPSETS && BLK_DEV_IDE
	help
	  This driver is enabled at runtime using the "ide0=ali14xx" kernel
	  boot parameter.  It enables support for the secondary IDE interface
	  of the ALI M1439/1443/1445/1487/1489 chipsets, and permits faster
	  I/O speeds to be set as well.  See the files
	  <file:Documentation/ide.txt> and <file:drivers/ide/ali14xx.c> for
	  more info.

config BLK_DEV_DTC2278
	tristate "DTC-2278 support"
	depends on IDE_CHIPSETS && BLK_DEV_IDE
	help
	  This driver is enabled at runtime using the "ide0=dtc2278" kernel
	  boot parameter. It enables support for the secondary IDE interface
	  of the DTC-2278 card, and permits faster I/O speeds to be set as
	  well. See the <file:Documentation/ide.txt> and
	  <file:drivers/ide/dtc2278.c> files for more info.

config BLK_DEV_HT6560B
	tristate "Holtek HT6560B support"
	depends on IDE_CHIPSETS && BLK_DEV_IDE
	help
	  This driver is enabled at runtime using the "ide0=ht6560b" kernel
	  boot parameter. It enables support for the secondary IDE interface
	  of the Holtek card, and permits faster I/O speeds to be set as well.
	  See the <file:Documentation/ide.txt> and
	  <file:drivers/ide/ht6560b.c> files for more info.

config BLK_DEV_PDC4030
	tristate "PROMISE DC4030 support (EXPERIMENTAL)"
	depends on IDE_CHIPSETS && BLK_DEV_IDEDISK && EXPERIMENTAL
	help
	  This driver provides support for the secondary IDE interface and
	  cache of the original Promise IDE chipsets, e.g. DC4030 and DC5030.
	  It is nothing to do with the later range of Promise UDMA chipsets -
	  see the PDC_202XX support for these. CD-ROM and TAPE devices are not
	  supported (and probably never will be since I don't think the cards
	  support them). This driver is enabled at runtime using the "ide0=dc4030"
	  or "ide1=dc4030" kernel boot parameter. See the
	  <file:drivers/ide/pdc4030.c> file for more info.

config BLK_DEV_QD65XX
	tristate "QDI QD65xx support"
	depends on IDE_CHIPSETS && BLK_DEV_IDE
	help
	  This driver is enabled at runtime using the "ide0=qd65xx" kernel
	  boot parameter.  It permits faster I/O speeds to be set.  See the
	  <file:Documentation/ide.txt> and <file:drivers/ide/qd65xx.c> for
	  more info.

config BLK_DEV_UMC8672
	tristate "UMC-8672 support"
	depends on IDE_CHIPSETS && BLK_DEV_IDE
	help
	  This driver is enabled at runtime using the "ide0=umc8672" kernel
	  boot parameter. It enables support for the secondary IDE interface
	  of the UMC-8672, and permits faster I/O speeds to be set as well.
	  See the files <file:Documentation/ide.txt> and
	  <file:drivers/ide/umc8672.c> for more info.

config BLK_DEV_HD_ONLY
	bool "Old hard disk (MFM/RLL/IDE) driver"
	depends on BLK_DEV_IDE=n
	---help---
	  There are two drivers for MFM/RLL/IDE hard disks. Most people use
	  the newer enhanced driver, but this old one is still around for two
	  reasons. Some older systems have strange timing problems and seem to
	  work only with the old driver (which itself does not work with some
	  newer systems). The other reason is that the old driver is smaller,
	  since it lacks the enhanced functionality of the new one. This makes
	  it a good choice for systems with very tight memory restrictions, or
	  for systems with only older MFM/RLL/ESDI drives. Choosing the old
	  driver can save 13 KB or so of kernel memory.

	  If you are unsure, then just choose the Enhanced IDE/MFM/RLL driver
	  instead of this one. For more detailed information, read the
	  Disk-HOWTO, available from
	  <http://www.tldp.org/docs.html#howto>.

config IDEDMA_AUTO
	bool
	depends on IDEDMA_PCI_AUTO || BLK_DEV_IDEDMA_PMAC_AUTO || IDEDMA_ICS_AUTO
	default y

config IDEDMA_IVB
	bool "IGNORE word93 Validation BITS"
	depends on BLK_DEV_IDEDMA_PCI || BLK_DEV_IDEDMA_PMAC || BLK_DEV_IDEDMA_ICS
	---help---
	  There are unclear terms in ATA-4 and ATA-5 standards how certain
	  hardware (an 80c ribbon) should be detected. Different interpretations
	  of the standards have been released in hardware. This causes problems:
	  for example, a host with Ultra Mode 4 (or higher) will not run
	  in that mode with an 80c ribbon.

	  If you are experiencing compatibility or performance problems, you
	  MAY try to answering Y here. However, it does not necessarily solve
	  any of your problems, it could even cause more of them.

	  It is normally safe to answer Y; however, the default is N.

config DMA_NONPCI
	bool
	depends on BLK_DEV_TIVO
	default y

config BLK_DEV_PDC202XX
	bool
	depends on BLK_DEV_IDEDMA_PCI && (BLK_DEV_PDC202XX_OLD || BLK_DEV_PDC202XX_NEW)
	default y
	---help---
	  Promise Ultra33 or PDC20246
	  Promise Ultra66 or PDC20262
	  Promise Ultra100 or PDC20265/PDC20267/PDC20268

	  This driver adds up to 4 more EIDE devices sharing a single
	  interrupt. This add-on card is a bootable PCI UDMA controller. Since
	  multiple cards can be installed and there are BIOS ROM problems that
	  happen if the BIOS revisions of all installed cards (three-max) do
	  not match, the driver attempts to do dynamic tuning of the chipset
	  at boot-time for max-speed.  Ultra33 BIOS 1.25 or newer is required
	  for more than one card. This card may require that you say Y to
	  "Special UDMA Feature".

	  If you say Y here, you need to say Y to "Use DMA by default when
	  available" as well.

	  Please read the comments at the top of
	  <file:drivers/ide/pdc202xx.c>.

	  If unsure, say N.

##if [ "$CONFIG_IDE_TASKFILE_IO" = "y" ]; then
##  dep_mbool CONFIG_BLK_DEV_TF_DISK $CONFIG_BLK_DEV_IDEDISK
##else
##  dep_mbool CONFIG_BLK_DEV_NTF_DISK $CONFIG_BLK_DEV_IDEDISK
##fi
config BLK_DEV_IDE_MODES
	bool
	depends on BLK_DEV_4DRIVES || BLK_DEV_ALI14XX || BLK_DEV_DTC2278 || BLK_DEV_HT6560B || BLK_DEV_PDC4030 || BLK_DEV_QD65XX || BLK_DEV_UMC8672 || BLK_DEV_AEC62XX=y || BLK_DEV_ALI15X3=y || BLK_DEV_AMD74XX=y || BLK_DEV_CMD640 || BLK_DEV_CMD64X=y || BLK_DEV_CS5530=y || BLK_DEV_CY82C693=y || BLK_DEV_HPT34X=y || BLK_DEV_HPT366=y || BLK_DEV_IDE_PMAC || BLK_DEV_IT8172 || BLK_DEV_MPC8xx_IDE || BLK_DEV_NFORCE=y || BLK_DEV_OPTI621=y || BLK_DEV_PDC202XX || BLK_DEV_PIIX=y || BLK_DEV_SVWKS=y || BLK_DEV_SIIMAGE=y || BLK_DEV_SIS5513=y || BLK_DEV_SL82C105=y || BLK_DEV_SLC90E66=y || BLK_DEV_VIA82CXXX=y
	default y

endmenu