cciss: fix scatter gather chain block dma direction kludge
[safe/jmp/linux-2.6] / drivers / block / Kconfig
index 17dc222..77bfce5 100644 (file)
@@ -2,9 +2,18 @@
 # Block device driver configuration
 #
 
-if BLOCK
+menuconfig BLK_DEV
+       bool "Block devices"
+       depends on BLOCK
+       default y
+       ---help---
+         Say Y here to get to see options for various different block device
+         drivers. This option alone does not add any kernel code.
+
+         If you say N, all options in this submenu will be skipped and disabled;
+         only do this if you know what you are doing.
 
-menu "Block devices"
+if BLK_DEV
 
 config BLK_DEV_FD
        tristate "Normal floppy disk support"
@@ -12,7 +21,8 @@ config BLK_DEV_FD
        ---help---
          If you want to use the floppy disk drive(s) of your PC under Linux,
          say Y. Information about this driver, especially important for IBM
-         Thinkpad users, is contained in <file:Documentation/floppy.txt>.
+         Thinkpad users, is contained in
+         <file:Documentation/blockdev/floppy.txt>.
          That file also contains the location of the Floppy driver FAQ as
          well as location of the fdutils package used to configure additional
          parameters of the driver at run time.
@@ -28,13 +38,6 @@ config ATARI_FLOPPY
        tristate "Atari floppy support"
        depends on ATARI
 
-config BLK_DEV_SWIM_IOP
-       bool "Macintosh IIfx/Quadra 900/Quadra 950 floppy support (EXPERIMENTAL)"
-       depends on MAC && EXPERIMENTAL && BROKEN
-       help
-         Say Y here to support the SWIM (Super Woz Integrated Machine) IOP
-         floppy controller on the Macintosh IIfx and Quadra 900/950.
-
 config MAC_FLOPPY
        tristate "Support for PowerMac floppy"
        depends on PPC_PMAC && !PPC_PMAC64
@@ -42,15 +45,12 @@ config MAC_FLOPPY
          If you have a SWIM-3 (Super Woz Integrated Machine 3; from Apple)
          floppy controller, say Y here. Most commonly found in PowerMacs.
 
-config BLK_DEV_PS2
-       tristate "PS/2 ESDI hard disk support"
-       depends on MCA && MCA_LEGACY && BROKEN
+config BLK_DEV_SWIM
+       tristate "Support for SWIM Macintosh floppy"
+       depends on M68K && MAC
        help
-         Say Y here if you have a PS/2 machine with a MCA bus and an ESDI
-         hard disk.
-
-         To compile this driver as a module, choose M here: the
-         module will be called ps2esdi.
+         You should select this option if you want floppy support
+         and you don't have a II, IIfx, Q900, Q950 or AV series.
 
 config AMIGA_Z2RAM
        tristate "Amiga Zorro II ramdisk support"
@@ -63,51 +63,10 @@ config AMIGA_Z2RAM
          To compile this driver as a module, choose M here: the
          module will be called z2ram.
 
-config ATARI_ACSI
-       tristate "Atari ACSI support"
-       depends on ATARI && BROKEN
-       ---help---
-         This enables support for the Atari ACSI interface. The driver
-         supports hard disks and CD-ROMs, which have 512-byte sectors, or can
-         be switched to that mode. Due to the ACSI command format, only disks
-         up to 1 GB are supported. Special support for certain ACSI to SCSI
-         adapters, which could relax that, isn't included yet. The ACSI
-         driver is also the basis for certain other drivers for devices
-         attached to the ACSI bus: Atari SLM laser printer, BioNet-100
-         Ethernet, and PAMsNet Ethernet. If you want to use one of these
-         devices, you need ACSI support, too.
-
-         To compile this driver as a module, choose M here: the
-         module will be called acsi.
-
-comment "Some devices (e.g. CD jukebox) support multiple LUNs"
-       depends on ATARI && ATARI_ACSI
-
-config ACSI_MULTI_LUN
-       bool "Probe all LUNs on each ACSI device"
-       depends on ATARI_ACSI
-       help
-         If you have a ACSI device that supports more than one LUN (Logical
-         Unit Number), e.g. a CD jukebox, you should say Y here so that all
-         will be found by the ACSI driver. An ACSI device with multiple LUNs
-         acts logically like multiple ACSI devices. The vast majority of ACSI
-         devices have only one LUN, and so most people can say N here and
-         should in fact do so, because it is safer.
-
-config ATARI_SLM
-       tristate "Atari SLM laser printer support"
-       depends on ATARI && ATARI_ACSI!=n
-       help
-         If you have an Atari SLM laser printer, say Y to include support for
-         it in the kernel. Otherwise, say N. This driver is also available as
-         a module ( = code which can be inserted in and removed from the
-         running kernel whenever you want). The module will be called
-         acsi_slm. Be warned: the driver needs much ST-RAM and can cause
-         problems due to that fact!
-
 config BLK_DEV_XD
        tristate "XT hard disk support"
        depends on ISA && ISA_DMA_API
