1 /* $OpenBSD: disk.h,v 1.4 2020/12/09 18:10:18 krw Exp $ */ 2 3 #ifndef _DISK_H 4 #define _DISK_H 5 6 #include <sys/queue.h> 7 8 typedef struct efi_diskinfo { 9 EFI_BLOCK_IO *blkio; 10 UINT32 mediaid; 11 } *efi_diskinfo_t; 12 13 struct diskinfo { 14 struct efi_diskinfo ed; 15 struct disklabel disklabel; 16 17 u_int part; 18 u_int flags; 19 #define DISKINFO_FLAG_GOODLABEL (1 << 0) 20 21 int (*diskio)(int, struct diskinfo *, u_int, int, void *); 22 int (*strategy)(void *, int, daddr_t, size_t, void *, size_t *); 23 24 TAILQ_ENTRY(diskinfo) list; 25 }; 26 TAILQ_HEAD(disklist_lh, diskinfo); 27 28 extern struct diskinfo *bootdev_dip; 29 30 extern struct disklist_lh disklist; 31 32 #endif /* _DISK_H */ 33