New in version 7 of the patch set:
- patch set now down to only 7 patches;
- machine versions 2.0 and older currently unaffected by this patch set, will continue using field overrides as before
- patches 1..6 are very small and simple, and set the stage for patch #7
- patch 7 introduces the new aggregate-table functionality; it consists mostly of insertions, and should therefore be relatively easy to follow.
- "-smbios file=<foo>" functionality happens before we know whether we're in legacy or new/aggregate-table mode, so we insert the file blob(s) into both the legacy and the aggregate tables, and keep the one we need once we know which one that is.
For those interested, the code is also structured for easy subsequent removal of the legacy mode, if/when that becomes applicable ;)
Thanks again for any feedback and comments (or for just applying the patch) !
Gabriel
Gabriel L. Somlo (7): SMBIOS: Rename symbols to better reflect future use SMBIOS: Update header file definitions SMBIOS: Use macro to set smbios defaults SMBIOS: Use bitmaps to prevent incompatible comand line options E820: Add interface for accessing e820 table PC: Add (empty) compat functions for machine version 2.0 SMBIOS: Build aggregate smbios tables and entry point
hw/i386/pc.c | 39 ++- hw/i386/pc_piix.c | 29 +- hw/i386/pc_q35.c | 25 +- hw/i386/smbios.c | 789 +++++++++++++++++++++++++++++++++++++++++++---- include/hw/i386/pc.h | 2 + include/hw/i386/smbios.h | 99 ++++-- 6 files changed, 879 insertions(+), 104 deletions(-)