On 10.04.2018 11:05, Daniel P. Berrangé wrote:
On Mon, Apr 09, 2018 at 06:34:41PM +0200, Laszlo Ersek wrote:
> On 04/09/18 09:26, Thomas Huth wrote:
>> Hi Laszlo,
>>
>> On 07.04.2018 02:01, Laszlo Ersek wrote:
>>> Add a schema that describes the properties of virtual machine firmware.
>>>
>>> Each firmware executable installed on a host system should come with a
>>> JSON file that conforms to this schema, and informs the management
>>> applications about the firmware's properties.
>>>
>>> In addition, a configuration directory with symlinks to the JSON files
>>> should exist, with the symlinks carefully named to reflect a priority
>>> order. Management applications can then search this directory in priority
>>> order for the first firmware executable that satisfies their search
>>> criteria. The found JSON file provides the management layer with domain
>>> configuration bits that are required to run the firmware binary.
>> [...]
>>> +##
>>> +# @FirmwareDevice:
>>> +#
>>> +# Defines the device types that a firmware file can be mapped into.
>>> +#
>>> +# @memory: The firmware file is to be mapped into memory.
>>> +#
>>> +# @kernel: The firmware file is to be loaded like a Linux kernel. This is
>>> +# similar to @memory but may imply additional processing that is
>>> +# specific to the target architecture.
>>> +#
>>> +# @flash: The firmware file is to be mapped into a pflash chip.
>>> +#
>>> +# Since: 2.13
>>> +##
>>> +{ 'enum' : 'FirmwareDevice',
>>> + 'data' : [ 'memory', 'kernel', 'flash' ]
}
>>
>> This is not fully clear to me... what is this exactly good for? Is this
>> a way to say how the firmware should be loaded, i.e. via "-bios",
>> "-kernel" or "-pflash" parameter? If so, the term
"memory" is quite
>> misleading since files that are loaded via -bios can also end up in an
>> emulated ROM chip.
>
> I threw in "-kernel" because, although it also (usually?) means
> "memory", I expected people would want it separate.
What platform / scenario actually uses -kernel to load firmware.
I think uboot uses -kernel in certain cases, see e.g.:
https://balau82.wordpress.com/2010/03/10/u-boot-for-arm-on-qemu/
If you
have loaded firmware using -kernel, how do you then load the actual
kernel ?
The kernel is then loaded from disk or network or another boot device.
Thomas