All of lore.kernel.org
 help / color / mirror / Atom feed
From: Gerd Hoffmann <kraxel@redhat.com>
To: Peter Maydell <peter.maydell@linaro.org>
Cc: "Laszlo Ersek" <lersek@redhat.com>,
	"Igor Mammedov" <imammedo@redhat.com>,
	"QEMU Developers" <qemu-devel@nongnu.org>,
	"Alex Bennée" <alex.bennee@linaro.org>
Subject: Re: [Qemu-devel] AVMF & OVMF blobs in QEMU tree???
Date: Thu, 24 Aug 2017 12:55:30 +0200	[thread overview]
Message-ID: <1503572130.22313.8.camel@redhat.com> (raw)
In-Reply-To: <CAFEAcA9Lz=pBZxYqHk7kdaU_LsvE34+DJmTm_jHSFeKzoCM3xw@mail.gmail.com>

  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	other threads:[~2017-08-24 10:55 UTC|newest]

Thread overview: 11+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-08-07 14:31 [Qemu-devel] AVMF & OVMF blobs in QEMU tree??? Igor Mammedov
2017-08-07 14:40 ` Peter Maydell
2017-08-07 16:51   ` Laszlo Ersek
2017-08-21 11:58     ` Gerd Hoffmann
2017-08-21 13:23       ` Igor Mammedov
2017-08-21 13:54       ` Peter Maydell
2017-08-24 10:55         ` Gerd Hoffmann [this message]
2017-08-24 13:49           ` Laszlo Ersek
2017-08-21 14:03       ` Alex Bennée
2017-08-21 16:07         ` Laszlo Ersek
2017-08-24 10:23           ` Gerd Hoffmann

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1503572130.22313.8.camel@redhat.com \
    --to=kraxel@redhat.com \
    --cc=alex.bennee@linaro.org \
    --cc=imammedo@redhat.com \
    --cc=lersek@redhat.com \
    --cc=peter.maydell@linaro.org \
    --cc=qemu-devel@nongnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.