On Thu, Aug 06, 2015 at 01:14:54PM -0400, Wei Huang wrote: > SMBIOS tables present userful system hardware info to management > applications, such as DMI tools. Even though SMBIOS was originally > developed for Intel x86, it has been extended to both Itanium and > ARM (32bit & 64bit). More and more ARM server releases, such as > RHEL Server for ARM, start to integrate support for SMBIOS. > > This patchset is intendted to provid SMBIOS tables for ARM mach-virt > machine. The SMBIOS tables are created and stored in fw_cfg, relying on > OVMF (AAVMF) to parse/present SMBIOS entry. > > RFC version have been tested by Laszlo using his customized version of > AAVMF. We were able to detect SMBIOS 2.8 tables using dmidecode inside > an AArch64 guest VM. Moving forward, it is better to support SMBIOS 3.0 > for ARM guest VM. This new version (V2) integrates SMBIOS 3.0 support > for ARM mach-virt. I have tested this version using a customized AAVMF > created by Laszlo, who has submitted his patches to OVMF mailing list. > > V1->V2: > * Add NULL checking for fw_cfg (Shannon Zhao) > * Init 3.0 entry point table max size to smbios_tables_len (Laszlo) > * Minor re-arrangement of smbios.h layout with function headers to the bottom > * Validated SMBIOS 3.0 tables with a customized AAVMF created by Laszlo > > RFC->V1: > * Add SMBIOS 3.0 support for buidling SMBIOS > * Switch from SMBIOS 2.1 to 3.0 for ARM mach-virt > * RFC version Tested-by Laszlo Ersek and Acked-by Gabriel Somlo
whole series: Acked-by: Gabriel Somlo <so...@cmu.edu> Regression-tested-by: Gabriel Somlo <so...@cmu.edu> Thanks, --Gabriel > > Thanks, > -Wei > > Wei Huang (6): > smbios: extract x86 smbios building code into a function > smbios: remove dependency on x86 e820 tables > smbios: pass ram size as a parameter to build smbios tables > smbios: move smbios code into a common folder > smbios: add smbios 3.0 support > smbios: implement smbios support for mach-virt > > arch_init.c | 2 +- > default-configs/arm-softmmu.mak | 1 + > default-configs/i386-softmmu.mak | 1 + > default-configs/x86_64-softmmu.mak | 1 + > hw/Makefile.objs | 1 + > hw/arm/virt.c | 27 ++++++++++ > hw/i386/Makefile.objs | 2 +- > hw/i386/pc.c | 56 ++++++++++++++------- > hw/i386/pc_piix.c | 5 +- > hw/i386/pc_q35.c | 5 +- > hw/smbios/Makefile.objs | 1 + > hw/{i386 => smbios}/smbios.c | 96 > +++++++++++++++++++++++------------- > include/hw/arm/virt-acpi-build.h | 1 + > include/hw/{i386 => smbios}/smbios.h | 56 ++++++++++++++++----- > tests/bios-tables-test.c | 2 +- > vl.c | 2 +- > 16 files changed, 188 insertions(+), 71 deletions(-) > create mode 100644 hw/smbios/Makefile.objs > rename hw/{i386 => smbios}/smbios.c (93%) > rename include/hw/{i386 => smbios}/smbios.h (83%) > > -- > 1.8.3.1 >