menu "Block devices support"

config ADK_KERNEL_MD
	bool

config ADK_KERNEL_RAID6_PQ
	tristate

config ADK_KERNEL_LBD
	bool

config ADK_KERNEL_BLK_DEV_IO_TRACE
	bool

config ADK_KERNEL_LSF
	bool

config ADK_KERNEL_IOSCHED_AS
	bool

config ADK_KERNEL_IOSCHED_DEADLINE
	bool

config ADK_KERNEL_IOSCHED_CFQ
	bool

config ADK_KERNEL_SCSI_LOWLEVEL
	bool

config ADK_KERNEL_SCSI_DMA
	bool

config ADK_KERNEL_SCSI_MULTI_LUN
	bool

config ADK_KERNEL_SCSI_CONSTANTS
	bool

config ADK_KERNEL_SCSI_LOGGING
	bool
	
config ADK_KERNEL_SCSI_SCAN_ASYNC
	bool

config ADK_KERNEL_ISCSI_TCP
	bool

config ADK_KERNEL_BLK_DEV
	bool

config ADK_KERNEL_ATA
	bool

config ADK_KERNEL_ATA_SFF
	bool

config ADK_KERNEL_ATA_BMDMA
	bool

config ADK_KERNEL_SATA_AHCI_PLATFORM
	bool

config ADK_KERNEL_SATA_PMP
	bool

config ADK_KERNEL_AHCI_IMX
	bool

config ADK_KERNEL_CONNECTOR
	bool

config ADK_KERNEL_MMC
	bool

config ADK_KERNEL_MMC_BLOCK
	bool

config ADK_KERNEL_MMC_BLOCK_BOUNCE
	bool

config ADK_KERNEL_MMC_UNSAFE_RESUME
	bool

config ADK_KERNEL_MMC_SDHCI
	bool

config ADK_KERNEL_MMC_SDHCI_IO_ACCESSORS
	bool

config ADK_KERNEL_MMC_SDHCI_PLTFM
	bool

config ADK_KERNEL_MMC_BCM2835
	bool

config ADK_KERNEL_MMC_BCM2835_DMA
	bool

menu "SATA/PATA devices support"
depends on ADK_TARGET_WITH_PATA || ADK_TARGET_WITH_SATA || ADK_TARGET_QEMU || ADK_TARGET_VBOX

config ADK_KERNEL_PATA_RB532
	tristate "CF disk driver for Mikrotik RB532"
	select ADK_KERNEL_SCSI
	select ADK_KERNEL_ATA
	select ADK_KERNEL_ATA_SFF
	select ADK_KERNEL_ATA_BMDMA
	select ADK_KERNEL_BLK_DEV
	select ADK_KERNEL_BLK_DEV_SD
	depends on ADK_TARGET_SYSTEM_MIKROTIK_RB532
	default y if ADK_TARGET_SYSTEM_MIKROTIK_RB532
	default n

config ADK_KERNEL_PATA_AMD
	tristate "AMD PATA driver"
	select ADK_KERNEL_SCSI
	select ADK_KERNEL_ATA
	select ADK_KERNEL_ATA_SFF
	select ADK_KERNEL_ATA_BMDMA
	select ADK_KERNEL_BLK_DEV
	select ADK_KERNEL_BLK_DEV_SD
	depends on ADK_TARGET_SYSTEM_PCENGINES_ALIX2D2 || \
		   ADK_TARGET_SYSTEM_PCENGINES_ALIX2D13 || \
		   ADK_TARGET_SYSTEM_PCENGINES_ALIX1C || \
		   ADK_TARGET_SYSTEM_LEMOTE_YEELONG
	default y if ADK_TARGET_SYSTEM_PCENGINES_ALIX2D2
	default y if ADK_TARGET_SYSTEM_PCENGINES_ALIX2D13
	default y if ADK_TARGET_SYSTEM_PCENGINES_ALIX1C
	default y if ADK_TARGET_SYSTEM_LEMOTE_YEELONG
	default n

config ADK_KERNEL_PATA_SC1200
	tristate
	select ADK_KERNEL_SCSI
	select ADK_KERNEL_ATA
	select ADK_KERNEL_ATA_SFF
	select ADK_KERNEL_ATA_BMDMA
	select ADK_KERNEL_BLK_DEV
	select ADK_KERNEL_BLK_DEV_SD
	depends on ADK_TARGET_SYSTEM_PCENGINES_WRAP
	default y if ADK_TARGET_SYSTEM_PCENGINES_WRAP
	default n

