xref: /qemu/include/hw/mips/bootloader.h (revision 3ebbf86128f5607831ba5a3dec8bac02271a9390)
1*3ebbf861SJiaxun Yang /*
2*3ebbf861SJiaxun Yang  * Utility for QEMU MIPS to generate it's simple bootloader
3*3ebbf861SJiaxun Yang  *
4*3ebbf861SJiaxun Yang  * Copyright (C) 2020 Jiaxun Yang <jiaxun.yang@flygoat.com>
5*3ebbf861SJiaxun Yang  *
6*3ebbf861SJiaxun Yang  * SPDX-License-Identifier: GPL-2.0-or-later
7*3ebbf861SJiaxun Yang  */
8*3ebbf861SJiaxun Yang 
9*3ebbf861SJiaxun Yang #ifndef HW_MIPS_BOOTLOADER_H
10*3ebbf861SJiaxun Yang #define HW_MIPS_BOOTLOADER_H
11*3ebbf861SJiaxun Yang 
12*3ebbf861SJiaxun Yang #include "exec/cpu-defs.h"
13*3ebbf861SJiaxun Yang 
14*3ebbf861SJiaxun Yang void bl_gen_jump_to(uint32_t **p, target_ulong jump_addr);
15*3ebbf861SJiaxun Yang void bl_gen_jump_kernel(uint32_t **p, target_ulong sp, target_ulong a0,
16*3ebbf861SJiaxun Yang                         target_ulong a1, target_ulong a2, target_ulong a3,
17*3ebbf861SJiaxun Yang                         target_ulong kernel_addr);
18*3ebbf861SJiaxun Yang void bl_gen_write_ulong(uint32_t **p, target_ulong addr, target_ulong val);
19*3ebbf861SJiaxun Yang void bl_gen_write_u32(uint32_t **p, target_ulong addr, uint32_t val);
20*3ebbf861SJiaxun Yang void bl_gen_write_u64(uint32_t **p, target_ulong addr, uint64_t val);
21*3ebbf861SJiaxun Yang 
22*3ebbf861SJiaxun Yang #endif
23