[libvirt] [qemu RFC v2] qapi: add "firmware.json"

Thomas Huth thuth at redhat.com
Thu Apr 19 08:57:22 UTC 2018


On 18.04.2018 00:40, Laszlo Ersek wrote:
> Add a schema that describes the different uses and properties of virtual
> machine firmware.
> 
> Each firmware executable installed on a host system should come with at
> least one JSON file that conforms to this schema. Each file informs the
> management applications about the firmware's properties and one possible
> use case / feature set.
> 
> 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 description 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 for a
> certain use case or feature set.
[...]
> +##
> +# @FirmwareMappingFlash:
> +#
> +# Describes loading and mapping properties for the firmware executable and its
> +# accompanying NVRAM file, when @FirmwareDevice is @flash.
> +#
> +# @executable: Identifies the firmware executable. The firmware executable may
> +#              be shared by multiple virtual machine definitions. The
> +#              corresponding QEMU command line option is "-drive
> +#              if=pflash,unit=0,readonly=on,file=@executable. at pathname,format=@executable. at format".
> +#
> +# @nvram_template: Identifies the NVRAM template compatible with @executable.
> +#                  Management software instantiates an individual copy -- a
> +#                  specific NVRAM file -- from @nvram_template. at pathname for
> +#                  each new virtual machine definition created.
> +#                  @nvram_template. at pathname itself is never mapped into
> +#                  virtual machines, only individual copies of it are. An NVRAM
> +#                  file is typically used for persistently storing the
> +#                  non-volatile UEFI variables of a virtual machine definition.
> +#                  The corresponding QEMU command line option is "-drive
> +#                  if=pflash,unit=1,readonly=off,file=PATHNAME_OF_PRIVATE_NVRAM_FILE,format=@nvram_template. at format".
> +#
> +# Since: 2.13
> +##
> +{ 'struct' : 'FirmwareMappingFlash',
> +  'data'   : { 'executable'     : 'FirmwareFlashFile',
> +               'nvram_template' : 'FirmwareFlashFile' } }

I think it's more common to use "-" than "_" in these json files, so
maybe better use "nvram-template" instead of "nvram_template" ?

 Thomas




More information about the libvir-list mailing list