Version 1.02 12/12/00 173
8Block I/O Protocol
This chapter defines the Block I/O protocol. This protocol is used to abstract mass storage devices
to allow code running in the EFI boot services environment to access them without specific
knowledge of the type of device or controller that manages the device. Functions are defined to
read and write data at a block level from mass storage devices as well as to manage such devices in
the EFI boot services environment.

8.1 BLOCK_IO Protocol

Summary
This protocol provides control over block devices.
GUID
#define BLOCK_IO_PROTOCOL \
{ 964e5b21-6459-11d2-8e39-00a0c969723b }
Revision Number
#define EFI_BLOCK_IO_INTERFACE_REVISION 0x00010000
Protocol Interface Structure
typedef struct _EFI_BLOCK_IO {
UINT64 Revision;
EFI_BLOCK_IO_MEDIA *Media;
EFI_BLOCK_RESET Reset;
EFI_BLOCK_READ ReadBlocks;
EFI_BLOCK_WRITE WriteBlocks;
EFI_BLOCK_FLUSH FlushBlocks;
} EFI_BLOCK_IO;