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