1 #ifndef SYS_INFO_H 2 #define SYS_INFO_H 3 4 /* Information collected from firmware/bootloader */ 5 6 struct sys_info { 7 /* Values passed by bootloader */ 8 unsigned long boot_type; 9 unsigned long boot_data; 10 unsigned long boot_arg; 11 12 char *firmware; /* "PCBIOS", "LinuxBIOS", etc. */ 13 char *command_line; /* command line given to us */ 14 #if 0 15 //By LYH 16 //Will use meminfo in Etherboot 17 /* memory map */ 18 int n_memranges; 19 struct memrange { 20 unsigned long long base; 21 unsigned long long size; 22 } *memrange; 23 #endif 24 }; 25 26 void collect_sys_info(struct sys_info *info); 27 void collect_elfboot_info(struct sys_info *info); 28 void collect_linuxbios_info(struct sys_info *info); 29 30 /* Our name and version. I want to see single instance of these in the image */ 31 extern const char *program_name, *program_version; 32 33 #endif /* SYS_INFO_H */ 34