On Wed, Jul 03, 2024 at 12:05:50PM +0100, Roy Hopkins wrote:
> Create an enum entry within FirmwareDevice for 'igvm' to describe that
> an IGVM file can be used to map firmware into memory as an alternative
> to pre-existing firmware devices.
>
> Signed-off-by: Roy Hopkins <roy.hopkins@suse.com>
> ---
> docs/interop/firmware.json | 9 ++++++++-
> 1 file changed, 8 insertions(+), 1 deletion(-)
>
> diff --git a/docs/interop/firmware.json b/docs/interop/firmware.json
> index 54a1fc6c10..4a696adc22 100644
> --- a/docs/interop/firmware.json
> +++ b/docs/interop/firmware.json
> @@ -55,10 +55,17 @@
> #
> # @memory: The firmware is to be mapped into memory.
> #
> +# @igvm: The firmware is defined by a file conforming to the IGVM
> +# specification and mapped into memory according to directives
> +# defined in the file. This is similar to @memory but may
> +# include additional processing defined by the IGVM file
> +# including initial CPU state or population of metadata into
> +# the guest address space. Since: 9.1
> +#
> # Since: 3.0
> ##
> { 'enum' : 'FirmwareDevice',
> - 'data' : [ 'flash', 'kernel', 'memory' ] }
> + 'data' : [ 'flash', 'kernel', 'memory', 'igvm' ] }
Further down 'FirmwareDevice' is used as a union discriminator
for 'FirmwareMapping'. So you'll need to extend that union to
list what parameters can be used. I imagine just a copy of the
'FirmwareMappingMemory' struct is sufficient, giving us a simple
filename.
With regards,
Daniel
--
|: https://berrange.com -o- https://www.flickr.com/photos/dberrange :|
|: https://libvirt.org -o- https://fstop138.berrange.com :|
|: https://entangle-photo.org -o- https://www.instagram.com/dberrange :|