Add SMBIOS bootrom version to config files #703
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Presently, the BIOS version string in Propolis' SMBIOS tables is hardcoded to a default value. It would be nice to instead use the OVMF version for the BIOS version string.
Because Propolis' understanding of bootroms is just a path on the filesystem to some kind of file, it's not aware of the OVMF version, or, indeed, that the bootrom even is OVMF (and it could conceivably be anything). Therefore, the bootrom version must be provided externally, such as by the Oxide control plane in the case of
propolis-server
, or by the user when running standalone.This PR adds a config field
bootrom_version
to the TOML config files forpropolis-server
andpropolis-standalone
which can be used to provide a value for the bootrom version string. If the version string is not provided, Propolis will continue to use the current default values.I considered changing the config format to move the
bootrom
path field andbootrom_version
string field into abootrom
table, as in:However, this would break existing configs, and I don't think it's so much nicer than
to justify breakage. I'm happy to change the format if others disagree.
Along with #702, this branch implements the changes described in #701.