qemu-devel
[Top][All Lists]
Advanced

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

Re: [Qemu-devel] [PATCH] hw/misc/blob-loader: add a generic blob loader


From: Li Guang
Subject: Re: [Qemu-devel] [PATCH] hw/misc/blob-loader: add a generic blob loader
Date: Wed, 08 Jan 2014 15:38:46 +0800
User-agent: Mozilla/5.0 (X11; U; Linux i686 (x86_64); en-US; rv:1.9.1.16) Gecko/20120421 Iceape/2.0.11

Peter Crosthwaite wrote:
On Mon, Jan 6, 2014 at 10:13 PM, Paolo Bonzini<address@hidden>  wrote:
Il 06/01/2014 08:56, Peter Crosthwaite ha scritto:
What are the guidelines for when to use one or the other?
"-machine firmware=" if you want to load a firmware blob in a board
specific way. This if you want to place a blob in memory at an
arbitrary location on reset.
"-machine firmware=" is also a pretty bad design because it's not
extensible and doesn't apply to most boards.  We really should get
per-board -machine options, so that you can have a less generic name
than "firmware".

Then we have even more divergence in boot flow between boards. It's
already a bit of a Zoo out there when it comes to bootloaders.

We expressed dislike for the Allwinner/FEX board specific bootloader
due it its mainline Linux non-acceptance. This generic solution
facilitates this case among many others and the reason its able to
achieve that goal is it has no reliance on software policy. OTOH if we
need to do everything board specific then we need to start deciding
software policy for each and every board. For allwinner, FEX was a
nack, which pretty much hangs out users of that linux kernel to dry.

Looking at QEMU ARM, we are in a position now where you can only boot
systems two ways:

1: Exactly as real HW (have to use your boards bootrom, BIOS, storage
media etc).
2. ARM Linux exactly to the letter of the mainline boot process.

With generic tools like this device, you at least let the users do a
few flexible things for boots that do not fit these two limited use
cases. And the device is completely unobtrusive on existing code. If
developers in the future come along with their weird and wonderful
board specific bootflows that we don't like we can now tell them to
use the generic blob loader for their bits and pieces and everybody
wins.

If anything, the boards implementing -machine firware="" should
implement it by layer ontop of this device.


agree,

further more,  "-machine firmware=" is really not generic,
we may have to deprecate it.
because if use it, every boards should do specific things for it.

Thanks!

Paolo






reply via email to

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