1 #ifndef _IPXE_BLOCKDEV_H 2 #define _IPXE_BLOCKDEV_H 29 #define block_read_TYPE( object_type ) \ 30 typeof ( int ( object_type, struct interface *data, \ 31 uint64_t lba, unsigned int count, \ 32 void *buffer, size_t len ) ) 37 #define block_write_TYPE( object_type ) \ 38 typeof ( int ( object_type, struct interface *data, \ 39 uint64_t lba, unsigned int count, \ 40 void *buffer, size_t len ) ) 44 #define block_read_capacity_TYPE( object_type ) \ 45 typeof ( int ( object_type, struct interface *data ) ) 49 #define block_capacity_TYPE( object_type ) \ 50 typeof ( void ( object_type, \ 51 struct block_device_capacity *capacity ) ) unsigned int max_count
Maximum number of blocks per single transfer.
void block_capacity(struct interface *intf, struct block_device_capacity *capacity)
Report block device capacity.
unsigned long long uint64_t
int block_read(struct interface *control, struct interface *data, uint64_t lba, unsigned int count, void *buffer, size_t len)
Read from block device.
FILE_LICENCE(GPL2_OR_LATER_OR_UBDL)
uint32_t buffer
Buffer index (or NETVSC_RNDIS_NO_BUFFER)
int block_write(struct interface *control, struct interface *data, uint64_t lba, unsigned int count, void *buffer, size_t len)
Write to block device.
static unsigned int count
Number of entries.
uint64_t blocks
Total number of blocks.
uint64_t lba
Starting block number.
int block_read_capacity(struct interface *control, struct interface *data)
Read block device capacity.
uint8_t data[48]
Additional event data.
size_t blksize
Block size.