1 #ifndef BIOS_LINKER_LOADER_H 2 #define BIOS_LINKER_LOADER_H 3 4 #include <glib.h> 5 6 typedef struct BIOSLinker { 7 GArray *cmd_blob; 8 GArray *file_list; 9 } BIOSLinker; 10 11 BIOSLinker *bios_linker_loader_init(void); 12 13 void bios_linker_loader_alloc(BIOSLinker *linker, 14 const char *file_name, 15 GArray *file_blob, 16 uint32_t alloc_align, 17 bool alloc_fseg); 18 19 void bios_linker_loader_add_checksum(BIOSLinker *linker, const char *file, 20 unsigned start_offset, unsigned size, 21 unsigned checksum_offset); 22 23 void bios_linker_loader_add_pointer(BIOSLinker *linker, 24 const char *dest_file, 25 uint32_t dst_patched_offset, 26 uint8_t dst_patched_size, 27 const char *src_file, 28 uint32_t src_offset); 29 30 void bios_linker_loader_cleanup(BIOSLinker *linker); 31 #endif 32