+       select CHECK_SIGNATURE
        help
          Very old 8 bit hard disk controllers used in the IBM XT computer
          will be supported if you say Y here.
@@ -125,7 +84,7 @@ config PARIDE
          your computer's parallel port. Most of them are actually IDE devices
          using a parallel port IDE adapter. This option enables the PARIDE
          subsystem which contains drivers for many of these external drives.
-         Read <file:Documentation/paride.txt> for more information.
+         Read <file:Documentation/blockdev/paride.txt> for more information.
 
          If you have said Y to the "Parallel-port support" configuration
          option, you may share a single port between your printer and other
@@ -144,17 +103,28 @@ config PARIDE
          "MicroSolutions backpack protocol", "DataStor Commuter protocol"
          etc.).
 
+config GDROM
+       tristate "SEGA Dreamcast GD-ROM drive"
+       depends on SH_DREAMCAST
+       help
+         A standard SEGA Dreamcast comes with a modified CD ROM drive called a
+         "GD-ROM" by SEGA to signify it is capable of reading special disks
+         with up to 1 GB of data. This drive will also read standard CD ROM
+         disks. Select this option to access any disks in your GD ROM drive.
+         Most users will want to say "Y" here.
+         You can also build this as a module which will be called gdrom.
+
 source "drivers/block/paride/Kconfig"
 
 config BLK_CPQ_DA
        tristate "Compaq SMART2 support"
-       depends on PCI
+       depends on PCI && VIRT_TO_BUS
        help
          This is the driver for Compaq Smart Array controllers.  Everyone
          using these boards should say Y here.  See the file
-         <file:Documentation/cpqarray.txt> for the current list of boards
-         supported by this driver, and for further information on the use of
-         this driver.
+         <file:Documentation/blockdev/cpqarray.txt> for the current list of
+         boards supported by this driver, and for further information on the
+         use of this driver.
 
 config BLK_CPQ_CISS_DA
        tristate "Compaq Smart Array 5xxx support"
@@ -162,17 +132,18 @@ config BLK_CPQ_CISS_DA
        help
          This is the driver for Compaq Smart Array 5xxx controllers.
          Everyone using these boards should say Y here.
-         See <file:Documentation/cciss.txt> for the current list of
+         See <file:Documentation/blockdev/cciss.txt> for the current list of
          boards supported by this driver, and for further information
          on the use of this driver.
 
 config CISS_SCSI_TAPE
        bool "SCSI tape drive support for Smart Array 5xxx"
-       depends on BLK_CPQ_CISS_DA && SCSI && PROC_FS
+       depends on BLK_CPQ_CISS_DA && PROC_FS
+       depends on SCSI=y || SCSI=BLK_CPQ_CISS_DA
        help
          When enabled (Y), this option allows SCSI tape drives and SCSI medium
          changers (tape robots) to be accessed via a Compaq 5xxx array 
-         controller.  (See <file:Documentation/cciss.txt> for more details.)
+         controller.  (See <file:Documentation/blockdev/cciss.txt> for more details.)
 
          "SCSI support" and "SCSI tape support" must also be enabled for this 
          option to work.
@@ -186,8 +157,8 @@ config BLK_DEV_DAC960
        help
          This driver adds support for the Mylex DAC960, AcceleRAID, and
          eXtremeRAID PCI RAID controllers.  See the file
-         <file:Documentation/README.DAC960> for further information about
-         this driver.
+         <file:Documentation/blockdev/README.DAC960> for further information
+         about this driver.
 
          To compile this driver as a module, choose M here: the
          module will be called DAC960.
@@ -242,23 +213,6 @@ config BLK_DEV_COW_COMMON
        bool
        default BLK_DEV_UBD
 
