loader: load_elf(): Add doc comment
Document the usage of load_elf() for clarity on current features. Signed-off-by: Peter Crosthwaite <crosthwaite.peter@gmail.com> Reviewed-by: Peter Maydell <peter.maydell@linaro.org> Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
This commit is contained in:
parent
04ae712a9f
commit
140b7ce5ff
@ -44,6 +44,29 @@ int load_image_gzipped(const char *filename, hwaddr addr, uint64_t max_sz);
|
|||||||
#define ELF_LOAD_WRONG_ARCH -3
|
#define ELF_LOAD_WRONG_ARCH -3
|
||||||
#define ELF_LOAD_WRONG_ENDIAN -4
|
#define ELF_LOAD_WRONG_ENDIAN -4
|
||||||
const char *load_elf_strerror(int error);
|
const char *load_elf_strerror(int error);
|
||||||
|
|
||||||
|
/** load_elf:
|
||||||
|
* @filename: Path of ELF file
|
||||||
|
* @translate_fn: optional function to translate load addresses
|
||||||
|
* @translate_opaque: opaque data passed to @translate_fn
|
||||||
|
* @pentry: Populated with program entry point. Ignored if NULL.
|
||||||
|
* @lowaddr: Populated with lowest loaded address. Ignored if NULL.
|
||||||
|
* @highaddr: Populated with highest loaded address. Ignored if NULL.
|
||||||
|
* @bigendian: Expected ELF endianness. 0 for LE otherwise BE
|
||||||
|
* @elf_machine: Expected ELF machine type
|
||||||
|
* @clear_lsb: Set to mask off LSB of addresses (Some architectures use
|
||||||
|
* this for non-address data)
|
||||||
|
*
|
||||||
|
* Load an ELF file's contents to the emulated system's address space.
|
||||||
|
* Clients may optionally specify a callback to perform address
|
||||||
|
* translations. @pentry, @lowaddr and @highaddr are optional pointers
|
||||||
|
* which will be populated with various load information. @bigendian and
|
||||||
|
* @elf_machine give the expected endianness and machine for the ELF the
|
||||||
|
* load will fail if the target ELF does not match. Some architectures
|
||||||
|
* have some architecture-specific behaviours that come into effect when
|
||||||
|
* their particular values for @elf_machine are set.
|
||||||
|
*/
|
||||||
|
|
||||||
int load_elf(const char *filename, uint64_t (*translate_fn)(void *, uint64_t),
|
int load_elf(const char *filename, uint64_t (*translate_fn)(void *, uint64_t),
|
||||||
void *translate_opaque, uint64_t *pentry, uint64_t *lowaddr,
|
void *translate_opaque, uint64_t *pentry, uint64_t *lowaddr,
|
||||||
uint64_t *highaddr, int big_endian, int elf_machine,
|
uint64_t *highaddr, int big_endian, int elf_machine,
|
||||||
|
Loading…
Reference in New Issue
Block a user