50
50
#include <grub/types.h>
53
52
#define NETBSD_BTINFO_BOOTPATH 0
54
53
#define NETBSD_BTINFO_ROOTDEVICE 1
55
#define NETBSD_BTINFO_BOOTDISK 3
54
#define NETBSD_BTINFO_CONSOLE 6
55
#define NETBSD_BTINFO_SYMTAB 8
56
56
#define NETBSD_BTINFO_MEMMAP 9
57
#define NETBSD_BTINFO_MODULES 11
58
#define NETBSD_BTINFO_FRAMEBUF 12
60
struct grub_netbsd_bootinfo
62
grub_uint32_t bi_count;
63
grub_uint32_t bi_data[0];
58
66
struct grub_netbsd_btinfo_common
64
struct grub_netbsd_btinfo_mmap_header
66
struct grub_netbsd_btinfo_common common;
70
struct grub_netbsd_btinfo_mmap_entry
74
#define NETBSD_MMAP_AVAILABLE 1
75
#define NETBSD_MMAP_RESERVED 2
76
#define NETBSD_MMAP_ACPI 3
77
#define NETBSD_MMAP_NVS 4
78
69
grub_uint32_t type;
81
struct grub_netbsd_btinfo_bootpath
83
struct grub_netbsd_btinfo_common common;
87
struct grub_netbsd_btinfo_rootdevice
89
struct grub_netbsd_btinfo_common common;
72
#define GRUB_NETBSD_MAX_BOOTPATH_LEN 80
93
74
struct grub_netbsd_btinfo_bootdisk
95
struct grub_netbsd_btinfo_common common;
96
int labelsector; /* label valid if != -1 */
76
grub_uint32_t labelsector; /* label valid if != 0xffffffff */
99
79
grub_uint16_t type, checksum;
100
80
char packname[16];
106
struct grub_netbsd_bootinfo
108
grub_uint32_t bi_count;
82
grub_uint32_t biosdev;
83
grub_uint32_t partition;
86
struct grub_netbsd_btinfo_symtab
94
struct grub_netbsd_btinfo_serial
101
struct grub_netbsd_btinfo_modules
104
grub_uint32_t last_addr;
105
struct grub_netbsd_btinfo_module
108
#define GRUB_NETBSD_MODULE_RAW 0
109
#define GRUB_NETBSD_MODULE_ELF 1
116
struct grub_netbsd_btinfo_framebuf
118
grub_uint64_t fbaddr;
121
grub_uint32_t height;
125
grub_uint8_t red_mask_size;
126
grub_uint8_t green_mask_size;
127
grub_uint8_t blue_mask_size;
129
grub_uint8_t red_field_pos;
130
grub_uint8_t green_field_pos;
131
grub_uint8_t blue_field_pos;
133
grub_uint8_t reserved[16];
136
#define GRUB_NETBSD_MAX_ROOTDEVICE_LEN 16