[PATCH v3 0/2] Dynamic ACPI framework for fsl layerscape platforms

Vikas Singh

This patch series sets the foundation of Dynamic ACPI framework for all
fsl layerscape platforms. In order to achieve:
- Configurable firmware builds.
- Unify firmware build for similar platforms.
- Minimize/eliminate human induced errors.
- Validate and generate firmware that complies with relevant specifications.
this change set will introduce following changes in below defined order under
edk2-platforms/NXP for LX2160ARDB platform.

(1) Introduced edk2-platforms/NXP/ConfigurationManager
It creates the platform repositories dynamically during build time
and initializes with platform specific information and serves all requestes
coming from OEM/standard firmware table generators. Configuration Manager(CM)
will be common for all fsl platforms.

(2) Introduced edk2-platforms/NXP/LX2160ARDB/Include/Platform.h
It has all the declarations and the definitions specified for the platforms.
These definitions will be inturn consumed by Configuration Manager.
Additionally the placement of this header under "Include" dir will make these
macro's availale to other translation units of the platform built.

(3) Introduced edk2-platforms/NXP/LX2160ARDB/AcpiTablesInclude
This is a placeholder for - OEM specific firmware acpi table generators.
This also includes IP specific - DSDT/SSDT generators for the OEM's platform.
Currently Dsdt.asl is a place holder having only platform's clock related dsdt
properties for LX2160ARDB but it is intended to extend this "Dsdt.asl" to hold
other table as well in next patch series.

(4) Introduced a new "DYNAMIC_ACPI_ENABLE" flag to control DACPI framework.
Currently this flag is used for LX2160ARDB and by default it is enabled.
This flag can also extend to other fsl layerscape platforms in future.
Changes can be referred under:
- LX2160ARDb.dsc
- LX2160ARDB.fdf

Vikas Singh (2):
Platform/NXP: Add Dynamic Acpi for layerscape platforms
Platform/NXP: Add OEM specific DSDT generator

Platform/NXP/ConfigurationManagerPkg/ConfigurationManagerDxe/ConfigurationManager.c | 843 ++++++++++++++++++++
Platform/NXP/ConfigurationManagerPkg/ConfigurationManagerDxe/ConfigurationManager.h | 153 ++++
Platform/NXP/ConfigurationManagerPkg/ConfigurationManagerDxe/ConfigurationManagerDxe.inf | 52 ++
Platform/NXP/ConfigurationManagerPkg/ConfigurationManagerPkg.dec | 23 +
Platform/NXP/ConfigurationManagerPkg/Include/PlatformAcpiTableGenerator.h | 20 +
Platform/NXP/LX2160aRdbPkg/AcpiTablesInclude/Dsdt/Clk.asl | 40 +
Platform/NXP/LX2160aRdbPkg/AcpiTablesInclude/Dsdt/Dsdt.asl | 15 +
Platform/NXP/LX2160aRdbPkg/AcpiTablesInclude/PlatformAcpiDsdtLib.inf | 39 +
Platform/NXP/LX2160aRdbPkg/AcpiTablesInclude/PlatformAcpiDsdtLib/RawDsdtGenerator.c | 146 ++++
Platform/NXP/LX2160aRdbPkg/AcpiTablesInclude/PlatformAcpiLib.h | 23 +
Platform/NXP/LX2160aRdbPkg/Include/Platform.h | 246 ++++++
Platform/NXP/LX2160aRdbPkg/LX2160aRdbPkg.dsc | 29 +
Platform/NXP/LX2160aRdbPkg/LX2160aRdbPkg.fdf | 12 +
Silicon/NXP/LX2160A/LX2160A.dsc.inc | 10 +
14 files changed, 1651 insertions(+)
create mode 100644 Platform/NXP/ConfigurationManagerPkg/ConfigurationManagerDxe/ConfigurationManager.c
create mode 100644 Platform/NXP/ConfigurationManagerPkg/ConfigurationManagerDxe/ConfigurationManager.h
create mode 100644 Platform/NXP/ConfigurationManagerPkg/ConfigurationManagerDxe/ConfigurationManagerDxe.inf
create mode 100644 Platform/NXP/ConfigurationManagerPkg/ConfigurationManagerPkg.dec
create mode 100644 Platform/NXP/ConfigurationManagerPkg/Include/PlatformAcpiTableGenerator.h
create mode 100644 Platform/NXP/LX2160aRdbPkg/AcpiTablesInclude/Dsdt/Clk.asl
create mode 100644 Platform/NXP/LX2160aRdbPkg/AcpiTablesInclude/Dsdt/Dsdt.asl
create mode 100644 Platform/NXP/LX2160aRdbPkg/AcpiTablesInclude/PlatformAcpiDsdtLib.inf
create mode 100644 Platform/NXP/LX2160aRdbPkg/AcpiTablesInclude/PlatformAcpiDsdtLib/RawDsdtGenerator.c
create mode 100644 Platform/NXP/LX2160aRdbPkg/AcpiTablesInclude/PlatformAcpiLib.h
create mode 100644 Platform/NXP/LX2160aRdbPkg/Include/Platform.h


Join devel@edk2.groups.io to automatically receive all group messages.