config ADK_KERNEL_SATA_AHCI
	tristate "AHCI SATA driver"
	select ADK_KERNEL_SCSI
	select ADK_KERNEL_ATA
	select ADK_KERNEL_BLK_DEV
	select ADK_KERNEL_BLK_DEV_SD
	depends on ADK_TARGET_SYSTEM_PCENGINES_APU || \
		   ADK_TARGET_VBOX
	default y if ADK_TARGET_SYSTEM_PCENGINES_APU
	default y if ADK_TARGET_VBOX
	default n
	help
	  Enables support for AHCI Serial ATA.

config ADK_KERNEL_ATA_PIIX
	tristate "ATA PIIX support"
	select ADK_KERNEL_SCSI
	select ADK_KERNEL_SCSI_DMA
	select ADK_KERNEL_ATA
	select ADK_KERNEL_ATA_SFF
	select ADK_KERNEL_ATA_BMDMA
	select ADK_KERNEL_BLK_DEV
	select ADK_KERNEL_BLK_DEV_SD
	depends on ADK_TARGET_SYSTEM_IBM_X40 || \
		ADK_TARGET_SYSTEM_QEMU_MIPS || \
		ADK_TARGET_SYSTEM_QEMU_MIPS64 || \
		ADK_TARGET_SYSTEM_QEMU_X86 || \
		ADK_TARGET_SYSTEM_QEMU_X86_64
	default y if ADK_TARGET_SYSTEM_IBM_X40
	default n
	help
	  ATA PIIX driver.

config ADK_KERNEL_PATA_MACIO
	tristate "MAC IO support"
	select ADK_KERNEL_SCSI
	select ADK_KERNEL_ATA
	select ADK_KERNEL_ATA_SFF
	select ADK_KERNEL_ATA_BMDMA
	select ADK_KERNEL_BLK_DEV
	select ADK_KERNEL_BLK_DEV_SD
	depends on ADK_TARGET_SYSTEM_QEMU_PPC
	
config ADK_KERNEL_PATA_PLATFORM
	tristate "PATA platform driver"
	select ADK_KERNEL_SCSI
	select ADK_KERNEL_ATA
	select ADK_KERNEL_ATA_SFF
	select ADK_KERNEL_ATA_BMDMA
	select ADK_KERNEL_BLK_DEV
	select ADK_KERNEL_BLK_DEV_SD
	depends on ADK_TARGET_SYSTEM_QEMU_SH
	default n

config ADK_KERNEL_PATA_PCMCIA
	tristate
	select ADK_KERNEL_PCCARD
	select ADK_KERNEL_PCMCIA

config ADK_KERNEL_PATA_IMX
	tristate "eSATA driver for IMX6 boards"
	select ADK_KERNEL_SCSI
	select ADK_KERNEL_ATA
	select ADK_KERNEL_ATA_SFF
	select ADK_KERNEL_ATA_BMDMA
	select ADK_KERNEL_BLK_DEV
	select ADK_KERNEL_BLK_DEV_SD
	select ADK_KERNEL_ATA
	select ADK_KERNEL_AHCI_IMX
	select ADK_KERNEL_SATA_PMP
	select ADK_KERNEL_SATA_AHCI_PLATFORM
	depends on ADK_TARGET_SYSTEM_SOLIDRUN_IMX6
	default y if ADK_TARGET_SYSTEM_SOLIDRUN_IMX6
	default n
	help
	  eSATA driver for IMX6 boards.

config ADK_KERNEL_PATA_CMD64X
	tristate "CMD64x PATA driver"
	select ADK_KERNEL_SCSI
	select ADK_KERNEL_ATA
	select ADK_KERNEL_ATA_SFF
	select ADK_KERNEL_ATA_BMDMA
	select ADK_KERNEL_BLK_DEV
	select ADK_KERNEL_BLK_DEV_SD
	depends on ADK_TARGET_SYSTEM_QEMU_SPARC64
	help
	  Driver for CMD64x chipsets.

config ADK_KERNEL_PATA_PXA
	tristate "PATA driver for Sharp Zaurus"
	select ADK_KERNEL_SCSI
	select ADK_KERNEL_ATA
	select ADK_KERNEL_ATA_SFF
	select ADK_KERNEL_ATA_BMDMA
	select ADK_KERNEL_BLK_DEV
	select ADK_KERNEL_BLK_DEV_SD
	select ADK_KERNEL_PATA_PCMCIA
	select ADK_KERNEL_PCMCIA_PXA2XX
	depends on ADK_TARGET_SYSTEM_SHARP_ZAURUS || ADK_TARGET_QEMU_ARM_MODEL_TERRIER || ADK_TARGET_QEMU_ARM_MODEL_SPITZ
	default y if ADK_TARGET_SYSTEM_SHARP_ZAURUS
	default n
	help
	  Driver for PATA on Sharp Zaurus

