[SeaBIOS] [PATCH 2/2] Boot Linux using QEMU fw_cfg DMA interface

Stefan Hajnoczi stefanha at gmail.com
Thu Aug 6 12:38:33 CET 2015


On Thu, Aug 6, 2015 at 12:02 PM, Marc Marí <markmb at redhat.com> wrote:
>      case IPL_TYPE_BEV:
> -        boot_rom(ie->vector);
> +        if (qemu_cfg_dma_enabled()) {
> +            boot_linux_cfg_dma();
> +        } else {
> +            boot_rom(ie->vector);
> +        }
>          break;

I thought the fw_cfg DMA interface is equivalent to the PIO interface?

Therefore, your Linux loading code completely replaces the
linuxboot.rom.  Why would you want to keep using linuxboot.rom in the
PIO case if SeaBIOS now has to code to launch the kernel?

By the way, I think this change is incorrect.  We shouldn't hijack the
BEV.  Instead fw_cfg should simply add a higher priority IPL entry
when the kernel file is present.  That way we just don't execute the
option ROM.

Stefan



More information about the SeaBIOS mailing list