[PATCH v6 0/1] Rework ACPI OEM fields handling to simplify code (was: acpi: Remove duplicated code handling OEM ID and OEM table ID fields)

Marian Postevca posted 1 patch 2 years, 9 months ago
Test checkpatch passed
Patches applied successfully (tree, apply log)
git fetch https://github.com/patchew-project/qemu tags/patchew/20210714221409.32630-1-posteuca@mutex.one
hw/acpi/hmat.h                   |  2 +-
hw/i386/acpi-common.h            |  2 +-
include/hw/acpi/acpi-build-oem.h | 61 +++++++++++++++++++++++++
include/hw/acpi/aml-build.h      | 15 +++---
include/hw/acpi/ghes.h           |  2 +-
include/hw/acpi/pci.h            |  2 +-
include/hw/acpi/vmgenid.h        |  2 +-
include/hw/arm/virt.h            |  4 +-
include/hw/i386/x86.h            |  4 +-
include/hw/mem/nvdimm.h          |  4 +-
hw/acpi/aml-build.c              | 26 +++++------
hw/acpi/ghes-stub.c              |  1 +
hw/acpi/ghes.c                   |  5 +-
hw/acpi/hmat.c                   |  4 +-
hw/acpi/nvdimm.c                 | 22 +++++----
hw/acpi/pci.c                    |  4 +-
hw/acpi/vmgenid.c                |  6 ++-
hw/arm/virt-acpi-build.c         | 40 ++++++----------
hw/arm/virt.c                    | 16 +++----
hw/i386/acpi-build.c             | 78 +++++++++++++++-----------------
hw/i386/acpi-common.c            |  4 +-
hw/i386/acpi-microvm.c           | 13 ++----
hw/i386/x86.c                    | 19 ++++----
23 files changed, 189 insertions(+), 147 deletions(-)
create mode 100644 include/hw/acpi/acpi-build-oem.h
[PATCH v6 0/1] Rework ACPI OEM fields handling to simplify code (was: acpi: Remove duplicated code handling OEM ID and OEM table ID fields)
Posted by Marian Postevca 2 years, 9 months ago
This patch consolidates ACPI OEM fields handling
by:
- Moving common code in PC and MICROVM to X86.
- Changes unnecessary dynamic memory allocation to static allocation
- Uses dedicated structure to keep values of fields instead of two
  separate strings
- Adds helper functions to initialize the structure

v2:
- Move the setters/getters of OEM fields to X86MachineState to
  remove duplication
- Change commit message to make it clear the second commit is
  a re-factor

v3:
- Rebase "acpi: Consolidate the handling of OEM ID and OEM
          Table ID fields to latest" to latest HEAD
- Dropped "acpi: Move setters/getters of oem fields to
           X86MachineState" since it was accepted already

v4:
- Drop helper macros and use static inline functions instead
- Removed variables starting with __
- Used consistent naming for helper functions that start with ACPI_BUILD_OEM_*
- Didn't drop the defines ACPI_BUILD_APPNAME6 and ACPI_BUILD_APPNAME8 since
  ACPI_BUILD_APPNAME8 is still used in build_header() in aml-build.c and it
  feels better to keep them defined together. But if others prefer to drop the
  ACPI_BUILD_APPNAME6 define, will resend the patch.

v5:
- Rebase on mst tree latest HEAD

v6:
- Rebase on mst tree latest HEAD
- Fixed compilation error in hw/acpi/ghes-stub.c
- Fixed coding style error by typedefing struct AcpiBuildOem

Marian Postevca (1):
  acpi: Consolidate the handling of OEM ID and OEM Table ID fields

 hw/acpi/hmat.h                   |  2 +-
 hw/i386/acpi-common.h            |  2 +-
 include/hw/acpi/acpi-build-oem.h | 61 +++++++++++++++++++++++++
 include/hw/acpi/aml-build.h      | 15 +++---
 include/hw/acpi/ghes.h           |  2 +-
 include/hw/acpi/pci.h            |  2 +-
 include/hw/acpi/vmgenid.h        |  2 +-
 include/hw/arm/virt.h            |  4 +-
 include/hw/i386/x86.h            |  4 +-
 include/hw/mem/nvdimm.h          |  4 +-
 hw/acpi/aml-build.c              | 26 +++++------
 hw/acpi/ghes-stub.c              |  1 +
 hw/acpi/ghes.c                   |  5 +-
 hw/acpi/hmat.c                   |  4 +-
 hw/acpi/nvdimm.c                 | 22 +++++----
 hw/acpi/pci.c                    |  4 +-
 hw/acpi/vmgenid.c                |  6 ++-
 hw/arm/virt-acpi-build.c         | 40 ++++++----------
 hw/arm/virt.c                    | 16 +++----
 hw/i386/acpi-build.c             | 78 +++++++++++++++-----------------
 hw/i386/acpi-common.c            |  4 +-
 hw/i386/acpi-microvm.c           | 13 ++----
 hw/i386/x86.c                    | 19 ++++----
 23 files changed, 189 insertions(+), 147 deletions(-)
 create mode 100644 include/hw/acpi/acpi-build-oem.h

-- 
2.31.1