]>
Commit | Line | Data |
---|---|---|
ca20cf32 BS |
1 | #ifndef LOADER_H |
2 | #define LOADER_H | |
3 | ||
4 | /* loader.c */ | |
5 | int get_image_size(const char *filename); | |
6 | int load_image(const char *filename, uint8_t *addr); /* deprecated */ | |
80a2ba3d ML |
7 | int load_image_targphys(const char *filename, target_phys_addr_t, |
8 | uint64_t max_sz); | |
409dbce5 AJ |
9 | int load_elf(const char *filename, uint64_t (*translate_fn)(void *, uint64_t), |
10 | void *translate_opaque, uint64_t *pentry, uint64_t *lowaddr, | |
11 | uint64_t *highaddr, int big_endian, int elf_machine, | |
12 | int clear_lsb); | |
c227f099 AL |
13 | int load_aout(const char *filename, target_phys_addr_t addr, int max_sz, |
14 | int bswap_needed, target_phys_addr_t target_page_size); | |
15 | int load_uimage(const char *filename, target_phys_addr_t *ep, | |
16 | target_phys_addr_t *loadaddr, int *is_linux); | |
ca20cf32 | 17 | |
725e14e9 MA |
18 | ssize_t read_targphys(const char *name, |
19 | int fd, target_phys_addr_t dst_addr, size_t nbytes); | |
3c178e72 GH |
20 | void pstrcpy_targphys(const char *name, |
21 | target_phys_addr_t dest, int buf_size, | |
ca20cf32 | 22 | const char *source); |
45a50b16 | 23 | |
bdb5ee30 GH |
24 | |
25 | int rom_add_file(const char *file, const char *fw_dir, | |
2e55e842 | 26 | target_phys_addr_t addr, int32_t bootindex); |
45a50b16 | 27 | int rom_add_blob(const char *name, const void *blob, size_t len, |
632cf034 | 28 | target_phys_addr_t addr); |
45a50b16 | 29 | int rom_load_all(void); |
8832cb80 | 30 | void rom_set_fw(void *f); |
235f86ef | 31 | int rom_copy(uint8_t *dest, target_phys_addr_t addr, size_t size); |
3c178e72 | 32 | void *rom_ptr(target_phys_addr_t addr); |
45a50b16 GH |
33 | void do_info_roms(Monitor *mon); |
34 | ||
2e55e842 GN |
35 | #define rom_add_file_fixed(_f, _a, _i) \ |
36 | rom_add_file(_f, NULL, _a, _i) | |
45a50b16 | 37 | #define rom_add_blob_fixed(_f, _b, _l, _a) \ |
632cf034 | 38 | rom_add_blob(_f, _b, _l, _a) |
45a50b16 GH |
39 | |
40 | #define PC_ROM_MIN_VGA 0xc0000 | |
41 | #define PC_ROM_MIN_OPTION 0xc8000 | |
42 | #define PC_ROM_MAX 0xe0000 | |
43 | #define PC_ROM_ALIGN 0x800 | |
44 | #define PC_ROM_SIZE (PC_ROM_MAX - PC_ROM_MIN_VGA) | |
45 | ||
de2aff17 | 46 | int rom_add_vga(const char *file); |
2e55e842 | 47 | int rom_add_option(const char *file, int32_t bootindex); |
45a50b16 | 48 | |
ca20cf32 | 49 | #endif |