1#ifndef SYS_INFO_H 2#define SYS_INFO_H 3 4/* Information collected from firmware/bootloader */ 5 6struct 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 26void collect_sys_info(struct sys_info *info); 27void collect_elfboot_info(struct sys_info *info); 28void collect_linuxbios_info(struct sys_info *info); 29 30/* Our name and version. I want to see single instance of these in the image */ 31extern const char *program_name, *program_version; 32 33#endif /* SYS_INFO_H */ 34