X-Git-Url: http://review.tizen.org/git/?a=blobdiff_plain;f=drivers%2Fblock%2FKconfig;h=b5b482086af35d8de89cd43bf20eb68c2812ab3e;hb=aca1f6789aa2e384a58909fa7a9696db9d607675;hp=1ddd6508e40da4ed347c4cb010c2eb42bea03ece;hpb=f2105c61821b67bc1d572304d901518e88ee007b;p=platform%2Fkernel%2Fu-boot.git diff --git a/drivers/block/Kconfig b/drivers/block/Kconfig index 1ddd650..b5b4820 100644 --- a/drivers/block/Kconfig +++ b/drivers/block/Kconfig @@ -1,7 +1,7 @@ config BLK bool "Support block devices" depends on DM - default y if DM_MMC + default y if DM_MMC || DM_USB help Enable support for block devices, such as SCSI, MMC and USB flash sticks. These provide a block-level interface which permits @@ -10,37 +10,227 @@ config BLK be partitioned into several areas, called 'partitions' in U-Boot. A filesystem can be placed in each partition. -config SCSI - bool "Support SCSI controllers" +config HAVE_BLOCK_DEVICE + bool "Enable Legacy Block Device" help - This enables support for SCSI (Small Computer System Interface), - a parallel interface widely used with storage peripherals such as - hard drives and optical drives. The SCSI standards define physical - interfaces as well as protocols for controlling devices and - tranferring data. + Some devices require block support whether or not DM is enabled -config DM_SCSI - bool "Support SCSI controllers with driver model" - depends on BLK +config SPL_BLK + bool "Support block devices in SPL" + depends on SPL_DM && BLK + default y + help + Enable support for block devices, such as SCSI, MMC and USB + flash sticks. These provide a block-level interface which permits + reading, writing and (in some cases) erasing blocks. Block + devices often have a partition table which allows the device to + be partitioned into several areas, called 'partitions' in U-Boot. + A filesystem can be placed in each partition. + +config TPL_BLK + bool "Support block devices in TPL" + depends on TPL_DM && BLK + default y + help + Enable support for block devices, such as SCSI, MMC and USB + flash sticks. These provide a block-level interface which permits + reading, writing and (in some cases) erasing blocks. Block + devices often have a partition table which allows the device to + be partitioned into several areas, called 'partitions' in U-Boot. + A filesystem can be placed in each partition. + +config VPL_BLK + bool "Support block devices in VPL" + depends on VPL_DM && BLK + default y help - This option enables the SCSI (Small Computer System Interface) uclass - which supports SCSI and SATA HDDs. For every device configuration - (IDs/LUNs) a block device is created with RAW read/write and - filesystem support. + Enable support for block devices, such as SCSI, MMC and USB + flash sticks. These provide a block-level interface which permits + reading, writing and (in some cases) erasing blocks. Block + devices often have a partition table which allows the device to + be partitioned into several areas, called 'partitions' in U-Boot. + A filesystem can be placed in each partition. config BLOCK_CACHE bool "Use block device cache" - default n + depends on BLK + default y help This option enables a disk-block cache for all block devices. This is most useful when accessing filesystems under U-Boot since it will prevent repeated reads from directory structures and other filesystem data structures. +config SPL_BLOCK_CACHE + bool "Use block device cache in SPL" + depends on SPL_BLK + help + This option enables the disk-block cache in SPL + +config TPL_BLOCK_CACHE + bool "Use block device cache in TPL" + depends on TPL_BLK + help + This option enables the disk-block cache in TPL + +config EFI_MEDIA + bool "Support EFI media drivers" + default y if EFI || SANDBOX + help + Enable this to support media devices on top of UEFI. This enables + just the uclass so you also need a specific driver to make this do + anything. + + For sandbox there is a test driver. + +if EFI_MEDIA + +config EFI_MEDIA_SANDBOX + bool "Sandbox EFI media driver" + depends on SANDBOX + default y + help + Enables a simple sandbox media driver, used for testing just the + EFI_MEDIA uclass. It does not do anything useful, since sandbox does + not actually support running on top of UEFI. + +config EFI_MEDIA_BLK + bool "EFI media block driver" + depends on EFI_APP + default y + help + Enables a block driver for providing access to UEFI devices. This + allows use of block devices detected by the underlying UEFI + implementation. With this it is possible to use filesystems on these + devices, for example. + +endif # EFI_MEDIA + config IDE bool "Support IDE controllers" + select HAVE_BLOCK_DEVICE help Enables support for IDE (Integrated Drive Electronics) hard drives. This allows access to raw blocks and filesystems on an IDE drive from U-Boot. See also CMD_IDE which provides an 'ide' command for performing various IDE operations. + +if IDE + +config SYS_IDE_MAXBUS + hex "Maximumm number of IDE buses" + default 2 + help + This is the number of IDE buses provided by the board. Each one + can have one or two devices. One is designated the master and the + other one the slave. It is not required to have one or both on any + controller. + +config SYS_IDE_MAXDEVICE + hex "Maximum number of IDE devices" + default 2 + help + This is the number of IDE devices which can be connected to the + board. Normally this is 2 * CONFIG_SYS_IDE_MAXBUS since up to two + devices can be connected to each bus. The number of devices actually + connected is determined by probing. + +config SYS_ATA_BASE_ADDR + hex "Base address of IDE controller" + default 0 + help + This is the address of the IDE controller, from which other addresses + are calculated. Each bus is at a fixed offset from this address, + so it assumed that they are in the same area of the I/O space or + memory. + +config SYS_ATA_STRIDE + hex "IDE port stride" + default 0x1 + help + This is the distance between each IDE register, in bytes. For an + 8-bit controller this is typically 1, meaning that the registers + appear at consecutive bytes. If the value 2 two, that might indicate + a 16-bit register space. + +config SYS_ATA_DATA_OFFSET + hex "Offset of the data register" + default 0x0 + help + This is the offset of the controller's data register from the base + address of the controller. This is typically 0, but may be something + else if there are some other registers at the start of the + controller space. + +config SYS_ATA_REG_OFFSET + hex "Offset of the register space" + default 0x0 + help + This is the offset of the controller's 'register' space from the base + address of the controller. The data register (which is typically at + offset 0) has its own CONFIG, to deal with controllers where it is + somewhere else. Register 1 will be at this offset + 1, register 2 at + CONFIG_SYS_ATA_REG_OFFSET + 2, etc. + +config SYS_ATA_ALT_OFFSET + hex "Offset of the alternative registers" + default 0x0 + help + This is the offset of the controller's 'alternative' space from the + base address of the controller. This allows these registers to be + located separately from the data and register space. + +config SYS_ATA_IDE0_OFFSET + hex "Offset of bus 0" + default 0x1f0 + help + This is the start offset of bus 0 from the start of the + controller registers. All the other registers are calculated from + this address. using the above options. For x86 hardware this is often + 0x1f0. + +config SYS_ATA_IDE1_OFFSET + hex "Offset of bus 1" + default 0x170 + help + This is the start offset of bus 1 from the start of the + controller registers. All the other registers are calculated from + this address. using the above options. For x86 hardware this is often + 0x170. + +config ATAPI + bool "Enable ATAPI support" + help + This enabled Advanced Technology Attachment Packet Interface (ATAPI), + a protocol that allows a greater variety of devices to be connected + to the IDE port than with plain ATA. It allows SCSI commands to be + sent across the bus, e.g. to support optical drives. + +config IDE_RESET + bool "Support board-specific reset" + help + If this is defined, IDE Reset will be performed by calling the + function: + + ide_set_reset(int reset) + + where reset is 1 to assert reset and 0 to de-assert it. This function + must be defined in a board-specific file. + +endif # IDE + +config LBA48 + bool "Enable LBA support for disks larger than 137GB" + depends on HAVE_BLOCK_DEVICE + help + Set this to enable support for disks larger than 137GB. + Also look at CONFIG_SYS_64BIT_LBA. Without both of these, LBA48 + support uses 32bit variables and will 'only' support disks up to + 2.1TB. + +config SYS_64BIT_LBA + bool "Enable 64bit number of blocks on a block device" + depends on HAVE_BLOCK_DEVICE + help + Make the block subsystem use 64bit sector addresses, rather than the + default of 32bit.