Message ID | 20230206140022.2748401-1-dbarboza@ventanamicro.com (mailing list archive) |
---|---|
Headers | show |
Series | Consolidate all kernel init in load_kernel() | expand |
On Tue, Feb 7, 2023 at 12:03 AM Daniel Henrique Barboza <dbarboza@ventanamicro.com> wrote: > > Hi, > > In this new version patch 1 was changed to extract the lower 32 bits of > the 64 bit address when running 32 bit CPUs. The difference now, in comparison > with what was being done in version 6, is that now we're doing that for > all uses of kernel_entry, not just the one resulting from load_elf_ram_sym(). > > This will ensure that the current behavior, that is now based on the fact that > load_initrd() uses the target_ulong returned by load_kernel(), that happens to > be a 32 bit var when running in 32 bit targets, is preserved by doing a > explicit 32 bit extract of the uint64_t kernel_entry for 32 bit CPUs. > > Changes in v10: > - patch 1: > - extract the lower 32 bits of kernel_entry for all cases, not just > the one from load_elf_ram_sym(). > - v10 link: https://lists.gnu.org/archive/html/qemu-devel/2023-02/msg00529.html > > Daniel Henrique Barboza (3): > hw/riscv: handle 32 bit CPUs kernel_entry in riscv_load_kernel() > hw/riscv/boot.c: consolidate all kernel init in riscv_load_kernel() > hw/riscv/boot.c: make riscv_load_initrd() static Thanks! Applied to riscv-to-apply.next Alistair > > hw/riscv/boot.c | 97 ++++++++++++++++++++++++-------------- > hw/riscv/microchip_pfsoc.c | 12 +---- > hw/riscv/opentitan.c | 4 +- > hw/riscv/sifive_e.c | 4 +- > hw/riscv/sifive_u.c | 12 +---- > hw/riscv/spike.c | 14 ++---- > hw/riscv/virt.c | 12 +---- > include/hw/riscv/boot.h | 3 +- > 8 files changed, 78 insertions(+), 80 deletions(-) > > -- > 2.39.1 > >