On Sat, 2015-11-28 at 11:53 +0100, Alexander Graf wrote:
> 
> > Am 28.11.2015 um 08:59 schrieb Benjamin Herrenschmidt <benh@kernel.
> > crashing.org>:
> > 
> > > On Fri, 2015-11-27 at 11:21 +0100, Alexander Graf wrote:
> > > 
> > > How does real hardware store petitboot? If it's flash, you could
> > > pass it
> > > in using -pflash and thus model things even more closely and
> > > allow users
> > > to just take the ROM image as is.
> > 
> > It is a flash image, we could use an Open Power machine flash image
> > "as-is"
> > provided we taught qemu to extract skiboot (aka OPAL) from it.
> 
> That's probably the best way. If it's memory mapped, you might not
> even have to extract anything - just jump to its location ;).

It's not memory mapped sadly (well not on P8...)

The way a real P8 boots is first a little internal uC executes code
from a i2c seeprom to initialize a core and some cache. It then copies
a payload from flash into that cache. That payload is HostBoot, which
is a huge thing that initializes a pile of stuff such as the internal
busses, SMP links, links to memory buffers, trains memory etc... it
then constructs an embryo device-tree and loads & run OPAL (aka
skiboot).

The model I chose for powernv is to simulate a boot at the hostboot ->
skiboot transition point.

> The -kernel syntax is useful to have, but should really be something
> "on top" of the normal system boot rather than its primary boot
> interface.

I know, I'm just not keen on committing a 16M "BIOS" to qemu tree ;-)

In any case, this is easy to change / fix. There's a lot more work on
the rest of the series first.

Cheers,
Ben.


Reply via email to