X-Git-Url: https://scm.lunaixsky.com/lunaix-os.git/blobdiff_plain/191737e1350a125739697af304730a0028ca01d5..fa57b4a05aa12d594f40e0894e0ac6f810a7095c:/lunaix-os/includes/lunaix/block.h diff --git a/lunaix-os/includes/lunaix/block.h b/lunaix-os/includes/lunaix/block.h index db8ae5c..df481d8 100644 --- a/lunaix-os/includes/lunaix/block.h +++ b/lunaix-os/includes/lunaix/block.h @@ -2,17 +2,21 @@ #define __LUNAIX_BLOCK_H #include +#include #define LPT_SIG 0x414e554c #define PARTITION_NAME_SIZE 48 +#define DEV_ID_SIZE 32 typedef uint64_t partition_t; typedef uint32_t bdev_t; struct block_dev { + char bdev_id[DEV_ID_SIZE]; char name[PARTITION_NAME_SIZE]; struct hba_device* hd_dev; + struct device* dev; uint64_t base_lba; uint64_t end_lba; }; @@ -34,4 +38,16 @@ struct lpt_header uint32_t table_len; } __attribute__((packed)); +void +block_init(); + +int +block_mount_disk(struct hba_device* hd_dev); + +void +blk_mapping_init(); + +void +blk_set_blkmapping(struct block_dev* bdev); + #endif /* __LUNAIX_BLOCK_H */