mirror of
https://github.com/Motorhead1991/qemu.git
synced 2025-08-04 16:23:55 -06:00
hw/mips: Add a bootloader helper
Add a bootloader helper to generate simple bootloaders for kernel. It can help us reduce inline hex hack and also keep MIPS release 6 compatibility easier. Signed-off-by: Jiaxun Yang <jiaxun.yang@flygoat.com> Reviewed-by: Philippe Mathieu-Daudé <f4bug@amsat.org> Message-Id: <20210127065424.114125-2-jiaxun.yang@flygoat.com> [PMD: Restricted bl_reg enum to C source, inverted bl_gen_write() args, added license in hw/mips/bootloader.h] Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
This commit is contained in:
parent
ac9b0117d5
commit
3ebbf86128
3 changed files with 223 additions and 1 deletions
22
include/hw/mips/bootloader.h
Normal file
22
include/hw/mips/bootloader.h
Normal file
|
@ -0,0 +1,22 @@
|
|||
/*
|
||||
* Utility for QEMU MIPS to generate it's simple bootloader
|
||||
*
|
||||
* Copyright (C) 2020 Jiaxun Yang <jiaxun.yang@flygoat.com>
|
||||
*
|
||||
* SPDX-License-Identifier: GPL-2.0-or-later
|
||||
*/
|
||||
|
||||
#ifndef HW_MIPS_BOOTLOADER_H
|
||||
#define HW_MIPS_BOOTLOADER_H
|
||||
|
||||
#include "exec/cpu-defs.h"
|
||||
|
||||
void bl_gen_jump_to(uint32_t **p, target_ulong jump_addr);
|
||||
void bl_gen_jump_kernel(uint32_t **p, target_ulong sp, target_ulong a0,
|
||||
target_ulong a1, target_ulong a2, target_ulong a3,
|
||||
target_ulong kernel_addr);
|
||||
void bl_gen_write_ulong(uint32_t **p, target_ulong addr, target_ulong val);
|
||||
void bl_gen_write_u32(uint32_t **p, target_ulong addr, uint32_t val);
|
||||
void bl_gen_write_u64(uint32_t **p, target_ulong addr, uint64_t val);
|
||||
|
||||
#endif
|
Loading…
Add table
Add a link
Reference in a new issue