-config MMAPPER
-       tristate "Example IO memory driver (BROKEN)"
-       depends on UML && BROKEN
-       ---help---
-          The User-Mode Linux port can provide support for IO Memory
-          emulation with this option.  This allows a host file to be
-          specified as an I/O region on the kernel command line. That file
-          will be mapped into UML's kernel address space where a driver can
-          locate it and do whatever it wants with the memory, including
-          providing an interface to it for UML processes to use.
-
-          For more information, see
-          <http://user-mode-linux.sourceforge.net/iomem.html>.
-
-          If you'd like to be able to provide a simulated IO port space for
-          User-Mode Linux processes, say Y.  If unsure, say N.
-
 config BLK_DEV_LOOP
        tristate "Loopback device support"
        ---help---
@@ -305,6 +259,7 @@ config BLK_DEV_LOOP
 config BLK_DEV_CRYPTOLOOP
        tristate "Cryptoloop Support"
        select CRYPTO
+       select CRYPTO_CBC
        depends on BLK_DEV_LOOP
        ---help---
          Say Y here if you want to be able to use the ciphers that are 
@@ -316,6 +271,8 @@ config BLK_DEV_CRYPTOLOOP
          instead, which can be configured to be on-disk compatible with the
          cryptoloop device.
 
+source "drivers/block/drbd/Kconfig"
+
 config BLK_DEV_NBD
        tristate "Network block device support"
        depends on NET
@@ -331,9 +288,9 @@ config BLK_DEV_NBD
          userland (making server and client physically the same computer,
          communicating using the loopback network device).
 
-         Read <file:Documentation/nbd.txt> for more information, especially
-         about where to find the server code, which runs in user space and
-         does not need special kernel support.
+         Read <file:Documentation/blockdev/nbd.txt> for more information,
+         especially about where to find the server code, which runs in user
+         space and does not need special kernel support.
 
          Note that this has nothing to do with the network file systems NFS
          or Coda; you can say N here even if you intend to use NFS or Coda.
@@ -343,6 +300,22 @@ config BLK_DEV_NBD
 
          If unsure, say N.
 
+config BLK_DEV_OSD
+       tristate "OSD object-as-blkdev support"
+       depends on SCSI_OSD_ULD
+       ---help---
+         Saying Y or M here will allow the exporting of a single SCSI
+         OSD (object-based storage) object as a Linux block device.
+
+         For example, if you create a 2G object on an OSD device,
+         you can then use this module to present that 2G object as
+         a Linux block device.
+
+         To compile this driver as a module, choose M here: the
+         module will be called osdblk.
+
+         If unsure, say N.
+
 config BLK_DEV_SX8
        tristate "Promise SATA SX8 support"
        depends on PCI
@@ -365,7 +338,7 @@ config BLK_DEV_UB
          If unsure, say N.
 
 config BLK_DEV_RAM
-       tristate "RAM disk support"
+       tristate "RAM block device support"
        ---help---
          Saying Y here will allow you to use a portion of your RAM memory as
          a block device, so that you can make file systems on it, read and
@@ -374,8 +347,8 @@ config BLK_DEV_RAM
          store a copy of a minimal root file system off of a floppy into RAM
          during the initial install of Linux.
 
-         Note that the kernel command line option "ramdisk=XX" is now
-         obsolete. For details, read <file:Documentation/ramdisk.txt>.
+         Note that the kernel command line option "ramdisk=XX" is now obsolete.
+         For details, read <file:Documentation/blockdev/ramdisk.txt>.
 
          To compile this driver as a module, choose M here: the
          module will be called rd.
@@ -388,7 +361,7 @@ config BLK_DEV_RAM_COUNT
        default "16"
        depends on BLK_DEV_RAM
        help
-         The default value is 16 RAM disks. Change this if you know what
+         The default value is 16 RAM disks. Change this if you know what you
          are doing. If you boot from a filesystem that needs to be extracted
          in memory, you will need at least one RAM disk (e.g. root on cramfs).
 
@@ -398,45 +371,34 @@ config BLK_DEV_RAM_SIZE
        default "4096"
        help
          The default value is 4096 kilobytes. Only change this if you know
-         what are you doing. If you are using IBM S/390, then set this to
-         8192.
+         what you are doing.
 
-config BLK_DEV_RAM_BLOCKSIZE
-       int "Default RAM disk block size (bytes)"
+config BLK_DEV_XIP
+       bool "Support XIP filesystems on RAM block device"
        depends on BLK_DEV_RAM
-       default "1024"
-       help
-         The default value is 1024 bytes.  PAGE_SIZE is a much more
-         efficient choice however.  The default is kept to ensure initrd
-         setups function - apparently needed by the rd_load_image routine
-         that supposes the filesystem in the image uses a 1024 blocksize.
-
-config BLK_DEV_INITRD
-       bool "Initial RAM filesystem and RAM disk (initramfs/initrd) support"
-       depends on BROKEN || !FRV
+       default n
        help
