ReactOS  0.4.15-dev-509-g96a357b
BlockIo.h
Go to the documentation of this file.
1 
18 #ifndef __BLOCK_IO_H__
19 #define __BLOCK_IO_H__
20 
21 #define EFI_BLOCK_IO_PROTOCOL_GUID \
22  { \
23  0x964e5b21, 0x6459, 0x11d2, {0x8e, 0x39, 0x0, 0xa0, 0xc9, 0x69, 0x72, 0x3b } \
24  }
25 
27 
31 #define BLOCK_IO_PROTOCOL EFI_BLOCK_IO_PROTOCOL_GUID
32 
37 
49 typedef
53  IN BOOLEAN ExtendedVerification
54  );
55 
75 typedef
79  IN UINT32 MediaId,
80  IN EFI_LBA Lba,
82  OUT VOID *Buffer
83  );
84 
105 typedef
109  IN UINT32 MediaId,
110  IN EFI_LBA Lba,
112  IN VOID *Buffer
113  );
114 
125 typedef
129  );
130 
134 typedef struct {
139 
144 
151 
157 
163 
168 
174 
179 
185 
192 
199 
207 
208 #define EFI_BLOCK_IO_PROTOCOL_REVISION 0x00010000
209 #define EFI_BLOCK_IO_PROTOCOL_REVISION2 0x00020001
210 #define EFI_BLOCK_IO_PROTOCOL_REVISION3 0x00020031
211 
215 #define EFI_BLOCK_IO_INTERFACE_REVISION EFI_BLOCK_IO_PROTOCOL_REVISION
216 
231 
236 
237 };
238 
240 
241 #endif
#define IN
Definition: typedefs.h:39
EFI_BLOCK_RESET Reset
Definition: BlockIo.h:232
BOOLEAN LogicalPartition
Definition: BlockIo.h:156
BOOLEAN ReadOnly
Definition: BlockIo.h:162
EFI_BLOCK_WRITE WriteBlocks
Definition: BlockIo.h:234
EFI_BLOCK_FLUSH FlushBlocks
Definition: BlockIo.h:235
UINT32 UINTN
EFI_BLOCK_READ ReadBlocks
Definition: BlockIo.h:233
UINT32 OptimalTransferLengthGranularity
Definition: BlockIo.h:205
unsigned int UINT32
unsigned char BOOLEAN
UINT64 EFI_LBA
Definition: UefiBaseType.h:47
BOOLEAN RemovableMedia
Definition: BlockIo.h:143
#define BufferSize
Definition: classpnp.h:419
BOOLEAN WriteCaching
Definition: BlockIo.h:167
BOOLEAN MediaPresent
Definition: BlockIo.h:150
EFI_STATUS(EFIAPI * EFI_BLOCK_FLUSH)(IN EFI_BLOCK_IO_PROTOCOL *This)
Definition: BlockIo.h:127
RETURN_STATUS EFI_STATUS
Definition: UefiBaseType.h:31
EFI_STATUS(EFIAPI * EFI_BLOCK_RESET)(IN EFI_BLOCK_IO_PROTOCOL *This, IN BOOLEAN ExtendedVerification)
Definition: BlockIo.h:51
EFI_BLOCK_IO_MEDIA * Media
Definition: BlockIo.h:230
EFI_LBA LastBlock
Definition: BlockIo.h:184
#define EFIAPI
UINT32 LogicalBlocksPerPhysicalBlock
Definition: BlockIo.h:198
EFI_BLOCK_IO_PROTOCOL EFI_BLOCK_IO
Definition: BlockIo.h:36
#define OUT
Definition: typedefs.h:40
EFI_STATUS(EFIAPI * EFI_BLOCK_WRITE)(IN EFI_BLOCK_IO_PROTOCOL *This, IN UINT32 MediaId, IN EFI_LBA Lba, IN UINTN BufferSize, IN VOID *Buffer)
Definition: BlockIo.h:107
EFI_GUID gEfiBlockIoProtocolGuid
UINT32 BlockSize
Definition: BlockIo.h:173
unsigned long long UINT64
EFI_LBA LowestAlignedLba
Definition: BlockIo.h:191
IN BOOLEAN OUT PSTR Buffer
Definition: progress.h:34
EFI_STATUS(EFIAPI * EFI_BLOCK_READ)(IN EFI_BLOCK_IO_PROTOCOL *This, IN UINT32 MediaId, IN EFI_LBA Lba, IN UINTN BufferSize, OUT VOID *Buffer)
Definition: BlockIo.h:77