summaryrefslogtreecommitdiffstats
path: root/qemu/roms/openbios/include/libopenbios/sys_info.h
diff options
context:
space:
mode:
Diffstat (limited to 'qemu/roms/openbios/include/libopenbios/sys_info.h')
-rw-r--r--qemu/roms/openbios/include/libopenbios/sys_info.h38
1 files changed, 38 insertions, 0 deletions
diff --git a/qemu/roms/openbios/include/libopenbios/sys_info.h b/qemu/roms/openbios/include/libopenbios/sys_info.h
new file mode 100644
index 000000000..a8b3cce37
--- /dev/null
+++ b/qemu/roms/openbios/include/libopenbios/sys_info.h
@@ -0,0 +1,38 @@
+#ifndef SYS_INFO_H
+#define SYS_INFO_H
+
+/* Information collected from firmware/bootloader */
+
+struct sys_info {
+ /* Values passed by bootloader */
+ unsigned long boot_type;
+ unsigned long boot_data;
+ unsigned long boot_arg;
+
+ const char *firmware; /* "PCBIOS", "LinuxBIOS", etc. */
+ const char *command_line; /* command line given to us */
+
+ /* memory map */
+ int n_memranges;
+ struct memrange {
+ unsigned long long base;
+ unsigned long long size;
+ } *memrange;
+ unsigned long *dict_start;
+ unsigned long *dict_end;
+ cell dict_limit;
+ ucell *dict_last;
+};
+
+extern void *elf_boot_notes;
+extern struct sys_info sys_info;
+
+void collect_elfboot_info(struct sys_info *info);
+void collect_linuxbios_info(struct sys_info *info);
+
+/* Our name and version. I want to see single instance of these in the image */
+extern const char *program_name, *program_version;
+
+#define LOADER_NOT_SUPPORT 0xbadf11e
+
+#endif /* SYS_INFO_H */