endmenu

menu "SCSI driver support"
depends on ADK_TARGET_WITH_SCSI || \
	ADK_TARGET_QEMU_ARM_MODEL_VERSATILEPB || \
	ADK_TARGET_SYSTEM_QEMU_PPC64 || \
	ADK_TARGET_SYSTEM_QEMU_SPARC

config ADK_KERNEL_SCSI_SYM53C8XX_2
	tristate "Symbios Logic 53C8XX2 support"
	select ADK_KERNEL_SCSI
	select ADK_KERNEL_SCSI_LOWLEVEL
	select ADK_KERNEL_BLK_DEV
	select ADK_KERNEL_BLK_DEV_SD
	depends on ADK_TARGET_QEMU_ARM_MODEL_VERSATILEPB

config ADK_KERNEL_SCSI_IBMVSCSI
	tristate "IBM VSCSI support"
	select ADK_KERNEL_SCSI
	select ADK_KERNEL_SCSI_LOWLEVEL
	select ADK_KERNEL_BLK_DEV
	select ADK_KERNEL_BLK_DEV_SD
	depends on ADK_TARGET_SYSTEM_QEMU_PPC64

config ADK_KERNEL_SCSI_SUNESP
	tristate "SUN ESP support"
	select ADK_KERNEL_SCSI
	select ADK_KERNEL_SCSI_LOWLEVEL
	select ADK_KERNEL_SBUS
	select ADK_KERNEL_BLK_DEV
	select ADK_KERNEL_BLK_DEV_SD
	depends on ADK_TARGET_SYSTEM_QEMU_SPARC

endmenu

menu "SD/MMC driver support"
depends on ADK_TARGET_WITH_SD

config ADK_KERNEL_MMC_AT91
	tristate
	select ADK_KERNEL_SCSI
	select ADK_KERNEL_MMC
	select ADK_KERNEL_MMC_BLOCK
	select ADK_KERNEL_BLK_DEV
	select ADK_KERNEL_BLK_DEV_SD
	depends on ADK_TARGET_SYSTEM_ACMESYSTEMS_FOXG20
	default y if ADK_TARGET_SYSTEM_ACMESYSTEMS_FOXG20
	default n

config ADK_KERNEL_MMC_BCM2835
	bool "SD card support for BCM2835 boards"
	select ADK_KERNEL_SCSI
	select ADK_KERNEL_MMC
	select ADK_KERNEL_MMC_BLOCK
	select ADK_KERNEL_BLK_DEV
	select ADK_KERNEL_BLK_DEV_SD
	select ADK_KERNEL_MMC_SDHCI
	select ADK_KERNEL_MMC_SDHCI_PLTFM
	select ADK_KERNEL_MMC_BCM2835_DMA
	depends on ADK_TARGET_BOARD_BCM28XX
	default y if ADK_TARGET_BOARD_BCM28XX
	default n

config ADK_KERNEL_MMC_SDHCI_ESDHC_IMX
	bool "SD card support for IMX6 boards"
	select ADK_KERNEL_SCSI
	select ADK_KERNEL_SCSI_DMA
	select ADK_KERNEL_SCSI_MULTI_LUN
	select ADK_KERNEL_SCSI_CONSTANTS
	select ADK_KERNEL_SCSI_LOGGING
	select ADK_KERNEL_SCSI_SCAN_ASYNC
	select ADK_KERNEL_MMC
	select ADK_KERNEL_MMC_BLOCK
	select ADK_KERNEL_MMC_BLOCK_BOUNCE
	select ADK_KERNEL_BLK_DEV
	select ADK_KERNEL_BLK_DEV_SD
	select ADK_KERNEL_MMC_SDHCI
	select ADK_KERNEL_MMC_SDHCI_IO_ACCESSORS
	select ADK_KERNEL_MMC_SDHCI_PLTFM
	select ADK_KERNEL_MMC_UNSAFE_RESUME
	depends on ADK_TARGET_SYSTEM_SOLIDRUN_IMX6
	default y if ADK_TARGET_SYSTEM_SOLIDRUN_IMX6
	default n

endmenu

menu "Block driver support"

