7dd8f6fde4
Add avr_load_firmware() function to load firmware in ELF or raw binary format. [AM: Corrected the type of the variable containing e_flags] [AM: Moved definition of e_flags conversion function to boot.c] Suggested-by: Aleksandar Markovic <aleksandar.m.mail@gmail.com> Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org> Signed-off-by: Aleksandar Markovic <aleksandar.m.mail@gmail.com> Reviewed-by: Aleksandar Markovic <aleksandar.m.mail@gmail.com> Signed-off-by: Thomas Huth <huth@tuxfamily.org> Message-Id: <20200705140315.260514-24-huth@tuxfamily.org> [PMD: Replace load_image_targphys() by load_image_mr()] Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
34 lines
897 B
C
34 lines
897 B
C
/*
|
|
* AVR loader helpers
|
|
*
|
|
* Copyright (c) 2019-2020 Philippe Mathieu-Daudé
|
|
*
|
|
* This work is licensed under the terms of the GNU GPLv2 or later.
|
|
* See the COPYING file in the top-level directory.
|
|
* SPDX-License-Identifier: GPL-2.0-or-later
|
|
*/
|
|
|
|
#ifndef HW_AVR_BOOT_H
|
|
#define HW_AVR_BOOT_H
|
|
|
|
#include "hw/boards.h"
|
|
#include "cpu.h"
|
|
|
|
/**
|
|
* avr_load_firmware: load an image into a memory region
|
|
*
|
|
* @cpu: Handle a AVR CPU object
|
|
* @ms: A MachineState
|
|
* @mr: Memory Region to load into
|
|
* @firmware: Path to the firmware file (raw binary or ELF format)
|
|
*
|
|
* Load a firmware supplied by the machine or by the user with the
|
|
* '-bios' command line option, and put it in target memory.
|
|
*
|
|
* Returns: true on success, false on error.
|
|
*/
|
|
bool avr_load_firmware(AVRCPU *cpu, MachineState *ms,
|
|
MemoryRegion *mr, const char *firmware);
|
|
|
|
#endif
|