-         The initial RAM filesystem is a ramfs which is loaded by the
-         boot loader (loadlin or lilo) and that is mounted as root
-         before the normal boot procedure. It is typically used to
-         load modules needed to mount the "real" root file system,
-         etc. See <file:Documentation/initrd.txt> for details.
-
-         If RAM disk support (BLK_DEV_RAM) is also included, this
-         also enables initial RAM disk (initrd) support.
-
+         Support XIP filesystems (such as ext2 with XIP support on) on
+         top of block ram device. This will slightly enlarge the kernel, and
+         will prevent RAM block device backing store memory from being
+         allocated from highmem (only a problem for highmem systems).
 
 config CDROM_PKTCDVD
        tristate "Packet writing on CD/DVD media"
        depends on !UML
        help
-         If you have a CDROM drive that supports packet writing, say Y to
-         include preliminary support. It should work with any MMC/Mt Fuji
-         compliant ATAPI or SCSI drive, which is just about any newer CD
-         writer.
+         If you have a CDROM/DVD drive that supports packet writing, say
+         Y to include support. It should work with any MMC/Mt Fuji
+         compliant ATAPI or SCSI drive, which is just about any newer
+         DVD/CD writer.
 
-         Currently only writing to CD-RW, DVD-RW and DVD+RW discs is possible.
+         Currently only writing to CD-RW, DVD-RW, DVD+RW and DVDRAM discs
+         is possible.
          DVD-RW disks must be in restricted overwrite mode.
 
+         See the file <file:Documentation/cdrom/packet-writing.txt>
+         for further information on the use of this driver.
+
          To compile this driver as a module, choose M here: the
          module will be called pktcdvd.
 
@@ -459,8 +421,6 @@ config CDROM_PKTCDVD_WCACHE
          this option is dangerous unless the CD-RW media is known good, as we
          don't do deferred write error handling yet.
 
-source "drivers/s390/block/Kconfig"
-
 config ATA_OVER_ETH
        tristate "ATA over Ethernet support"
        depends on NET
@@ -468,6 +428,64 @@ config ATA_OVER_ETH
        This driver provides Support for ATA over Ethernet block
        devices like the Coraid EtherDrive (R) Storage Blade.
 
-endmenu
+config MG_DISK
+       tristate "mGine mflash, gflash support"
+       depends on ARM && GPIOLIB
+       help
+         mGine mFlash(gFlash) block device driver
+
+config MG_DISK_RES
+       int "Size of reserved area before MBR"
+       depends on MG_DISK
+       default 0
+       help
+         Define size of reserved area that usually used for boot. Unit is KB.
+         All of the block device operation will be taken this value as start
+         offset
+         Examples:
+                       1024 => 1 MB
+
+config SUNVDC
+       tristate "Sun Virtual Disk Client support"
+       depends on SUN_LDOMS
+       help
+         Support for virtual disk devices as a client under Sun
+         Logical Domains.
+
+source "drivers/s390/block/Kconfig"
+
+config XILINX_SYSACE
+       tristate "Xilinx SystemACE support"
+       depends on 4xx || MICROBLAZE
+       help
+         Include support for the Xilinx SystemACE CompactFlash interface
+
+config XEN_BLKDEV_FRONTEND
+       tristate "Xen virtual block device support"
+       depends on XEN
+       default y
+       help
+         This driver implements the front-end of the Xen virtual
+         block device driver.  It communicates with a back-end driver
+         in another domain which drives the actual block device.
+
+config VIRTIO_BLK
+       tristate "Virtio block driver (EXPERIMENTAL)"
+       depends on EXPERIMENTAL && VIRTIO
+       ---help---
+         This is the virtual block driver for virtio.  It can be used with
+          lguest or QEMU based VMMs (like KVM or Xen).  Say Y or M.
+
+config BLK_DEV_HD
+       bool "Very old hard disk (MFM/RLL/IDE) driver"
+       depends on HAVE_IDE
+       depends on !ARM || ARCH_RPC || ARCH_SHARK || BROKEN
+       help
+         This is a very old hard disk driver that lacks the enhanced
+         functionality of the newer ones.
+
+         It is required for systems with ancient MFM/RLL/ESDI drives.
+
+         If unsure, say N.
 
-endif
+endif # BLK_DEV