diff mbox series

[v4,12/17] docs/interop/firmware.json: Add igvm to FirmwareDevice

Message ID 9021ac8f38090955b162f7bbb6146d4bedd04984.1720004383.git.roy.hopkins@suse.com (mailing list archive)
State New, archived
Headers show
Series Introduce support for IGVM files | expand

Commit Message

Roy Hopkins July 3, 2024, 11:05 a.m. UTC
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(-)

Comments

Daniel P. Berrangé July 24, 2024, 5:27 p.m. UTC | #1
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
diff mbox series

Patch

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' ] }
 
 ##
 # @FirmwareTarget: