linux/drivers/block/Kconfig
<<
>>
Prefs
   1#
   2# Block device driver configuration
   3#
   4
   5menuconfig BLK_DEV
   6        bool "Block devices"
   7        depends on BLOCK
   8        default y
   9        ---help---
  10          Say Y here to get to see options for various different block device
  11          drivers. This option alone does not add any kernel code.
  12
  13          If you say N, all options in this submenu will be skipped and disabled;
  14          only do this if you know what you are doing.
  15
  16if BLK_DEV
  17
  18config BLK_DEV_FD
  19        tristate "Normal floppy disk support"
  20        depends on ARCH_MAY_HAVE_PC_FDC
  21        ---help---
  22          If you want to use the floppy disk drive(s) of your PC under Linux,
  23          say Y. Information about this driver, especially important for IBM
  24          Thinkpad users, is contained in
  25          <file:Documentation/blockdev/floppy.txt>.
  26          That file also contains the location of the Floppy driver FAQ as
  27          well as location of the fdutils package used to configure additional
  28          parameters of the driver at run time.
  29
  30          To compile this driver as a module, choose M here: the
  31          module will be called floppy.
  32
  33config AMIGA_FLOPPY
  34        tristate "Amiga floppy support"
  35        depends on AMIGA
  36
  37config ATARI_FLOPPY
  38        tristate "Atari floppy support"
  39        depends on ATARI
  40
  41config MAC_FLOPPY
  42        tristate "Support for PowerMac floppy"
  43        depends on PPC_PMAC && !PPC_PMAC64
  44        help
  45          If you have a SWIM-3 (Super Woz Integrated Machine 3; from Apple)
  46          floppy controller, say Y here. Most commonly found in PowerMacs.
  47
  48config BLK_DEV_SWIM
  49        tristate "Support for SWIM Macintosh floppy"
  50        depends on M68K && MAC
  51        help
  52          You should select this option if you want floppy support
  53          and you don't have a II, IIfx, Q900, Q950 or AV series.
  54
  55config AMIGA_Z2RAM
  56        tristate "Amiga Zorro II ramdisk support"
  57        depends on ZORRO
  58        help
  59          This enables support for using Chip RAM and Zorro II RAM as a
  60          ramdisk or as a swap partition. Say Y if you want to include this
  61          driver in the kernel.
  62
  63          To compile this driver as a module, choose M here: the
  64          module will be called z2ram.
  65
  66config BLK_DEV_XD
  67        tristate "XT hard disk support"
  68        depends on ISA && ISA_DMA_API
  69        select CHECK_SIGNATURE
  70        help
  71          Very old 8 bit hard disk controllers used in the IBM XT computer
  72          will be supported if you say Y here.
  73
  74          To compile this driver as a module, choose M here: the
  75          module will be called xd.
  76
  77          It's pretty unlikely that you have one of these: say N.
  78
  79config GDROM
  80        tristate "SEGA Dreamcast GD-ROM drive"
  81        depends on SH_DREAMCAST
  82        help
  83          A standard SEGA Dreamcast comes with a modified CD ROM drive called a
  84          "GD-ROM" by SEGA to signify it is capable of reading special disks
  85          with up to 1 GB of data. This drive will also read standard CD ROM
  86          disks. Select this option to access any disks in your GD ROM drive.
  87          Most users will want to say "Y" here.
  88          You can also build this as a module which will be called gdrom.
  89
  90config PARIDE
  91        tristate "Parallel port IDE device support"
  92        depends on PARPORT_PC
  93        ---help---
  94          There are many external CD-ROM and disk devices that connect through
  95          your computer's parallel port. Most of them are actually IDE devices
  96          using a parallel port IDE adapter. This option enables the PARIDE
  97          subsystem which contains drivers for many of these external drives.
  98          Read <file:Documentation/blockdev/paride.txt> for more information.
  99
 100          If you have said Y to the "Parallel-port support" configuration
 101          option, you may share a single port between your printer and other
 102          parallel port devices. Answer Y to build PARIDE support into your
 103          kernel, or M if you would like to build it as a loadable module. If
 104          your parallel port support is in a loadable module, you must build
 105          PARIDE as a module. If you built PARIDE support into your kernel,
 106          you may still build the individual protocol modules and high-level
 107          drivers as loadable modules. If you build this support as a module,
 108          it will be called paride.
 109
 110          To use the PARIDE support, you must say Y or M here and also to at
 111          least one high-level driver (e.g. "Parallel port IDE disks",
 112          "Parallel port ATAPI CD-ROMs", "Parallel port ATAPI disks" etc.) and
 113          to at least one protocol driver (e.g. "ATEN EH-100 protocol",
 114          "MicroSolutions backpack protocol", "DataStor Commuter protocol"
 115          etc.).
 116
 117source "drivers/block/paride/Kconfig"
 118
 119config BLK_CPQ_DA
 120        tristate "Compaq SMART2 support"
 121        depends on PCI && VIRT_TO_BUS
 122        help
 123          This is the driver for Compaq Smart Array controllers.  Everyone
 124          using these boards should say Y here.  See the file
 125          <file:Documentation/blockdev/cpqarray.txt> for the current list of
 126          boards supported by this driver, and for further information on the
 127          use of this driver.
 128
 129config BLK_CPQ_CISS_DA
 130        tristate "Compaq Smart Array 5xxx support"
 131        depends on PCI
 132        help
 133          This is the driver for Compaq Smart Array 5xxx controllers.
 134          Everyone using these boards should say Y here.
 135          See <file:Documentation/blockdev/cciss.txt> for the current list of
 136          boards supported by this driver, and for further information
 137          on the use of this driver.
 138
 139config CISS_SCSI_TAPE
 140        bool "SCSI tape drive support for Smart Array 5xxx"
 141        depends on BLK_CPQ_CISS_DA && PROC_FS
 142        depends on SCSI=y || SCSI=BLK_CPQ_CISS_DA
 143        help
 144          When enabled (Y), this option allows SCSI tape drives and SCSI medium
 145          changers (tape robots) to be accessed via a Compaq 5xxx array 
 146          controller.  (See <file:Documentation/blockdev/cciss.txt> for more details.)
 147
 148          "SCSI support" and "SCSI tape support" must also be enabled for this 
 149          option to work.
 150
 151          When this option is disabled (N), the SCSI portion of the driver 
 152          is not compiled.
 153
 154config BLK_DEV_DAC960
 155        tristate "Mylex DAC960/DAC1100 PCI RAID Controller support"
 156        depends on PCI
 157        help
 158          This driver adds support for the Mylex DAC960, AcceleRAID, and
 159          eXtremeRAID PCI RAID controllers.  See the file
 160          <file:Documentation/blockdev/README.DAC960> for further information
 161          about this driver.
 162
 163          To compile this driver as a module, choose M here: the
 164          module will be called DAC960.
 165
 166config BLK_DEV_UMEM
 167        tristate "Micro Memory MM5415 Battery Backed RAM support (EXPERIMENTAL)"
 168        depends on PCI && EXPERIMENTAL
 169        ---help---
 170          Saying Y here will include support for the MM5415 family of
 171          battery backed (Non-volatile) RAM cards.
 172          <http://www.umem.com/>
 173
 174          The cards appear as block devices that can be partitioned into
 175          as many as 15 partitions.
 176
 177          To compile this driver as a module, choose M here: the
 178          module will be called umem.
 179
 180          The umem driver has not yet been allocated a MAJOR number, so
 181          one is chosen dynamically.
 182
 183config BLK_DEV_UBD
 184        bool "Virtual block device"
 185        depends on UML
 186        ---help---
 187          The User-Mode Linux port includes a driver called UBD which will let
 188          you access arbitrary files on the host computer as block devices.
 189          Unless you know that you do not need such virtual block devices say
 190          Y here.
 191
 192config BLK_DEV_UBD_SYNC
 193        bool "Always do synchronous disk IO for UBD"
 194        depends on BLK_DEV_UBD
 195        ---help---
 196          Writes to the virtual block device are not immediately written to the
 197          host's disk; this may cause problems if, for example, the User-Mode
 198          Linux 'Virtual Machine' uses a journalling filesystem and the host
 199          computer crashes.
 200
 201          Synchronous operation (i.e. always writing data to the host's disk
 202          immediately) is configurable on a per-UBD basis by using a special
 203          kernel command line option.  Alternatively, you can say Y here to
 204          turn on synchronous operation by default for all block devices.
 205
 206          If you're running a journalling file system (like reiserfs, for
 207          example) in your virtual machine, you will want to say Y here.  If
 208          you care for the safety of the data in your virtual machine, Y is a
 209          wise choice too.  In all other cases (for example, if you're just
 210          playing around with User-Mode Linux) you can choose N.
 211
 212config BLK_DEV_COW_COMMON
 213        bool
 214        default BLK_DEV_UBD
 215
 216config BLK_DEV_LOOP
 217        tristate "Loopback device support"
 218        ---help---
 219          Saying Y here will allow you to use a regular file as a block
 220          device; you can then create a file system on that block device and
 221          mount it just as you would mount other block devices such as hard
 222          drive partitions, CD-ROM drives or floppy drives. The loop devices
 223          are block special device files with major number 7 and typically
 224          called /dev/loop0, /dev/loop1 etc.
 225
 226          This is useful if you want to check an ISO 9660 file system before
 227          burning the CD, or if you want to use floppy images without first
 228          writing them to floppy. Furthermore, some Linux distributions avoid
 229          the need for a dedicated Linux partition by keeping their complete
 230          root file system inside a DOS FAT file using this loop device
 231          driver.
 232
 233          To use the loop device, you need the losetup utility, found in the
 234          util-linux package, see
 235          <ftp://ftp.kernel.org/pub/linux/utils/util-linux/>.
 236
 237          The loop device driver can also be used to "hide" a file system in
 238          a disk partition, floppy, or regular file, either using encryption
 239          (scrambling the data) or steganography (hiding the data in the low
 240          bits of, say, a sound file). This is also safe if the file resides
 241          on a remote file server.
 242
 243          There are several ways of encrypting disks. Some of these require
 244          kernel patches. The vanilla kernel offers the cryptoloop option
 245          and a Device Mapper target (which is superior, as it supports all
 246          file systems). If you want to use the cryptoloop, say Y to both
 247          LOOP and CRYPTOLOOP, and make sure you have a recent (version 2.12
 248          or later) version of util-linux. Additionally, be aware that
 249          the cryptoloop is not safe for storing journaled filesystems.
 250
 251          Note that this loop device has nothing to do with the loopback
 252          device used for network connections from the machine to itself.
 253
 254          To compile this driver as a module, choose M here: the
 255          module will be called loop.
 256
 257          Most users will answer N here.
 258
 259config BLK_DEV_LOOP_MIN_COUNT
 260        int "Number of loop devices to pre-create at init time"
 261        depends on BLK_DEV_LOOP
 262        default 8
 263        help
 264          Static number of loop devices to be unconditionally pre-created
 265          at init time.
 266
 267          This default value can be overwritten on the kernel command
 268          line or with module-parameter loop.max_loop.
 269
 270          The historic default is 8. If a late 2011 version of losetup(8)
 271          is used, it can be set to 0, since needed loop devices can be
 272          dynamically allocated with the /dev/loop-control interface.
 273
 274config BLK_DEV_CRYPTOLOOP
 275        tristate "Cryptoloop Support"
 276        select CRYPTO
 277        select CRYPTO_CBC
 278        depends on BLK_DEV_LOOP
 279        ---help---
 280          Say Y here if you want to be able to use the ciphers that are 
 281          provided by the CryptoAPI as loop transformation. This might be
 282          used as hard disk encryption.
 283
 284          WARNING: This device is not safe for journaled file systems like
 285          ext3 or Reiserfs. Please use the Device Mapper crypto module
 286          instead, which can be configured to be on-disk compatible with the
 287          cryptoloop device.
 288
 289source "drivers/block/drbd/Kconfig"
 290
 291config BLK_DEV_NBD
 292        tristate "Network block device support"
 293        depends on NET
 294        ---help---
 295          Saying Y here will allow your computer to be a client for network
 296          block devices, i.e. it will be able to use block devices exported by
 297          servers (mount file systems on them etc.). Communication between
 298          client and server works over TCP/IP networking, but to the client
 299          program this is hidden: it looks like a regular local file access to
 300          a block device special file such as /dev/nd0.
 301
 302          Network block devices also allows you to run a block-device in
 303          userland (making server and client physically the same computer,
 304          communicating using the loopback network device).
 305
 306          Read <file:Documentation/blockdev/nbd.txt> for more information,
 307          especially about where to find the server code, which runs in user
 308          space and does not need special kernel support.
 309
 310          Note that this has nothing to do with the network file systems NFS
 311          or Coda; you can say N here even if you intend to use NFS or Coda.
 312
 313          To compile this driver as a module, choose M here: the
 314          module will be called nbd.
 315
 316          If unsure, say N.
 317
 318config BLK_DEV_OSD
 319        tristate "OSD object-as-blkdev support"
 320        depends on SCSI_OSD_ULD
 321        ---help---
 322          Saying Y or M here will allow the exporting of a single SCSI
 323          OSD (object-based storage) object as a Linux block device.
 324
 325          For example, if you create a 2G object on an OSD device,
 326          you can then use this module to present that 2G object as
 327          a Linux block device.
 328
 329          To compile this driver as a module, choose M here: the
 330          module will be called osdblk.
 331
 332          If unsure, say N.
 333
 334config BLK_DEV_SX8
 335        tristate "Promise SATA SX8 support"
 336        depends on PCI
 337        ---help---
 338          Saying Y or M here will enable support for the 
 339          Promise SATA SX8 controllers.
 340
 341          Use devices /dev/sx8/$N and /dev/sx8/$Np$M.
 342
 343config BLK_DEV_UB
 344        tristate "Low Performance USB Block driver"
 345        depends on USB
 346        help
 347          This driver supports certain USB attached storage devices
 348          such as flash keys.
 349
 350          If you enable this driver, it is recommended to avoid conflicts
 351          with usb-storage by enabling USB_LIBUSUAL.
 352
 353          If unsure, say N.
 354
 355config BLK_DEV_RAM
 356        tristate "RAM block device support"
 357        ---help---
 358          Saying Y here will allow you to use a portion of your RAM memory as
 359          a block device, so that you can make file systems on it, read and
 360          write to it and do all the other things that you can do with normal
 361          block devices (such as hard drives). It is usually used to load and
 362          store a copy of a minimal root file system off of a floppy into RAM
 363          during the initial install of Linux.
 364
 365          Note that the kernel command line option "ramdisk=XX" is now obsolete.
 366          For details, read <file:Documentation/blockdev/ramdisk.txt>.
 367
 368          To compile this driver as a module, choose M here: the
 369          module will be called rd.
 370
 371          Most normal users won't need the RAM disk functionality, and can
 372          thus say N here.
 373
 374config BLK_DEV_RAM_COUNT
 375        int "Default number of RAM disks"
 376        default "16"
 377        depends on BLK_DEV_RAM
 378        help
 379          The default value is 16 RAM disks. Change this if you know what you
 380          are doing. If you boot from a filesystem that needs to be extracted
 381          in memory, you will need at least one RAM disk (e.g. root on cramfs).
 382
 383config BLK_DEV_RAM_SIZE
 384        int "Default RAM disk size (kbytes)"
 385        depends on BLK_DEV_RAM
 386        default "4096"
 387        help
 388          The default value is 4096 kilobytes. Only change this if you know
 389          what you are doing.
 390
 391config BLK_DEV_XIP
 392        bool "Support XIP filesystems on RAM block device"
 393        depends on BLK_DEV_RAM
 394        default n
 395        help
 396          Support XIP filesystems (such as ext2 with XIP support on) on
 397          top of block ram device. This will slightly enlarge the kernel, and
 398          will prevent RAM block device backing store memory from being
 399          allocated from highmem (only a problem for highmem systems).
 400
 401config CDROM_PKTCDVD
 402        tristate "Packet writing on CD/DVD media"
 403        depends on !UML
 404        help
 405          If you have a CDROM/DVD drive that supports packet writing, say
 406          Y to include support. It should work with any MMC/Mt Fuji
 407          compliant ATAPI or SCSI drive, which is just about any newer
 408          DVD/CD writer.
 409
 410          Currently only writing to CD-RW, DVD-RW, DVD+RW and DVDRAM discs
 411          is possible.
 412          DVD-RW disks must be in restricted overwrite mode.
 413
 414          See the file <file:Documentation/cdrom/packet-writing.txt>
 415          for further information on the use of this driver.
 416
 417          To compile this driver as a module, choose M here: the
 418          module will be called pktcdvd.
 419
 420config CDROM_PKTCDVD_BUFFERS
 421        int "Free buffers for data gathering"
 422        depends on CDROM_PKTCDVD
 423        default "8"
 424        help
 425          This controls the maximum number of active concurrent packets. More
 426          concurrent packets can increase write performance, but also require
 427          more memory. Each concurrent packet will require approximately 64Kb
 428          of non-swappable kernel memory, memory which will be allocated when
 429          a disc is opened for writing.
 430
 431config CDROM_PKTCDVD_WCACHE
 432        bool "Enable write caching (EXPERIMENTAL)"
 433        depends on CDROM_PKTCDVD && EXPERIMENTAL
 434        help
 435          If enabled, write caching will be set for the CD-R/W device. For now
 436          this option is dangerous unless the CD-RW media is known good, as we
 437          don't do deferred write error handling yet.
 438
 439config ATA_OVER_ETH
 440        tristate "ATA over Ethernet support"
 441        depends on NET
 442        help
 443        This driver provides Support for ATA over Ethernet block
 444        devices like the Coraid EtherDrive (R) Storage Blade.
 445
 446config MG_DISK
 447        tristate "mGine mflash, gflash support"
 448        depends on ARM && GPIOLIB
 449        help
 450          mGine mFlash(gFlash) block device driver
 451
 452config MG_DISK_RES
 453        int "Size of reserved area before MBR"
 454        depends on MG_DISK
 455        default 0
 456        help
 457          Define size of reserved area that usually used for boot. Unit is KB.
 458          All of the block device operation will be taken this value as start
 459          offset
 460          Examples:
 461                        1024 => 1 MB
 462
 463config SUNVDC
 464        tristate "Sun Virtual Disk Client support"
 465        depends on SUN_LDOMS
 466        help
 467          Support for virtual disk devices as a client under Sun
 468          Logical Domains.
 469
 470source "drivers/s390/block/Kconfig"
 471
 472config XILINX_SYSACE
 473        tristate "Xilinx SystemACE support"
 474        depends on 4xx || MICROBLAZE
 475        help
 476          Include support for the Xilinx SystemACE CompactFlash interface
 477
 478config XEN_BLKDEV_FRONTEND
 479        tristate "Xen virtual block device support"
 480        depends on XEN
 481        default y
 482        select XEN_XENBUS_FRONTEND
 483        help
 484          This driver implements the front-end of the Xen virtual
 485          block device driver.  It communicates with a back-end driver
 486          in another domain which drives the actual block device.
 487
 488config XEN_BLKDEV_BACKEND
 489        tristate "Xen block-device backend driver"
 490        depends on XEN_BACKEND
 491        help
 492          The block-device backend driver allows the kernel to export its
 493          block devices to other guests via a high-performance shared-memory
 494          interface.
 495
 496          The corresponding Linux frontend driver is enabled by the
 497          CONFIG_XEN_BLKDEV_FRONTEND configuration option.
 498
 499          The backend driver attaches itself to a any block device specified
 500          in the XenBus configuration. There are no limits to what the block
 501          device as long as it has a major and minor.
 502
 503          If you are compiling a kernel to run in a Xen block backend driver
 504          domain (often this is domain 0) you should say Y here. To
 505          compile this driver as a module, chose M here: the module
 506          will be called xen-blkback.
 507
 508
 509config VIRTIO_BLK
 510        tristate "Virtio block driver (EXPERIMENTAL)"
 511        depends on EXPERIMENTAL && VIRTIO
 512        ---help---
 513          This is the virtual block driver for virtio.  It can be used with
 514          lguest or QEMU based VMMs (like KVM or Xen).  Say Y or M.
 515
 516config BLK_DEV_HD
 517        bool "Very old hard disk (MFM/RLL/IDE) driver"
 518        depends on HAVE_IDE
 519        depends on !ARM || ARCH_RPC || ARCH_SHARK || BROKEN
 520        help
 521          This is a very old hard disk driver that lacks the enhanced
 522          functionality of the newer ones.
 523
 524          It is required for systems with ancient MFM/RLL/ESDI drives.
 525
 526          If unsure, say N.
 527
 528config BLK_DEV_RBD
 529        tristate "Rados block device (RBD)"
 530        depends on INET && EXPERIMENTAL && BLOCK
 531        select CEPH_LIB
 532        select LIBCRC32C
 533        select CRYPTO_AES
 534        select CRYPTO
 535        default n
 536        help
 537          Say Y here if you want include the Rados block device, which stripes
 538          a block device over objects stored in the Ceph distributed object
 539          store.
 540
 541          More information at http://ceph.newdream.net/.
 542
 543          If unsure, say N.
 544
 545endif # BLK_DEV
 546
lxr.linux.no kindly hosted by Redpill Linpro AS, provider of Linux consulting and operations services since 1995.