[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-riscv] [Qemu-devel] [PULL 33/34] roms: Add OpenSBI version 0.3
From: |
Jonathan Cameron |
Subject: |
Re: [Qemu-riscv] [Qemu-devel] [PULL 33/34] roms: Add OpenSBI version 0.3 |
Date: |
Fri, 28 Jun 2019 10:46:05 +0100 |
On Thu, 27 Jun 2019 08:20:10 -0700
Palmer Dabbelt <address@hidden> wrote:
> From: Alistair Francis <address@hidden>
>
> Add OpenSBI version 0.3 as a git submodule and as a prebult binary.
>
> Signed-off-by: Alistair Francis <address@hidden>
> Reviewed-by: Bin Meng <address@hidden>
> Tested-by: Bin Meng <address@hidden>
> Signed-off-by: Palmer Dabbelt <address@hidden>
I sent a late bug report on this one.. Hence posting here as well
to make sure it doesn't fall through the cracks!
Right now you can't actually build the opensbi64-virt firmware
due to cut and paste error in the Makefile.
As a side note, I hit this because OpenSBI 0.3 is resulting in a login
loop on a debian test image and the current upstream isn't. I haven't
debugged yet, but someone else may hit that problem.
Thanks,
Jonathan
> diff --git a/roms/Makefile b/roms/Makefile
> index 078d3fb70563..562ed726fd6b 100644
> --- a/roms/Makefile
> +++ b/roms/Makefile
> @@ -37,6 +37,8 @@ find-cross-prefix = $(subst gcc,,$(notdir $(call
> find-cross-gcc,$(1))))
> powerpc64_cross_prefix := $(call find-cross-prefix,powerpc64)
> powerpc_cross_prefix := $(call find-cross-prefix,powerpc)
> x86_64_cross_prefix := $(call find-cross-prefix,x86_64)
> +riscv32_cross_prefix := $(call find-cross-prefix,riscv32)
> +riscv64_cross_prefix := $(call find-cross-prefix,riscv64)
>
> # tag our seabios builds
> SEABIOS_EXTRAVERSION="-prebuilt.qemu.org"
> @@ -52,18 +54,21 @@ EDK2_EFIROM = edk2/BaseTools/Source/C/bin/EfiRom
> default:
> @echo "nothing is build by default"
> @echo "available build targets:"
> - @echo " bios -- update bios.bin (seabios)"
> - @echo " vgabios -- update vgabios binaries (seabios)"
> - @echo " sgabios -- update sgabios binaries"
> - @echo " pxerom -- update nic roms (bios only)"
> - @echo " efirom -- update nic roms (bios+efi)"
> - @echo " slof -- update slof.bin"
> - @echo " skiboot -- update skiboot.lid"
> - @echo " u-boot.e500 -- update u-boot.e500"
> - @echo " u-boot.sam460 -- update u-boot.sam460"
> - @echo " efi -- update UEFI (edk2) platform firmware"
> - @echo " clean -- delete the files generated by the previous" \
> - "build targets"
> + @echo " bios -- update bios.bin (seabios)"
> + @echo " vgabios -- update vgabios binaries (seabios)"
> + @echo " sgabios -- update sgabios binaries"
> + @echo " pxerom -- update nic roms (bios only)"
> + @echo " efirom -- update nic roms (bios+efi)"
> + @echo " slof -- update slof.bin"
> + @echo " skiboot -- update skiboot.lid"
> + @echo " u-boot.e500 -- update u-boot.e500"
> + @echo " u-boot.sam460 -- update u-boot.sam460"
> + @echo " efi -- update UEFI (edk2) platform firmware"
> + @echo " opensbi32-virt -- update OpenSBI for 32-bit virt machine"
> + @echo " opensbi64-virt -- update OpenSBI for 64-bit virt machine"
> + @echo " opensbi64-sifive_u -- update OpenSBI for 64-bit sifive_u
> machine"
> + @echo " clean -- delete the files generated by the
> previous" \
> + "build targets"
>
> bios: build-seabios-config-seabios-128k build-seabios-config-seabios-256k
> cp seabios/builds/seabios-128k/bios.bin ../pc-bios/bios.bin
> @@ -162,6 +167,24 @@ skiboot:
> efi: edk2-basetools
> $(MAKE) -f Makefile.edk2
>
> +opensbi32-virt:
> + $(MAKE) -C opensbi \
> + CROSS_COMPILE=$(riscv32_cross_prefix) \
> + PLATFORM="qemu/virt"
> + cp opensbi/build/platform/qemu/virt/firmware/fw_jump.bin
> ../pc-bios/opensbi-riscv32-virt-fw_jump.bin
> +
> +opensbi64-virt:
> + $(MAKE) -C opensbi \
> + CROSS_COMPILE=$(riscv64_cross_prefix) \
> + PLATFORM="qemu/virt"
> + cp opensbi/build/platform/qemu/virt/firmware/fw_jump.bin
> ../pc-bios/opensbi-riscv64-virt-fw_jump.bin
> +
> +opensbi64-virt:
Cut and paste buglet. opensbi64-sifive_u
> + $(MAKE) -C opensbi \
> + CROSS_COMPILE=$(riscv64_cross_prefix) \
> + PLATFORM="qemu/sifive_u"
> + cp opensbi/build/platform/qemu/virt/firmware/fw_jump.bin
> ../pc-bios/opensbi-riscv64-sifive_u-fw_jump.bin
> +
> clean:
> rm -rf seabios/.config seabios/out seabios/builds
> $(MAKE) -C sgabios clean
> @@ -173,3 +196,4 @@ clean:
> $(MAKE) -C u-boot-sam460ex distclean
> $(MAKE) -C skiboot clean
> $(MAKE) -f Makefile.edk2 clean
> + $(MAKE) -C opensbi clean
> diff --git a/roms/opensbi b/roms/opensbi
> new file mode 160000
> index 000000000000..ca20ac0cd4c0
> --- /dev/null
> +++ b/roms/opensbi
> @@ -0,0 +1 @@
> +Subproject commit ca20ac0cd4c099006d4eea4d9ac7bd7b58e2ae0f
- [Qemu-riscv] [PULL 06/34] RISC-V: Raise access fault exceptions on PMP violations, (continued)
- [Qemu-riscv] [PULL 06/34] RISC-V: Raise access fault exceptions on PMP violations, Palmer Dabbelt, 2019/06/27
- [Qemu-riscv] [PULL 18/34] target/riscv: Require either I or E base extension, Palmer Dabbelt, 2019/06/27
- [Qemu-riscv] [PULL 14/34] target/riscv: Add the privledge spec version 1.11.0, Palmer Dabbelt, 2019/06/27
- [Qemu-riscv] [PULL 17/34] qemu-deprecated.texi: Deprecate the RISC-V privledge spec 1.09.1, Palmer Dabbelt, 2019/06/27
- [Qemu-riscv] [PULL 34/34] hw/riscv: Load OpenSBI as the default firmware, Palmer Dabbelt, 2019/06/27
- [Qemu-riscv] [PULL 26/34] disas/riscv: Disassemble reserved compressed encodings as illegal, Palmer Dabbelt, 2019/06/27
- [Qemu-riscv] [PULL 23/34] RISC-V: Clear load reservations on context switch and SC, Palmer Dabbelt, 2019/06/27
- [Qemu-riscv] [PULL 11/34] riscv: virt: Correct pci "bus-range" encoding, Palmer Dabbelt, 2019/06/27
- [Qemu-riscv] [PULL 09/34] RISC-V: Fix a PMP bug where it succeeds even if PMP entry is off, Palmer Dabbelt, 2019/06/27
- [Qemu-riscv] [PULL 33/34] roms: Add OpenSBI version 0.3, Palmer Dabbelt, 2019/06/27
- Re: [Qemu-riscv] [Qemu-devel] [PULL 33/34] roms: Add OpenSBI version 0.3,
Jonathan Cameron <=
- [Qemu-riscv] [PULL 28/34] riscv: sifive_u: Do not create hard-coded phandles in DT, Palmer Dabbelt, 2019/06/27
- [Qemu-riscv] [PULL 32/34] hw/riscv: Extend the kernel loading support, Palmer Dabbelt, 2019/06/27
- [Qemu-riscv] [PULL 16/34] target/riscv: Set privledge spec 1.11.0 as default, Palmer Dabbelt, 2019/06/27
- [Qemu-riscv] [PULL 24/34] RISC-V: Update syscall list for 32-bit support., Palmer Dabbelt, 2019/06/27
- [Qemu-riscv] [PULL 30/34] hw/riscv: Split out the boot functions, Palmer Dabbelt, 2019/06/27
- [Qemu-riscv] [PULL 25/34] riscv: virt: Add cpu-topology DT node., Palmer Dabbelt, 2019/06/27