diff options
Diffstat (limited to 'src')
| -rw-r--r-- | src/include/gpxe/blockdev.h | 39 |
1 files changed, 39 insertions, 0 deletions
diff --git a/src/include/gpxe/blockdev.h b/src/include/gpxe/blockdev.h new file mode 100644 index 000000000..59f5bf746 --- /dev/null +++ b/src/include/gpxe/blockdev.h @@ -0,0 +1,39 @@ +#ifndef _GPXE_BLOCKDEV_H +#define _GPXE_BLOCKDEV_H + +/** + * @file + * + * Block devices + * + */ + +/** A block device */ +struct block_device { + /** Block size */ + size_t blksize; + /** Total number of blocks */ + uint64_t blocks; + /** + * Read block + * + * @v blockdev Block device + * @v block Block number + * @v buffer Data buffer + * @ret rc Return status code + */ + int ( * read ) ( struct block_device *blockdev, uint64_t block, + void *buffer ); + /** + * Write block + * + * @v blockdev Block device + * @v block Block number + * @v buffer Data buffer + * @ret rc Return status code + */ + int ( * write ) ( struct block_device *blockdev, uint64_t block, + const void *buffer ); +}; + +#endif /* _GPXE_BLOCKDEV_H */ |
