Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 1 | # |
| 2 | # Block device driver configuration |
| 3 | # |
| 4 | |
| 5 | menu "Block devices" |
| 6 | |
| 7 | config BLK_DEV_FD |
| 8 | tristate "Normal floppy disk support" |
viro@ZenIV.linux.org.uk | a08b6b7 | 2005-09-06 01:48:42 +0100 | [diff] [blame] | 9 | depends on ARCH_MAY_HAVE_PC_FDC |
Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 10 | ---help--- |
| 11 | If you want to use the floppy disk drive(s) of your PC under Linux, |
| 12 | say Y. Information about this driver, especially important for IBM |
| 13 | Thinkpad users, is contained in <file:Documentation/floppy.txt>. |
| 14 | That file also contains the location of the Floppy driver FAQ as |
| 15 | well as location of the fdutils package used to configure additional |
| 16 | parameters of the driver at run time. |
| 17 | |
| 18 | To compile this driver as a module, choose M here: the |
| 19 | module will be called floppy. |
| 20 | |
| 21 | config AMIGA_FLOPPY |
| 22 | tristate "Amiga floppy support" |
| 23 | depends on AMIGA |
| 24 | |
| 25 | config ATARI_FLOPPY |
| 26 | tristate "Atari floppy support" |
| 27 | depends on ATARI |
| 28 | |
| 29 | config BLK_DEV_SWIM_IOP |
| 30 | bool "Macintosh IIfx/Quadra 900/Quadra 950 floppy support (EXPERIMENTAL)" |
| 31 | depends on MAC && EXPERIMENTAL && BROKEN |
| 32 | help |
| 33 | Say Y here to support the SWIM (Super Woz Integrated Machine) IOP |
| 34 | floppy controller on the Macintosh IIfx and Quadra 900/950. |
| 35 | |
| 36 | config MAC_FLOPPY |
| 37 | tristate "Support for PowerMac floppy" |
| 38 | depends on PPC_PMAC && !PPC_PMAC64 |
| 39 | help |
| 40 | If you have a SWIM-3 (Super Woz Integrated Machine 3; from Apple) |
| 41 | floppy controller, say Y here. Most commonly found in PowerMacs. |
| 42 | |
| 43 | config BLK_DEV_PS2 |
| 44 | tristate "PS/2 ESDI hard disk support" |
| 45 | depends on MCA && MCA_LEGACY && BROKEN |
| 46 | help |
| 47 | Say Y here if you have a PS/2 machine with a MCA bus and an ESDI |
| 48 | hard disk. |
| 49 | |
| 50 | To compile this driver as a module, choose M here: the |
| 51 | module will be called ps2esdi. |
| 52 | |
| 53 | config AMIGA_Z2RAM |
| 54 | tristate "Amiga Zorro II ramdisk support" |
| 55 | depends on ZORRO |
| 56 | help |
| 57 | This enables support for using Chip RAM and Zorro II RAM as a |
| 58 | ramdisk or as a swap partition. Say Y if you want to include this |
| 59 | driver in the kernel. |
| 60 | |
| 61 | To compile this driver as a module, choose M here: the |
| 62 | module will be called z2ram. |
| 63 | |
| 64 | config ATARI_ACSI |
| 65 | tristate "Atari ACSI support" |
| 66 | depends on ATARI && BROKEN |
| 67 | ---help--- |
| 68 | This enables support for the Atari ACSI interface. The driver |
| 69 | supports hard disks and CD-ROMs, which have 512-byte sectors, or can |
| 70 | be switched to that mode. Due to the ACSI command format, only disks |
| 71 | up to 1 GB are supported. Special support for certain ACSI to SCSI |
| 72 | adapters, which could relax that, isn't included yet. The ACSI |
| 73 | driver is also the basis for certain other drivers for devices |
| 74 | attached to the ACSI bus: Atari SLM laser printer, BioNet-100 |
| 75 | Ethernet, and PAMsNet Ethernet. If you want to use one of these |
| 76 | devices, you need ACSI support, too. |
| 77 | |
| 78 | To compile this driver as a module, choose M here: the |
| 79 | module will be called acsi. |
| 80 | |
| 81 | comment "Some devices (e.g. CD jukebox) support multiple LUNs" |
| 82 | depends on ATARI && ATARI_ACSI |
| 83 | |
| 84 | config ACSI_MULTI_LUN |
| 85 | bool "Probe all LUNs on each ACSI device" |
| 86 | depends on ATARI_ACSI |
| 87 | help |
| 88 | If you have a ACSI device that supports more than one LUN (Logical |
| 89 | Unit Number), e.g. a CD jukebox, you should say Y here so that all |
| 90 | will be found by the ACSI driver. An ACSI device with multiple LUNs |
| 91 | acts logically like multiple ACSI devices. The vast majority of ACSI |
| 92 | devices have only one LUN, and so most people can say N here and |
| 93 | should in fact do so, because it is safer. |
| 94 | |
| 95 | config ATARI_SLM |
| 96 | tristate "Atari SLM laser printer support" |
| 97 | depends on ATARI && ATARI_ACSI!=n |
| 98 | help |
| 99 | If you have an Atari SLM laser printer, say Y to include support for |
| 100 | it in the kernel. Otherwise, say N. This driver is also available as |
| 101 | a module ( = code which can be inserted in and removed from the |
| 102 | running kernel whenever you want). The module will be called |
| 103 | acsi_slm. Be warned: the driver needs much ST-RAM and can cause |
| 104 | problems due to that fact! |
| 105 | |
| 106 | config BLK_DEV_XD |
| 107 | tristate "XT hard disk support" |
Al Viro | a553260 | 2005-05-04 05:39:42 +0100 | [diff] [blame] | 108 | depends on ISA && ISA_DMA_API |
Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 109 | help |
| 110 | Very old 8 bit hard disk controllers used in the IBM XT computer |
| 111 | will be supported if you say Y here. |
| 112 | |
| 113 | To compile this driver as a module, choose M here: the |
| 114 | module will be called xd. |
| 115 | |
| 116 | It's pretty unlikely that you have one of these: say N. |
| 117 | |
| 118 | config PARIDE |
| 119 | tristate "Parallel port IDE device support" |
| 120 | depends on PARPORT |
| 121 | ---help--- |
| 122 | There are many external CD-ROM and disk devices that connect through |
| 123 | your computer's parallel port. Most of them are actually IDE devices |
| 124 | using a parallel port IDE adapter. This option enables the PARIDE |
| 125 | subsystem which contains drivers for many of these external drives. |
| 126 | Read <file:Documentation/paride.txt> for more information. |
| 127 | |
| 128 | If you have said Y to the "Parallel-port support" configuration |
| 129 | option, you may share a single port between your printer and other |
| 130 | parallel port devices. Answer Y to build PARIDE support into your |
| 131 | kernel, or M if you would like to build it as a loadable module. If |
| 132 | your parallel port support is in a loadable module, you must build |
| 133 | PARIDE as a module. If you built PARIDE support into your kernel, |
| 134 | you may still build the individual protocol modules and high-level |
| 135 | drivers as loadable modules. If you build this support as a module, |
| 136 | it will be called paride. |
| 137 | |
| 138 | To use the PARIDE support, you must say Y or M here and also to at |
| 139 | least one high-level driver (e.g. "Parallel port IDE disks", |
| 140 | "Parallel port ATAPI CD-ROMs", "Parallel port ATAPI disks" etc.) and |
| 141 | to at least one protocol driver (e.g. "ATEN EH-100 protocol", |
| 142 | "MicroSolutions backpack protocol", "DataStor Commuter protocol" |
| 143 | etc.). |
| 144 | |
| 145 | source "drivers/block/paride/Kconfig" |
| 146 | |
| 147 | config BLK_CPQ_DA |
| 148 | tristate "Compaq SMART2 support" |
| 149 | depends on PCI |
| 150 | help |
| 151 | This is the driver for Compaq Smart Array controllers. Everyone |
| 152 | using these boards should say Y here. See the file |
| 153 | <file:Documentation/cpqarray.txt> for the current list of boards |
| 154 | supported by this driver, and for further information on the use of |
| 155 | this driver. |
| 156 | |
| 157 | config BLK_CPQ_CISS_DA |
| 158 | tristate "Compaq Smart Array 5xxx support" |
| 159 | depends on PCI |
| 160 | help |
| 161 | This is the driver for Compaq Smart Array 5xxx controllers. |
| 162 | Everyone using these boards should say Y here. |
| 163 | See <file:Documentation/cciss.txt> for the current list of |
| 164 | boards supported by this driver, and for further information |
| 165 | on the use of this driver. |
| 166 | |
| 167 | config CISS_SCSI_TAPE |
| 168 | bool "SCSI tape drive support for Smart Array 5xxx" |
| 169 | depends on BLK_CPQ_CISS_DA && SCSI && PROC_FS |
| 170 | help |
| 171 | When enabled (Y), this option allows SCSI tape drives and SCSI medium |
| 172 | changers (tape robots) to be accessed via a Compaq 5xxx array |
| 173 | controller. (See <file:Documentation/cciss.txt> for more details.) |
| 174 | |
| 175 | "SCSI support" and "SCSI tape support" must also be enabled for this |
| 176 | option to work. |
| 177 | |
| 178 | When this option is disabled (N), the SCSI portion of the driver |
| 179 | is not compiled. |
| 180 | |
| 181 | config BLK_DEV_DAC960 |
| 182 | tristate "Mylex DAC960/DAC1100 PCI RAID Controller support" |
| 183 | depends on PCI |
| 184 | help |
| 185 | This driver adds support for the Mylex DAC960, AcceleRAID, and |
| 186 | eXtremeRAID PCI RAID controllers. See the file |
| 187 | <file:Documentation/README.DAC960> for further information about |
| 188 | this driver. |
| 189 | |
| 190 | To compile this driver as a module, choose M here: the |
| 191 | module will be called DAC960. |
| 192 | |
| 193 | config BLK_DEV_UMEM |
| 194 | tristate "Micro Memory MM5415 Battery Backed RAM support (EXPERIMENTAL)" |
| 195 | depends on PCI && EXPERIMENTAL |
| 196 | ---help--- |
| 197 | Saying Y here will include support for the MM5415 family of |
| 198 | battery backed (Non-volatile) RAM cards. |
| 199 | <http://www.umem.com/> |
| 200 | |
| 201 | The cards appear as block devices that can be partitioned into |
| 202 | as many as 15 partitions. |
| 203 | |
| 204 | To compile this driver as a module, choose M here: the |
| 205 | module will be called umem. |
| 206 | |
| 207 | The umem driver has not yet been allocated a MAJOR number, so |
| 208 | one is chosen dynamically. Use "devfs" or look in /proc/devices |
| 209 | for the device number |
| 210 | |
| 211 | config BLK_DEV_UBD |
| 212 | bool "Virtual block device" |
| 213 | depends on UML |
| 214 | ---help--- |
| 215 | The User-Mode Linux port includes a driver called UBD which will let |
| 216 | you access arbitrary files on the host computer as block devices. |
| 217 | Unless you know that you do not need such virtual block devices say |
| 218 | Y here. |
| 219 | |
| 220 | config BLK_DEV_UBD_SYNC |
| 221 | bool "Always do synchronous disk IO for UBD" |
| 222 | depends on BLK_DEV_UBD |
| 223 | ---help--- |
| 224 | Writes to the virtual block device are not immediately written to the |
| 225 | host's disk; this may cause problems if, for example, the User-Mode |
| 226 | Linux 'Virtual Machine' uses a journalling filesystem and the host |
| 227 | computer crashes. |
| 228 | |
| 229 | Synchronous operation (i.e. always writing data to the host's disk |
| 230 | immediately) is configurable on a per-UBD basis by using a special |
| 231 | kernel command line option. Alternatively, you can say Y here to |
| 232 | turn on synchronous operation by default for all block devices. |
| 233 | |
| 234 | If you're running a journalling file system (like reiserfs, for |
| 235 | example) in your virtual machine, you will want to say Y here. If |
| 236 | you care for the safety of the data in your virtual machine, Y is a |
| 237 | wise choice too. In all other cases (for example, if you're just |
| 238 | playing around with User-Mode Linux) you can choose N. |
| 239 | |
| 240 | config BLK_DEV_COW_COMMON |
| 241 | bool |
| 242 | default BLK_DEV_UBD |
| 243 | |
| 244 | config MMAPPER |
| 245 | tristate "Example IO memory driver (BROKEN)" |
| 246 | depends on UML && BROKEN |
| 247 | ---help--- |
| 248 | The User-Mode Linux port can provide support for IO Memory |
| 249 | emulation with this option. This allows a host file to be |
| 250 | specified as an I/O region on the kernel command line. That file |
| 251 | will be mapped into UML's kernel address space where a driver can |
| 252 | locate it and do whatever it wants with the memory, including |
| 253 | providing an interface to it for UML processes to use. |
| 254 | |
| 255 | For more information, see |
| 256 | <http://user-mode-linux.sourceforge.net/iomem.html>. |
| 257 | |
| 258 | If you'd like to be able to provide a simulated IO port space for |
| 259 | User-Mode Linux processes, say Y. If unsure, say N. |
| 260 | |
| 261 | config BLK_DEV_LOOP |
| 262 | tristate "Loopback device support" |
| 263 | ---help--- |
| 264 | Saying Y here will allow you to use a regular file as a block |
| 265 | device; you can then create a file system on that block device and |
| 266 | mount it just as you would mount other block devices such as hard |
| 267 | drive partitions, CD-ROM drives or floppy drives. The loop devices |
| 268 | are block special device files with major number 7 and typically |
| 269 | called /dev/loop0, /dev/loop1 etc. |
| 270 | |
| 271 | This is useful if you want to check an ISO 9660 file system before |
| 272 | burning the CD, or if you want to use floppy images without first |
| 273 | writing them to floppy. Furthermore, some Linux distributions avoid |
| 274 | the need for a dedicated Linux partition by keeping their complete |
| 275 | root file system inside a DOS FAT file using this loop device |
| 276 | driver. |
| 277 | |
| 278 | To use the loop device, you need the losetup utility, found in the |
| 279 | util-linux package, see |
| 280 | <ftp://ftp.kernel.org/pub/linux/utils/util-linux/>. |
| 281 | |
| 282 | The loop device driver can also be used to "hide" a file system in |
| 283 | a disk partition, floppy, or regular file, either using encryption |
| 284 | (scrambling the data) or steganography (hiding the data in the low |
| 285 | bits of, say, a sound file). This is also safe if the file resides |
| 286 | on a remote file server. |
| 287 | |
| 288 | There are several ways of encrypting disks. Some of these require |
| 289 | kernel patches. The vanilla kernel offers the cryptoloop option |
| 290 | and a Device Mapper target (which is superior, as it supports all |
| 291 | file systems). If you want to use the cryptoloop, say Y to both |
| 292 | LOOP and CRYPTOLOOP, and make sure you have a recent (version 2.12 |
| 293 | or later) version of util-linux. Additionally, be aware that |
| 294 | the cryptoloop is not safe for storing journaled filesystems. |
| 295 | |
| 296 | Note that this loop device has nothing to do with the loopback |
| 297 | device used for network connections from the machine to itself. |
| 298 | |
| 299 | To compile this driver as a module, choose M here: the |
| 300 | module will be called loop. |
| 301 | |
| 302 | Most users will answer N here. |
| 303 | |
| 304 | config BLK_DEV_CRYPTOLOOP |
| 305 | tristate "Cryptoloop Support" |
| 306 | select CRYPTO |
| 307 | depends on BLK_DEV_LOOP |
| 308 | ---help--- |
| 309 | Say Y here if you want to be able to use the ciphers that are |
| 310 | provided by the CryptoAPI as loop transformation. This might be |
| 311 | used as hard disk encryption. |
| 312 | |
| 313 | WARNING: This device is not safe for journaled file systems like |
| 314 | ext3 or Reiserfs. Please use the Device Mapper crypto module |
| 315 | instead, which can be configured to be on-disk compatible with the |
| 316 | cryptoloop device. |
| 317 | |
| 318 | config BLK_DEV_NBD |
| 319 | tristate "Network block device support" |
| 320 | depends on NET |
| 321 | ---help--- |
| 322 | Saying Y here will allow your computer to be a client for network |
| 323 | block devices, i.e. it will be able to use block devices exported by |
| 324 | servers (mount file systems on them etc.). Communication between |
| 325 | client and server works over TCP/IP networking, but to the client |
| 326 | program this is hidden: it looks like a regular local file access to |
| 327 | a block device special file such as /dev/nd0. |
| 328 | |
| 329 | Network block devices also allows you to run a block-device in |
| 330 | userland (making server and client physically the same computer, |
| 331 | communicating using the loopback network device). |
| 332 | |
| 333 | Read <file:Documentation/nbd.txt> for more information, especially |
| 334 | about where to find the server code, which runs in user space and |
| 335 | does not need special kernel support. |
| 336 | |
| 337 | Note that this has nothing to do with the network file systems NFS |
| 338 | or Coda; you can say N here even if you intend to use NFS or Coda. |
| 339 | |
| 340 | To compile this driver as a module, choose M here: the |
| 341 | module will be called nbd. |
| 342 | |
| 343 | If unsure, say N. |
| 344 | |
| 345 | config BLK_DEV_SX8 |
| 346 | tristate "Promise SATA SX8 support" |
| 347 | depends on PCI |
| 348 | ---help--- |
| 349 | Saying Y or M here will enable support for the |
| 350 | Promise SATA SX8 controllers. |
| 351 | |
| 352 | Use devices /dev/sx8/$N and /dev/sx8/$Np$M. |
| 353 | |
| 354 | config BLK_DEV_UB |
| 355 | tristate "Low Performance USB Block driver" |
| 356 | depends on USB |
| 357 | help |
| 358 | This driver supports certain USB attached storage devices |
| 359 | such as flash keys. |
| 360 | |
| 361 | Warning: Enabling this cripples the usb-storage driver. |
| 362 | |
| 363 | If unsure, say N. |
| 364 | |
| 365 | config BLK_DEV_RAM |
| 366 | tristate "RAM disk support" |
| 367 | ---help--- |
| 368 | Saying Y here will allow you to use a portion of your RAM memory as |
| 369 | a block device, so that you can make file systems on it, read and |
| 370 | write to it and do all the other things that you can do with normal |
| 371 | block devices (such as hard drives). It is usually used to load and |
| 372 | store a copy of a minimal root file system off of a floppy into RAM |
| 373 | during the initial install of Linux. |
| 374 | |
| 375 | Note that the kernel command line option "ramdisk=XX" is now |
| 376 | obsolete. For details, read <file:Documentation/ramdisk.txt>. |
| 377 | |
| 378 | To compile this driver as a module, choose M here: the |
| 379 | module will be called rd. |
| 380 | |
| 381 | Most normal users won't need the RAM disk functionality, and can |
| 382 | thus say N here. |
| 383 | |
| 384 | config BLK_DEV_RAM_COUNT |
| 385 | int "Default number of RAM disks" if BLK_DEV_RAM |
| 386 | default "16" |
| 387 | help |
| 388 | The default value is 16 RAM disks. Change this if you know what |
| 389 | are doing. If you boot from a filesystem that needs to be extracted |
| 390 | in memory, you will need at least one RAM disk (e.g. root on cramfs). |
| 391 | |
| 392 | config BLK_DEV_RAM_SIZE |
| 393 | int "Default RAM disk size (kbytes)" |
| 394 | depends on BLK_DEV_RAM |
| 395 | default "4096" |
| 396 | help |
| 397 | The default value is 4096 kilobytes. Only change this if you know |
| 398 | what are you doing. If you are using IBM S/390, then set this to |
| 399 | 8192. |
| 400 | |
| 401 | config BLK_DEV_INITRD |
| 402 | bool "Initial RAM disk (initrd) support" |
| 403 | depends on BLK_DEV_RAM=y |
| 404 | help |
| 405 | The initial RAM disk is a RAM disk that is loaded by the boot loader |
| 406 | (loadlin or lilo) and that is mounted as root before the normal boot |
| 407 | procedure. It is typically used to load modules needed to mount the |
| 408 | "real" root file system, etc. See <file:Documentation/initrd.txt> |
| 409 | for details. |
| 410 | |
Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 411 | |
Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 412 | config CDROM_PKTCDVD |
| 413 | tristate "Packet writing on CD/DVD media" |
| 414 | depends on !UML |
| 415 | help |
| 416 | If you have a CDROM drive that supports packet writing, say Y to |
| 417 | include preliminary support. It should work with any MMC/Mt Fuji |
| 418 | compliant ATAPI or SCSI drive, which is just about any newer CD |
| 419 | writer. |
| 420 | |
| 421 | Currently only writing to CD-RW, DVD-RW and DVD+RW discs is possible. |
| 422 | DVD-RW disks must be in restricted overwrite mode. |
| 423 | |
| 424 | To compile this driver as a module, choose M here: the |
| 425 | module will be called pktcdvd. |
| 426 | |
| 427 | config CDROM_PKTCDVD_BUFFERS |
| 428 | int "Free buffers for data gathering" |
| 429 | depends on CDROM_PKTCDVD |
| 430 | default "8" |
| 431 | help |
| 432 | This controls the maximum number of active concurrent packets. More |
| 433 | concurrent packets can increase write performance, but also require |
| 434 | more memory. Each concurrent packet will require approximately 64Kb |
| 435 | of non-swappable kernel memory, memory which will be allocated at |
| 436 | pktsetup time. |
| 437 | |
| 438 | config CDROM_PKTCDVD_WCACHE |
| 439 | bool "Enable write caching" |
| 440 | depends on CDROM_PKTCDVD |
| 441 | help |
| 442 | If enabled, write caching will be set for the CD-R/W device. For now |
| 443 | this option is dangerous unless the CD-RW media is known good, as we |
| 444 | don't do deferred write error handling yet. |
| 445 | |
| 446 | source "drivers/s390/block/Kconfig" |
| 447 | |
Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 448 | config ATA_OVER_ETH |
| 449 | tristate "ATA over Ethernet support" |
| 450 | depends on NET |
| 451 | help |
| 452 | This driver provides Support for ATA over Ethernet block |
| 453 | devices like the Coraid EtherDrive (R) Storage Blade. |
| 454 | |
| 455 | endmenu |