[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [PATCH] riscv: Change the default behavior if no -bios option is spe
From: |
Alistair Francis |
Subject: |
Re: [PATCH] riscv: Change the default behavior if no -bios option is specified |
Date: |
Tue, 5 May 2020 13:34:06 -0700 |
On Fri, May 1, 2020 at 5:21 AM Bin Meng <address@hidden> wrote:
>
> From: Bin Meng <address@hidden>
>
> Per QEMU deprecated doc, QEMU 4.1 introduced support for the -bios
> option in QEMU for RISC-V for the virt machine and sifive_u machine.
> The default behavior has been that QEMU does not automatically load
> any firmware if no -bios option is included.
>
> Now 2 releases passed, it's time to change the default behavior to
> 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.
>
> Signed-off-by: Bin Meng <address@hidden>
Thanks!
Reviewed-by: Alistair Francis <address@hidden>
Applied to the RISC-V tree.
Alistair
> ---
>
> hw/riscv/boot.c | 31 ++++---------------------------
> 1 file changed, 4 insertions(+), 27 deletions(-)
>
> diff --git a/hw/riscv/boot.c b/hw/riscv/boot.c
> index 726300a..b76b2f3 100644
> --- a/hw/riscv/boot.c
> +++ b/hw/riscv/boot.c
> @@ -41,34 +41,11 @@ void riscv_find_and_load_firmware(MachineState *machine,
> {
> char *firmware_filename = NULL;
>
> - if (!machine->firmware) {
> + if ((!machine->firmware) || (!strcmp(machine->firmware, "default"))) {
> /*
> - * The user didn't specify -bios.
> - * At the moment we default to loading nothing when this hapens.
> - * In the future this defaul will change to loading the prebuilt
> - * OpenSBI firmware. Let's warn the user and then continue.
> - */
> - if (!qtest_enabled()) {
> - warn_report("No -bios option specified. Not loading a
> firmware.");
> - warn_report("This default will change in a future QEMU release.
> " \
> - "Please use the -bios option to avoid breakages when
> "\
> - "this happens.");
> - warn_report("See QEMU's deprecation documentation for details.");
> - }
> - return;
> - }
> -
> - if (!strcmp(machine->firmware, "default")) {
> - /*
> - * The user has specified "-bios default". That means we are going to
> - * load the OpenSBI binary included in the QEMU source.
> - *
> - * We can't load the binary by default as it will break existing
> users
> - * as users are already loading their own firmware.
> - *
> - * Let's try to get everyone to specify the -bios option at all
> times,
> - * so then in the future we can make "-bios default" the default
> option
> - * if no -bios option is set without breaking anything.
> + * The user didn't specify -bios, or has specified "-bios default".
> + * That means we are going to load the OpenSBI binary included in
> + * the QEMU source.
> */
> firmware_filename = riscv_find_firmware(default_machine_firmware);
> } else if (strcmp(machine->firmware, "none")) {
> --
> 2.7.4
>
>