65
66
grub_uint32_t tags;
66
67
} __attribute__ ((packed));
68
struct grub_openbsd_bios_mmap
69
struct freebsd_tag_header
72
#define OPENBSD_MMAP_AVAILABLE 1
73
#define OPENBSD_MMAP_RESERVED 2
74
#define OPENBSD_MMAP_ACPI 3
75
#define OPENBSD_MMAP_NVS 4
76
71
grub_uint32_t type;
79
void grub_unix_real_boot (grub_addr_t entry, ...)
80
__attribute__ ((cdecl,noreturn));
81
grub_err_t grub_freebsd_load_elfmodule32 (grub_file_t file, int argc,
75
grub_err_t grub_freebsd_load_elfmodule32 (struct grub_relocator *relocator,
76
grub_file_t file, int argc,
82
77
char *argv[], grub_addr_t *kern_end);
83
grub_err_t grub_freebsd_load_elfmodule_obj64 (grub_file_t file, int argc,
78
grub_err_t grub_freebsd_load_elfmodule_obj64 (struct grub_relocator *relocator,
79
grub_file_t file, int argc,
85
81
grub_addr_t *kern_end);
86
grub_err_t grub_freebsd_load_elf_meta32 (grub_file_t file,
87
grub_addr_t *kern_end);
88
grub_err_t grub_freebsd_load_elf_meta64 (grub_file_t file,
89
grub_addr_t *kern_end);
91
grub_err_t grub_freebsd_add_meta (grub_uint32_t type, void *data,
82
grub_err_t grub_freebsd_load_elf_meta32 (struct grub_relocator *relocator,
84
grub_addr_t *kern_end);
85
grub_err_t grub_freebsd_load_elf_meta64 (struct grub_relocator *relocator,
87
grub_addr_t *kern_end);
89
grub_err_t grub_netbsd_load_elf_meta32 (struct grub_relocator *relocator,
91
grub_addr_t *kern_end);
92
grub_err_t grub_netbsd_load_elf_meta64 (struct grub_relocator *relocator,
94
grub_addr_t *kern_end);
96
grub_err_t grub_bsd_add_meta (grub_uint32_t type,
97
void *data, grub_uint32_t len);
93
98
grub_err_t grub_freebsd_add_meta_module (char *filename, char *type,
94
99
int argc, char **argv,
95
100
grub_addr_t addr, grub_uint32_t size);
102
struct grub_openbsd_ramdisk_descriptor
104
grub_size_t max_size;
105
grub_uint8_t *target;
109
grub_err_t grub_openbsd_find_ramdisk32 (grub_file_t file,
110
grub_addr_t kern_start,
111
void *kern_chunk_src,
112
struct grub_openbsd_ramdisk_descriptor *desc);
113
grub_err_t grub_openbsd_find_ramdisk64 (grub_file_t file,
114
grub_addr_t kern_start,
115
void *kern_chunk_src,
116
struct grub_openbsd_ramdisk_descriptor *desc);
97
118
extern grub_uint8_t grub_bsd64_trampoline_start, grub_bsd64_trampoline_end;
98
119
extern grub_uint32_t grub_bsd64_trampoline_selfjump;
99
120
extern grub_uint32_t grub_bsd64_trampoline_gdt;