docs/interop/firmware.json: add new enum FirmwareFormat

Only a small subset of all blockdev drivers make sense for firmware
images. Introduce and use a new enum to represent this.

This also reduces the dependency on firmware.json from the global qapi
definitions.

Claim "Since: 3.0" for the new enum, because that's correct for its
members, and the members are what matters in the interface.

Suggested-by: Daniel P. Berrangé <berrange@redhat.com>
Reviewed-by: Daniel P. Berrangé <berrange@redhat.com>
Signed-off-by: Thomas Weißschuh <thomas.weissschuh@linutronix.de>
Reviewed-by: Markus Armbruster <armbru@redhat.com>
Message-ID: <20240719-qapi-firmware-json-v6-1-c2e3de390b58@linutronix.de>
Signed-off-by: Philippe Mathieu-Daudé <philmd@linaro.org>
This commit is contained in:
Thomas Weißschuh 2024-07-19 09:37:22 +02:00 committed by Philippe Mathieu-Daudé
parent 9ea0f206b7
commit 220434f099
1 changed files with 15 additions and 2 deletions

View File

@ -15,7 +15,6 @@
## ##
{ 'include' : 'machine.json' } { 'include' : 'machine.json' }
{ 'include' : 'block-core.json' }
## ##
# @FirmwareOSInterface: # @FirmwareOSInterface:
@ -200,6 +199,20 @@
'enrolled-keys', 'requires-smm', 'secure-boot', 'enrolled-keys', 'requires-smm', 'secure-boot',
'verbose-dynamic', 'verbose-static' ] } 'verbose-dynamic', 'verbose-static' ] }
##
# @FirmwareFormat:
#
# Formats that are supported for firmware images.
#
# @raw: Raw disk image format.
#
# @qcow2: The QCOW2 image format.
#
# Since: 3.0
##
{ 'enum': 'FirmwareFormat',
'data': [ 'raw', 'qcow2' ] }
## ##
# @FirmwareFlashFile: # @FirmwareFlashFile:
# #
@ -219,7 +232,7 @@
## ##
{ 'struct' : 'FirmwareFlashFile', { 'struct' : 'FirmwareFlashFile',
'data' : { 'filename' : 'str', 'data' : { 'filename' : 'str',
'format' : 'BlockdevDriver' } } 'format' : 'FirmwareFormat' } }
## ##