qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Qemu-devel] AVMF & OVMF blobs in QEMU tree???


From: Gerd Hoffmann
Subject: Re: [Qemu-devel] AVMF & OVMF blobs in QEMU tree???
Date: Thu, 24 Aug 2017 12:55:30 +0200

  Hi,

> Having all our precompiled blobs be in a submodule would
> maybe be handy for properly keeping them separate from the
> QEMU code -- would that be useful for downstream distro
> packagers?

I like the clear separation.

Also you don't have to fetch the firmware submodule if you don't need
the prebuilds.

It would be a good opportunity to cleanup the mess we have in pc-bios/
right now.

Clear disadvantage is that firmware updates will become more
complicated then as two repos must be updated.  So either two pull
requests per firmware update, or write access to the firmware binary
repo for all firmware maintainers.

Or maybe make the firmware sources submodules of the firmware binary
repo instead of the qemu repo.

> In any case this seems like a good opportunity to write down
> exactly what our policy about ROM blobs is (eg where they
> are, how we update them, requirement for source, whether
> we allow source to be in a submodule not on qemu.org...)

Tried to write down the current state.

cheers,
  Gerd

---------------------- docs/firmware.txt ------------------------

prebuilt firmware in qemu
=========================

The process of building firmware isn't as easy as building qemu
itself, for example because you must have cross compilers installed
when building firmware for other architectures.  So qemu ships
prebuilt firmware binaries for convenience reasons.


directories
-----------

pc-bios/
    Firmware binaries.
    Also other files like keymaps and logos which are copied to
    $prefix/share/qemu by "make install".

pc-bios/optionrom/
    Firmware sources, part of the qemu project.

roms/
    Firmware sources, third-party projects, as git submodules.


third-party git repos
---------------------

For third party firmware sources it is recommended to have a git
mirror on git.qemu.org.  In case the firmware license is GPL the git
mirror is mandatory for GPL compilance reasons:  We ship binaries, so
we must provide sources too.


building the firmware
---------------------

Firmware builds should be done using rules in roms/Makefile.  That
serves as documentation how the firmware is built, and it also makes
firmware updates easier for the maintainer.

"make -C roms" prints a list of firmware build targets.
"make -C roms $target" kicks a build.


notes for specific firmwares
----------------------------

ipxe: see https://wiki.qemu.org/IpxeDownstreamForQemu




reply via email to

[Prev in Thread] Current Thread [Next in Thread]