1 #ifndef __LUNAIX_BLOCK_H
2 #define __LUNAIX_BLOCK_H
4 #include <hal/ahci/hba.h>
5 #include <lunaix/device.h>
7 #define LPT_SIG 0x414e554c
8 #define PARTITION_NAME_SIZE 48
11 typedef uint64_t partition_t;
12 typedef uint32_t bdev_t;
16 char bdev_id[DEV_ID_SIZE];
17 char name[PARTITION_NAME_SIZE];
18 struct hba_device* hd_dev;
26 char part_name[PARTITION_NAME_SIZE];
29 } __attribute__((packed));
31 // Lunaix Partition Table
36 uint32_t pt_start_lba;
39 } __attribute__((packed));
45 block_mount_disk(struct hba_device* hd_dev);
51 blk_set_blkmapping(struct block_dev* bdev);
53 #endif /* __LUNAIX_BLOCK_H */