On 07/31/15 20:40, Laszlo Ersek wrote: > The SMBIOS 3.x entry point is structurally different from the 2.x > variant, therefore the current code used by OvmfPkg and ArmVirtPkg > doesn't recognize an SMBIOS 3.0 entry point structure even if QEMU > exports one. This series rectifies that. > > The first four patches implement Jordan's great idea: they refactor the > code without any observable changes, unifying the currently duplicated > QEMU SMBIOS entry point checks / version setting between OvmfPkg and > ArmVirtPkg. > > Patches 5 to 7, inclusive, eliminate yet another instance of the entry > point checks, this time the last one, from SmbiosPlatformDxe. > > Building on the centralized QEMU SMBIOS entry point examination, patches > 8 and 9 add SMBIOS 3.0 support for real. > > The series builds at every stage. I regression-tested it with OVMF (2.8 > entry point), and tested the 3.0 entry point support using Wei's QEMU > series pending at > <http://thread.gmane.org/gmane.comp.emulators.qemu/353282>, with a small > QEMU fix on top (which I posted in that thread). > > As I wrote in that thread as well, I didn't test with dmidecode in an > aarch64 Linux guest just yet; I used the "smbiosview" UEFI shell command > in the guest. > > Public branch: <https://github.com/lersek/edk2/commits/smbios30_round2>. > > Wei, you can find a binary at > <http://people.redhat.com/~lersek/smbios30_round2_v1/QEMU_EFI.fd.xz>, > for testing any further QEMU changes. > > Cc: Ard Biesheuvel <ard.biesheu...@linaro.org> > Cc: Wei Huang <w...@redhat.com> > Cc: Jordan Justen <jordan.l.jus...@intel.com> > Cc: Gabriel L. Somlo <so...@cmu.edu> > > Thanks > Laszlo > > Laszlo Ersek (9): > OvmfPkg: SmbiosVersionLib: add "plugin" for detecting SMBIOS version > OvmfPkg: set SMBIOS version in DetectSmbiosVersionLib instead of > PlatformPei > ArmVirtPkg: set SMBIOS version in DetectSmbiosVersionLib instead of > QemuFwCfgToPcdDxe > ArmVirtPkg: revert "ArmVirtPkg: add QemuFwCfgToPcdDxe" > OvmfPkg: introduce PcdQemuSmbiosValidated > ArmVirtPkg/ArmVirtQemu.dsc: set default for PcdQemuSmbiosValidated > OvmfPkg: SmbiosPlatformDxe: eliminate duplicate entry point validation > ArmVirtPkg: set default for PcdSmbiosDocRev > OvmfPkg: SmbiosVersionLib: recognize SMBIOS 3.x entry point > > ArmVirtPkg/ArmVirtQemu.dsc | 8 +- > ArmVirtPkg/ArmVirtQemu.fdf | 2 - > ArmVirtPkg/QemuFwCfgToPcdDxe/QemuFwCfgToPcd.c | 73 > ------------- > ArmVirtPkg/QemuFwCfgToPcdDxe/QemuFwCfgToPcd.inf | 46 --------- > OvmfPkg/Library/SmbiosVersionLib/DetectSmbiosVersionLib.c | 107 > ++++++++++++++++++++ > OvmfPkg/Library/SmbiosVersionLib/DetectSmbiosVersionLib.inf | 53 ++++++++++ > OvmfPkg/OvmfPkg.dec | 1 + > OvmfPkg/OvmfPkgIa32.dsc | 7 +- > OvmfPkg/OvmfPkgIa32X64.dsc | 7 +- > OvmfPkg/OvmfPkgX64.dsc | 7 +- > OvmfPkg/PlatformPei/Platform.c | 39 ------- > OvmfPkg/PlatformPei/PlatformPei.inf | 2 - > OvmfPkg/SmbiosPlatformDxe/Qemu.c | 30 ++---- > OvmfPkg/SmbiosPlatformDxe/SmbiosPlatformDxe.inf | 4 + > 14 files changed, 198 insertions(+), 188 deletions(-) > create mode 100644 OvmfPkg/Library/SmbiosVersionLib/DetectSmbiosVersionLib.c > create mode 100644 > OvmfPkg/Library/SmbiosVersionLib/DetectSmbiosVersionLib.inf > delete mode 100644 ArmVirtPkg/QemuFwCfgToPcdDxe/QemuFwCfgToPcd.c > delete mode 100644 ArmVirtPkg/QemuFwCfgToPcdDxe/QemuFwCfgToPcd.inf >
Committed to SVN, r18174..18182, inclusive. Thanks Laszlo _______________________________________________ edk2-devel mailing list edk2-devel@lists.01.org https://lists.01.org/mailman/listinfo/edk2-devel