config ADK_KERNEL_SCSI
	tristate "SCSI support"
	select ADK_KERNEL_LBD
	select ADK_KERNEL_LSF
	select ADK_KERNEL_IOSCHED_AS
	help
	  If you want to use a SCSI hard disk, SCSI tape drive, SCSI CD-ROM or
	  any other SCSI device under Linux, say Y and make sure that you know
	  the name of your SCSI host adapter (the card inside your computer
	  that "speaks" the SCSI protocol, also called SCSI controller),
	  because you will be asked for it.

	  You also need to say Y here if you have a device which speaks
	  the SCSI protocol.  Examples of this include the parallel port
	  version of the IOMEGA ZIP drive, USB storage devices, Fibre
	  Channel, FireWire storage and the IDE-SCSI emulation driver.

config ADK_KERNEL_BLK_DEV_SD
	tristate "SCSI disk support"
	select ADK_KERNEL_SCSI
	help
	  If you want to use SCSI hard disks, Fibre Channel disks,
	  USB storage or the SCSI or parallel port version of
	  the IOMEGA ZIP drive, say Y and read the SCSI-HOWTO,
	  the Disk-HOWTO and the Multi-Disk-HOWTO, available from
	  <http://www.tldp.org/docs.html#howto>. This is NOT for SCSI
	  CD-ROMs.

config ADK_KERNEL_BLK_DEV_SR
	tristate "SCSI CDROM support"
	select ADK_KERNEL_SCSI
	help
	  If you want to use a SCSI or FireWire CD-ROM under Linux,
	  say Y and read the SCSI-HOWTO and the CDROM-HOWTO at
	  <http://www.tldp.org/docs.html#howto>. Also make sure to say
	  Y or M to "ISO 9660 CD-ROM file system support" later.

config ADK_KERNEL_BLK_DEV_MD
	tristate "RAID support"
	select ADK_KERNEL_MD

config ADK_KERNEL_MD_RAID0
	tristate "RAID0 support"
	depends on ADK_KERNEL_BLK_DEV_MD

config ADK_KERNEL_MD_RAID1
	tristate "RAID1 support"
	depends on ADK_KERNEL_BLK_DEV_MD

config ADK_KERNEL_MD_RAID456
	tristate "RAID456 support"
	depends on ADK_KERNEL_BLK_DEV_MD

config ADK_KERNEL_BLK_DEV_DM
	tristate "Device Mapper support"
	select ADK_KERNEL_MD
	help
	  Device-mapper is a low level volume manager.  It works by allowing
	  people to specify mappings for ranges of logical sectors.  Various
	  mapping types are available, in addition people may write their own
	  modules containing custom mappings if they wish.

	  Higher level volume managers such as LVM2 use this driver.

config ADK_KERNEL_DM_CRYPT
	tristate "Crypt target support"
	select ADK_KERNEL_MD
	select ADK_KERNEL_CRYPTO
	select ADK_KERNEL_CRYPTO_CBC
	select ADK_KERNEL_CRYPTO_BLKCIPHER
	depends on ADK_KERNEL_BLK_DEV_DM
	default n
	help
	  This device-mapper target allows you to create a device that
	  transparently encrypts the data on it. You'll need to activate
	  the ciphers you're going to use in the cryptoapi configuration.

	  Information on how to use dm-crypt can be found on

	  <http://www.saout.de/misc/dm-crypt/>

config ADK_KERNEL_DM_SNAPSHOT
	tristate "Devicemapper Snapshot target"
	depends on ADK_KERNEL_BLK_DEV_DM
	help
         Allow volume managers to take writable snapshots of a device.

config ADK_KERNEL_DM_MIRROR
	tristate "Devicemapper Mirror target"
	depends on ADK_KERNEL_BLK_DEV_DM
	help
         Allow volume managers to mirror logical volumes, also
         needed for live data migration tools such as 'pvmove'.

config ADK_KERNEL_BLK_DEV_DRBD
	tristate "DRBD support (Network RAID 1)"
	select ADK_KERNEL_BLK_DEV
	select ADK_KERNEL_CONNECTOR
	default n
	help
          DRBD - http://www.drbd.org

config ADK_KERNEL_BLK_DEV_LOOP
	tristate "Loop mount support"
	select ADK_KERNEL_BLK_DEV
	default n
	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.

config ADK_KERNEL_BLK_DEV_NBD
	tristate "Network Block Device support"
	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/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.
          
config ADK_KERNEL_SWAP
	bool "SWAP support"
	help
	  Kernel swap support

endmenu
endmenu
