mbox series

[v2,0/2] RISC-V: Add default OpenSBI ROM

Message ID cover.1562803960.git.alistair.francis@wdc.com (mailing list archive)
Headers show
Series RISC-V: Add default OpenSBI ROM | expand

Message

Alistair Francis July 11, 2019, 12:14 a.m. UTC
This series includes the OpenSBI firmware for QEMU RISC-V users.

To avoid breakages we have not changed the default behaviour of QEMU.
The plan is to change the default though, which is why an entry to the
qemu-deprecated.texi file has been added as well as a new warning.

After this series QEMU 4.1 has three options:
 1. ``-bios none`` - This is the current default behavior if no -bios option
      is included. QEMU will not automatically load any firmware. It is up
      to the user to load all the images they need.
 2. ``-bios default`` - In a future QEMU release this will become the default
      behaviour if no -bios option is specified. This option will load the
      default OpenSBI firmware automatically. The firmware is included with
      the QEMU release and no user interaction is required. All a user needs
      to do is specify the kernel they want to boot with the -kernel option
 3. ``-bios <file>`` - Tells QEMU to load the specified file as the firmwrae.

All users should transition to using a -bios option. We can start
updating all documentation after the release of 4.1.

At the end of this series and the transition period we are in the good
place of no longer requiring users to build firmware to boot a kernel.
Instead users can just run QEMU with the -kernel option and everything
will work. They can also override the firmware with their own using
the -bios option. Using "-bios none" will result in no firmware being
loaded (as it is today).

The commits can be found here: https://github.com/alistair23/qemu/tree/mainline/alistair/opensbi.next

v2:
 - Error and exit if we can't load the default firmware


Alistair Francis (2):
  roms: Add OpenSBI version 0.4
  hw/riscv: Load OpenSBI as the default firmware

 .gitmodules                                  |   3 ++
 LICENSE                                      |  21 +++++---
 Makefile                                     |   5 +-
 hw/riscv/boot.c                              |  54 +++++++++++++++++++
 hw/riscv/sifive_u.c                          |   7 +--
 hw/riscv/virt.c                              |  11 ++--
 include/hw/riscv/boot.h                      |   3 ++
 pc-bios/README                               |  11 ++++
 pc-bios/opensbi-riscv32-virt-fw_jump.bin     | Bin 0 -> 36888 bytes
 pc-bios/opensbi-riscv64-sifive_u-fw_jump.bin | Bin 0 -> 40968 bytes
 pc-bios/opensbi-riscv64-virt-fw_jump.bin     | Bin 0 -> 40968 bytes
 qemu-deprecated.texi                         |  20 +++++++
 roms/Makefile                                |  48 ++++++++++++-----
 roms/opensbi                                 |   1 +
 14 files changed, 157 insertions(+), 27 deletions(-)
 create mode 100755 pc-bios/opensbi-riscv32-virt-fw_jump.bin
 create mode 100755 pc-bios/opensbi-riscv64-sifive_u-fw_jump.bin
 create mode 100755 pc-bios/opensbi-riscv64-virt-fw_jump.bin
 create mode 160000 roms/opensbi

Comments

Stefan Hajnoczi July 16, 2019, 1:56 p.m. UTC | #1
On Wed, Jul 10, 2019 at 05:14:02PM -0700, Alistair Francis wrote:
> This series includes the OpenSBI firmware for QEMU RISC-V users.

A mirror of the OpenSBI repo has been created here:
https://git.qemu.org/?p=opensbi.git;a=summary

qemu.org hosts all software, including firmware, that goes into QEMU so
that users can rebuild from source even if the original repository goes
offline.

Please use the URL https://git.qemu.org/git/opensbi.git if you resend
the patch.  If this patch is merged unchanged I will send a follow-up
commit to update the URL for you.

Thanks,
Stefan
Alistair Francis July 16, 2019, 6:45 p.m. UTC | #2
On Tue, Jul 16, 2019 at 6:56 AM Stefan Hajnoczi <stefanha@gmail.com> wrote:
>
> On Wed, Jul 10, 2019 at 05:14:02PM -0700, Alistair Francis wrote:
> > This series includes the OpenSBI firmware for QEMU RISC-V users.
>
> A mirror of the OpenSBI repo has been created here:
> https://git.qemu.org/?p=opensbi.git;a=summary

Thanks for that Stefan

>
> qemu.org hosts all software, including firmware, that goes into QEMU so
> that users can rebuild from source even if the original repository goes
> offline.
>
> Please use the URL https://git.qemu.org/git/opensbi.git if you resend
> the patch.  If this patch is merged unchanged I will send a follow-up
> commit to update the URL for you.

It doesn't look like Palmer has applied the patches yet so I'll send a v3.

Alistair

>
> Thanks,
> Stefan