| # |
| # Block device driver configuration |
| # |
| |
| 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. |
| |
| if BLK_DEV |
| |
| config BLK_DEV_FD |
| tristate "Normal floppy disk support" |
| depends on ARCH_MAY_HAVE_PC_FDC |
| ---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/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. |
| |
| To compile this driver as a module, choose M here: the |
| module will be called floppy. |
| |
| config AMIGA_FLOPPY |
| tristate "Amiga floppy support" |
| depends on AMIGA |
| |
| config ATARI_FLOPPY |
| tristate "Atari floppy support" |
| depends on ATARI |
| |
| config MAC_FLOPPY |
| tristate "Support for PowerMac floppy" |
| depends on PPC_PMAC && !PPC_PMAC64 |
| help |
| 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_SWIM |
| tristate "Support for SWIM Macintosh floppy" |
| depends on M68K && MAC |
| help |
| 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" |
| depends on ZORRO |
| help |
| This enables support for using Chip RAM and Zorro II RAM as a |
| ramdisk or as a swap partition. Say Y if you want to include this |
| driver in the kernel. |
| |
| To compile this driver as a module, choose M here: the |
| module will be called z2ram. |
| |
| 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. |
| |
| To compile this driver as a module, choose M here: the |
| module will be called xd. |
| |
| It's pretty unlikely that you have one of these: say N. |
| |
| 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. |
| |
| config PARIDE |
| tristate "Parallel port IDE device support" |
| depends on PARPORT_PC |
| ---help--- |
| There are many external CD-ROM and disk devices that connect through |
| 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/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 |
| parallel port devices. Answer Y to build PARIDE support into your |
| kernel, or M if you would like to build it as a loadable module. If |
| your parallel port support is in a loadable module, you must build |
| PARIDE as a module. If you built PARIDE support into your kernel, |
| you may still build the individual protocol modules and high-level |
| drivers as loadable modules. If you build this support as a module, |
| it will be called paride. |
| |
| To use the PARIDE support, you must say Y or M here and also to at |
| least one high-level driver (e.g. "Parallel port IDE disks", |
| "Parallel port ATAPI CD-ROMs", "Parallel port ATAPI disks" etc.) and |
| to at least one protocol driver (e.g. "ATEN EH-100 protocol", |
| "MicroSolutions backpack protocol", "DataStor Commuter protocol" |
| etc.). |
| |
| source "drivers/block/paride/Kconfig" |
| |
| source "drivers/block/mtip32xx/Kconfig" |
| |
| config BLK_CPQ_DA |
| tristate "Compaq SMART2 support" |
| 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/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" |
| depends on PCI |
| help |
| This is the driver for Compaq Smart Array 5xxx controllers. |
| Everyone using these boards should say Y here. |
| 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 && 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/blockdev/cciss.txt> for more details.) |
| |
| "SCSI support" and "SCSI tape support" must also be enabled for this |
| option to work. |
| |
| When this option is disabled (N), the SCSI portion of the driver |
| is not compiled. |
| |
| config BLK_DEV_DAC960 |
| tristate "Mylex DAC960/DAC1100 PCI RAID Controller support" |
| depends on PCI |
| help |
| This driver adds support for the Mylex DAC960, AcceleRAID, and |
| eXtremeRAID PCI RAID controllers. See the file |
| <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. |
| |
| config BLK_DEV_UMEM |
| tristate "Micro Memory MM5415 Battery Backed RAM support (EXPERIMENTAL)" |
| depends on PCI && EXPERIMENTAL |
| ---help--- |
| Saying Y here will include support for the MM5415 family of |
| battery backed (Non-volatile) RAM cards. |
| <http://www.umem.com/> |
| |
| The cards appear as block devices that can be partitioned into |
| as many as 15 partitions. |
| |
| To compile this driver as a module, choose M here: the |
| module will be called umem. |
| |
| The umem driver has not yet been allocated a MAJOR number, so |
| one is chosen dynamically. |
| |
| config BLK_DEV_UBD |
| bool "Virtual block device" |
| depends on UML |
| ---help--- |
| The User-Mode Linux port includes a driver called UBD which will let |
| you access arbitrary files on the host computer as block devices. |
| Unless you know that you do not need such virtual block devices say |
| Y here. |
| |
| config BLK_DEV_UBD_SYNC |
| bool "Always do synchronous disk IO for UBD" |
| depends on BLK_DEV_UBD |
| ---help--- |
| Writes to the virtual block device are not immediately written to the |
| host's disk; this may cause problems if, for example, the User-Mode |
| Linux 'Virtual Machine' uses a journalling filesystem and the host |
| computer crashes. |
| |
| Synchronous operation (i.e. always writing data to the host's disk |
| immediately) is configurable on a per-UBD basis by using a special |
| kernel command line option. Alternatively, you can say Y here to |
| turn on synchronous operation by default for all block devices. |
| |
| If you're running a journalling file system (like reiserfs, for |
| example) in your virtual machine, you will want to say Y here. If |
| you care for the safety of the data in your virtual machine, Y is a |
| wise choice too. In all other cases (for example, if you're just |
| playing around with User-Mode Linux) you can choose N. |
| |
| config BLK_DEV_COW_COMMON |
| bool |
| default BLK_DEV_UBD |
| |
| config BLK_DEV_LOOP |
| tristate "Loopback device support" |
| ---help--- |
| Saying Y here will allow you to use a regular file as a block |
| device; you can then create a file system on that block device and |
| mount it just as you would mount other block devices such as hard |
| drive partitions, CD-ROM drives or floppy drives. The loop devices |
| are block special device files with major number 7 and typically |
| called /dev/loop0, /dev/loop1 etc. |
| |
| This is useful if you want to check an ISO 9660 file system before |
| burning the CD, or if you want to use floppy images without first |
| writing them to floppy. Furthermore, some Linux distributions avoid |
| the need for a dedicated Linux partition by keeping their complete |
| root file system inside a DOS FAT file using this loop device |
| driver. |
| |
| To use the loop device, you need the losetup utility, found in the |
| util-linux package, see |
| <ftp://ftp.kernel.org/pub/linux/utils/util-linux/>. |
| |
| The loop device driver can also be used to "hide" a file system in |
| a disk partition, floppy, or regular file, either using encryption |
| (scrambling the data) or steganography (hiding the data in the low |
| bits of, say, a sound file). This is also safe if the file resides |
| on a remote file server. |
| |
| There are several ways of encrypting disks. Some of these require |
| kernel patches. The vanilla kernel offers the cryptoloop option |
| and a Device Mapper target (which is superior, as it supports all |
| file systems). If you want to use the cryptoloop, say Y to both |
| LOOP and CRYPTOLOOP, and make sure you have a recent (version 2.12 |
| or later) version of util-linux. Additionally, be aware that |
| the cryptoloop is not safe for storing journaled filesystems. |
| |
| Note that this loop device has nothing to do with the loopback |
| device used for network connections from the machine to itself. |
| |
| To compile this driver as a module, choose M here: the |
| module will be called loop. |
| |
| Most users will answer N here. |
| |
| config BLK_DEV_LOOP_MIN_COUNT |
| int "Number of loop devices to pre-create at init time" |
| depends on BLK_DEV_LOOP |
| default 8 |
| help |
| Static number of loop devices to be unconditionally pre-created |
| at init time. |
| |
| This default value can be overwritten on the kernel command |
| line or with module-parameter loop.max_loop. |
| |
| The historic default is 8. If a late 2011 version of losetup(8) |
| is used, it can be set to 0, since needed loop devices can be |
| dynamically allocated with the /dev/loop-control interface. |
| |
| 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 |
| provided by the CryptoAPI as loop transformation. This might be |
| used as hard disk encryption. |
| |
| WARNING: This device is not safe for journaled file systems like |
| ext3 or Reiserfs. Please use the Device Mapper crypto module |
| 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 |
| ---help--- |
| Saying Y here will allow your computer to be a client for network |
| block devices, i.e. it will be able to use block devices exported by |
| servers (mount file systems on them etc.). Communication between |
| client and server works over TCP/IP networking, but to the client |
| program this is hidden: it looks like a regular local file access to |
| a block device special file such as /dev/nd0. |
| |
| Network block devices also allows you to run a block-device in |
| userland (making server and client physically the same computer, |
| communicating using the loopback network device). |
| |
| 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. |
| |
| To compile this driver as a module, choose M here: the |
| module will be called nbd. |
| |
| If unsure, say N. |
| |
| config BLK_DEV_NVME |
| tristate "NVM Express block device" |
| depends on PCI |
| ---help--- |
| The NVM Express driver is for solid state drives directly |
| connected to the PCI or PCI Express bus. If you know you |
| don't have one of these, it is safe to answer N. |
| |
| To compile this driver as a module, choose M here: the |
| module will be called nvme. |
| |
| 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 |
| ---help--- |
| Saying Y or M here will enable support for the |
| Promise SATA SX8 controllers. |
| |
| Use devices /dev/sx8/$N and /dev/sx8/$Np$M. |
| |
| config BLK_DEV_UB |
| tristate "Low Performance USB Block driver (deprecated)" |
| depends on USB |
| help |
| This driver supports certain USB attached storage devices |
| such as flash keys. |
| |
| If you enable this driver, it is recommended to avoid conflicts |
| with usb-storage by enabling USB_LIBUSUAL. |
| |
| If unsure, say N. |
| |
| config BLK_DEV_RAM |
| 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 |
| write to it and do all the other things that you can do with normal |
| block devices (such as hard drives). It is usually used to load and |
| 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/blockdev/ramdisk.txt>. |
| |
| To compile this driver as a module, choose M here: the |
| module will be called rd. |
| |
| Most normal users won't need the RAM disk functionality, and can |
| thus say N here. |
| |
| config BLK_DEV_RAM_COUNT |
| int "Default number of RAM disks" |
| default "16" |
| depends on BLK_DEV_RAM |
| help |
| 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). |
| |
| config BLK_DEV_RAM_SIZE |
| int "Default RAM disk size (kbytes)" |
| depends on BLK_DEV_RAM |
| default "4096" |
| help |
| The default value is 4096 kilobytes. Only change this if you know |
| what you are doing. |
| |
| config BLK_DEV_XIP |
| bool "Support XIP filesystems on RAM block device" |
| depends on BLK_DEV_RAM |
| default n |
| help |
| 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/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, 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. |
| |
| config CDROM_PKTCDVD_BUFFERS |
| int "Free buffers for data gathering" |
| depends on CDROM_PKTCDVD |
| default "8" |
| help |
| This controls the maximum number of active concurrent packets. More |
| concurrent packets can increase write performance, but also require |
| more memory. Each concurrent packet will require approximately 64Kb |
| of non-swappable kernel memory, memory which will be allocated when |
| a disc is opened for writing. |
| |
| config CDROM_PKTCDVD_WCACHE |
| bool "Enable write caching (EXPERIMENTAL)" |
| depends on CDROM_PKTCDVD && EXPERIMENTAL |
| help |
| If enabled, write caching will be set for the CD-R/W device. For now |
| this option is dangerous unless the CD-RW media is known good, as we |
| don't do deferred write error handling yet. |
| |
| config ATA_OVER_ETH |
| tristate "ATA over Ethernet support" |
| depends on NET |
| help |
| This driver provides Support for ATA over Ethernet block |
| devices like the Coraid EtherDrive (R) Storage Blade. |
| |
| 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 |
| select XEN_XENBUS_FRONTEND |
| 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 XEN_BLKDEV_BACKEND |
| tristate "Xen block-device backend driver" |
| depends on XEN_BACKEND |
| help |
| The block-device backend driver allows the kernel to export its |
| block devices to other guests via a high-performance shared-memory |
| interface. |
| |
| The corresponding Linux frontend driver is enabled by the |
| CONFIG_XEN_BLKDEV_FRONTEND configuration option. |
| |
| The backend driver attaches itself to a any block device specified |
| in the XenBus configuration. There are no limits to what the block |
| device as long as it has a major and minor. |
| |
| If you are compiling a kernel to run in a Xen block backend driver |
| domain (often this is domain 0) you should say Y here. To |
| compile this driver as a module, chose M here: the module |
| will be called xen-blkback. |
| |
| |
| 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. |
| |
| config BLK_DEV_RBD |
| tristate "Rados block device (RBD)" |
| depends on INET && EXPERIMENTAL && BLOCK |
| select CEPH_LIB |
| select LIBCRC32C |
| select CRYPTO_AES |
| select CRYPTO |
| default n |
| help |
| Say Y here if you want include the Rados block device, which stripes |
| a block device over objects stored in the Ceph distributed object |
| store. |
| |
| More information at http://ceph.newdream.net/. |
| |
| If unsure, say N. |
| |
| source "drivers/block/zram/Kconfig" |
| |
| endif # BLK_DEV |