On Mon, Jan 6, 2014 at 5:41 PM, Peter Maydell <peter.mayd...@linaro.org> wrote:
> On 2 January 2014 05:50, Peter Crosthwaite <peter.crosthwa...@xilinx.com> 
> wrote:
>> I'm wondering whether blob loading is actually a reset step not an
>> init.
>
> load_image_targphys() uses the rom blob loader code from hw/core/loader.c,
> which already supports reloading the blob on machine reset if necessary.
>
> That raises some more general design questions:
>  * how is this expected to interact with rom blob loading, -machine firmware=,
>    etc?

I guess it's not. The behavior of "-machine firmware=" is machine
specific, so a machine specific undefined behavior will occur if you
have overlap issues. The two should not in any way inhibit each other.
They are independent mechanisms.

> 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.

> Should this be rolled into the rom blob code rather than being a bolt-on 
> extra?

The QOMification is nice. And bolt-on'ness makes it repeatable so you
can do whatever and as many blobs as you want.

>  * I'm unconvinced by the general approach of having a device with an
>    address property

That is what makes it generically reusable.

>  * would it be useful if the rom blob loading  was extended/reworked so that
>     you could load a rom blob into a MemoryRegion?

Yes. Edgar's work on per-master AS may be related and applicable.

Regards,
Peter

> We want that for
>    the SPARC TCX ROM blobs as well; maybe it would help here too,
>    though I haven't thought much about it.
>
> thanks
> -- PMM
>

Reply via email to