From: Pierre Gondois <[email protected]> Due to the following patch available in edk2: 0a4aa20e8d446c2f5dd54f3a0a7ec4d52f0ebdb6 BaseTools: Compile AML bytecode arrays into .obj file a C array containing the AML bytecode is generated from ASL files, and a .obj file containing this array is generated.
The Configuration Manager is currently providing an extra flag to the ASL compiler to generate a C array containing AML bytecode. This C array is contained in a .hex file. This .hex file is included where necessary. This mechanism was necessary due to the impossibility to describe dependencies between ASL files and C files. This mechanism is not required anymore. Thus the ASL and CfgMngr directories can me merged in one module. This patch merge the two directories for the Juno. Signed-off-by: Pierre Gondois <[email protected]> --- The changes can be seen at: https://github.com/PierreARM/edk2-platforms/commits/847_Merge_ASL_and_CfgMngr_dir_v1 Notes: v1: - Merge the PlatformASLTablesLib and ConfigurationManagerDxe directories. [Pierre] Platform/ARM/JunoPkg/ConfigurationManager/ConfigurationManager.dsc.inc | 10 +---- Platform/ARM/JunoPkg/ConfigurationManager/ConfigurationManagerDxe/ConfigurationManagerDxe.inf | 7 +++- Platform/ARM/JunoPkg/ConfigurationManager/PlatformASLTablesLib/PlatformASLTablesLib.inf | 39 -------------------- Platform/ARM/JunoPkg/ConfigurationManager/ConfigurationManagerDxe/ConfigurationManager.h | 11 +++++- Platform/ARM/JunoPkg/ConfigurationManager/ConfigurationManagerDxe/ConfigurationManager.c | 8 +--- Platform/ARM/JunoPkg/ConfigurationManager/{PlatformASLTablesLib => ConfigurationManagerDxe/AslTables}/Dsdt.asl | 0 Platform/ARM/JunoPkg/ConfigurationManager/{PlatformASLTablesLib => ConfigurationManagerDxe/AslTables}/SsdtJunoUsb.asl | 0 Platform/ARM/JunoPkg/ConfigurationManager/{PlatformASLTablesLib => ConfigurationManagerDxe/AslTables}/SsdtPci.asl | 0 Platform/ARM/JunoPkg/ConfigurationManager/{PlatformASLTablesLib => ConfigurationManagerDxe/AslTables}/SsdtUart.asl | 0 9 files changed, 18 insertions(+), 57 deletions(-) diff --git a/Platform/ARM/JunoPkg/ConfigurationManager/ConfigurationManager.dsc.inc b/Platform/ARM/JunoPkg/ConfigurationManager/ConfigurationManager.dsc.inc index 6699a016098623f9c8f567a8fa305b7cbf0b4fff..987c2d8ca3ba9757e36b9e16171a280523107a7a 100644 --- a/Platform/ARM/JunoPkg/ConfigurationManager/ConfigurationManager.dsc.inc +++ b/Platform/ARM/JunoPkg/ConfigurationManager/ConfigurationManager.dsc.inc @@ -1,7 +1,7 @@ ## @file # dsc include file for Configuration Manager # -# Copyright (c) 2017 - 2018, ARM Limited. All rights reserved. +# Copyright (c) 2017 - 2020, Arm Limited. All rights reserved.<BR> # # SPDX-License-Identifier: BSD-2-Clause-Patent ## @@ -14,10 +14,4 @@ [LibraryClasses.common] [Components.common] # Configuration Manager - Platform/ARM/JunoPkg/ConfigurationManager/ConfigurationManagerDxe/ConfigurationManagerDxe.inf { - <LibraryClasses> - # Platform ASL Tables - PlatformAslTablesLib|Platform/ARM/JunoPkg/ConfigurationManager/PlatformASLTablesLib/PlatformASLTablesLib.inf - <BuildOptions> - *_*_*_PLATFORM_FLAGS = -I$(BIN_DIR)/Platform/ARM/JunoPkg/ConfigurationManager/PlatformASLTablesLib/PlatformASLTablesLib/OUTPUT - } + Platform/ARM/JunoPkg/ConfigurationManager/ConfigurationManagerDxe/ConfigurationManagerDxe.inf diff --git a/Platform/ARM/JunoPkg/ConfigurationManager/ConfigurationManagerDxe/ConfigurationManagerDxe.inf b/Platform/ARM/JunoPkg/ConfigurationManager/ConfigurationManagerDxe/ConfigurationManagerDxe.inf index dd71f815db672f25f04713460acb2460bdc45699..a3e7db12f8c913f7111b5ff4ad724a5bdcc35956 100644 --- a/Platform/ARM/JunoPkg/ConfigurationManager/ConfigurationManagerDxe/ConfigurationManagerDxe.inf +++ b/Platform/ARM/JunoPkg/ConfigurationManager/ConfigurationManagerDxe/ConfigurationManagerDxe.inf @@ -1,7 +1,7 @@ ## @file # Configuration Manager Dxe # -# Copyright (c) 2017 - 2019, ARM Limited. All rights reserved. +# Copyright (c) 2017 - 2020, Arm Limited. All rights reserved.<BR> # # SPDX-License-Identifier: BSD-2-Clause-Patent ## @@ -22,6 +22,10 @@ [Defines] [Sources] ConfigurationManager.c + AslTables/Dsdt.asl + AslTables/SsdtJunoUsb.asl + AslTables/SsdtPci.asl + AslTables/SsdtUart.asl [Packages] ArmPkg/ArmPkg.dec @@ -33,7 +37,6 @@ [Packages] [LibraryClasses] ArmPlatformLib - PlatformAslTablesLib PrintLib UefiBootServicesTableLib UefiDriverEntryPoint diff --git a/Platform/ARM/JunoPkg/ConfigurationManager/PlatformASLTablesLib/PlatformASLTablesLib.inf b/Platform/ARM/JunoPkg/ConfigurationManager/PlatformASLTablesLib/PlatformASLTablesLib.inf deleted file mode 100644 index 93978cff97d9704f8639732c55d01bf559a5a2d6..0000000000000000000000000000000000000000 --- a/Platform/ARM/JunoPkg/ConfigurationManager/PlatformASLTablesLib/PlatformASLTablesLib.inf +++ /dev/null @@ -1,39 +0,0 @@ -## @file -# Platform ASL Tables -# -# Copyright (c) 2017 - 2019, ARM Limited. All rights reserved. -# -# SPDX-License-Identifier: BSD-2-Clause-Patent -## - -[Defines] - INF_VERSION = 0x0001001B - BASE_NAME = JunoAslTablesLib - FILE_GUID = 557004DB-DF45-426B-9E5E-1E8ABAA2EE2C - MODULE_TYPE = DXE_DRIVER - VERSION_STRING = 1.0 - LIBRARY_CLASS = PlatformAslTablesLib|DXE_DRIVER - -# -# The following information is for reference only and not required by the build tools. -# -# VALID_ARCHITECTURES = ARM AARCH64 -# - -[Sources] - Dsdt.asl - SsdtJunoUsb.asl - SsdtPci.asl - SsdtUart.asl - -[Packages] - ArmPkg/ArmPkg.dec - ArmPlatformPkg/ArmPlatformPkg.dec - MdeModulePkg/MdeModulePkg.dec - MdePkg/MdePkg.dec - Platform/ARM/JunoPkg/ArmJuno.dec - Platform/ARM/VExpressPkg/ArmVExpressPkg.dec - -[FixedPcd] - gArmPlatformTokenSpaceGuid.PL011UartInterrupt - gEfiMdeModulePkgTokenSpaceGuid.PcdSerialRegisterBase diff --git a/Platform/ARM/JunoPkg/ConfigurationManager/ConfigurationManagerDxe/ConfigurationManager.h b/Platform/ARM/JunoPkg/ConfigurationManager/ConfigurationManagerDxe/ConfigurationManager.h index 7fdf663fc6d2ad80da26ff1f1635c858d5be4e93..2073ae4902e540de869612353bfaf0ebacaea50d 100644 --- a/Platform/ARM/JunoPkg/ConfigurationManager/ConfigurationManagerDxe/ConfigurationManager.h +++ b/Platform/ARM/JunoPkg/ConfigurationManager/ConfigurationManagerDxe/ConfigurationManager.h @@ -1,6 +1,6 @@ /** @file - Copyright (c) 2017 - 2019, ARM Limited. All rights reserved. + Copyright (c) 2017 - 2020, Arm Limited. All rights reserved.<BR> SPDX-License-Identifier: BSD-2-Clause-Patent @@ -12,6 +12,15 @@ #ifndef CONFIGURATION_MANAGER_H__ #define CONFIGURATION_MANAGER_H__ +/** C array containing the compiled AML template. + These symbols are defined in the auto generated C file + containing the AML bytecode array. +*/ +extern CHAR8 dsdt_aml_code[]; +extern CHAR8 ssdtjunousb_aml_code[]; +extern CHAR8 ssdtpci_aml_code[]; +extern CHAR8 ssdtuart_aml_code[]; + /** The configuration manager version */ #define CONFIGURATION_MANAGER_REVISION CREATE_REVISION (1, 0) diff --git a/Platform/ARM/JunoPkg/ConfigurationManager/ConfigurationManagerDxe/ConfigurationManager.c b/Platform/ARM/JunoPkg/ConfigurationManager/ConfigurationManagerDxe/ConfigurationManager.c index d52cc2982334ded1c3bf2f5e8f570378d8fb0ae1..913cffc9b994319065b5292b0d28970a0a0d8320 100644 --- a/Platform/ARM/JunoPkg/ConfigurationManager/ConfigurationManagerDxe/ConfigurationManager.c +++ b/Platform/ARM/JunoPkg/ConfigurationManager/ConfigurationManagerDxe/ConfigurationManager.c @@ -1,7 +1,7 @@ /** @file Configuration Manager Dxe - Copyright (c) 2017 - 2019, ARM Limited. All rights reserved. + Copyright (c) 2017 - 2020, Arm Limited. All rights reserved.<BR> SPDX-License-Identifier: BSD-2-Clause-Patent @@ -25,12 +25,6 @@ #include "ConfigurationManager.h" #include "Platform.h" -// AML Code Include files generated by iASL Compiler -#include <Dsdt.hex> -#include <SsdtJunoUsb.hex> -#include <SsdtUart.hex> -#include <SsdtPci.hex> - /** The platform configuration repository information. */ STATIC diff --git a/Platform/ARM/JunoPkg/ConfigurationManager/PlatformASLTablesLib/Dsdt.asl b/Platform/ARM/JunoPkg/ConfigurationManager/ConfigurationManagerDxe/AslTables/Dsdt.asl similarity index 100% rename from Platform/ARM/JunoPkg/ConfigurationManager/PlatformASLTablesLib/Dsdt.asl rename to Platform/ARM/JunoPkg/ConfigurationManager/ConfigurationManagerDxe/AslTables/Dsdt.asl diff --git a/Platform/ARM/JunoPkg/ConfigurationManager/PlatformASLTablesLib/SsdtJunoUsb.asl b/Platform/ARM/JunoPkg/ConfigurationManager/ConfigurationManagerDxe/AslTables/SsdtJunoUsb.asl similarity index 100% rename from Platform/ARM/JunoPkg/ConfigurationManager/PlatformASLTablesLib/SsdtJunoUsb.asl rename to Platform/ARM/JunoPkg/ConfigurationManager/ConfigurationManagerDxe/AslTables/SsdtJunoUsb.asl diff --git a/Platform/ARM/JunoPkg/ConfigurationManager/PlatformASLTablesLib/SsdtPci.asl b/Platform/ARM/JunoPkg/ConfigurationManager/ConfigurationManagerDxe/AslTables/SsdtPci.asl similarity index 100% rename from Platform/ARM/JunoPkg/ConfigurationManager/PlatformASLTablesLib/SsdtPci.asl rename to Platform/ARM/JunoPkg/ConfigurationManager/ConfigurationManagerDxe/AslTables/SsdtPci.asl diff --git a/Platform/ARM/JunoPkg/ConfigurationManager/PlatformASLTablesLib/SsdtUart.asl b/Platform/ARM/JunoPkg/ConfigurationManager/ConfigurationManagerDxe/AslTables/SsdtUart.asl similarity index 100% rename from Platform/ARM/JunoPkg/ConfigurationManager/PlatformASLTablesLib/SsdtUart.asl rename to Platform/ARM/JunoPkg/ConfigurationManager/ConfigurationManagerDxe/AslTables/SsdtUart.asl -- 'Guid(CE165669-3EF3-493F-B85D-6190EE5B9759)' -=-=-=-=-=-=-=-=-=-=-=- Groups.io Links: You receive all messages sent to this group. View/Reply Online (#63247): https://edk2.groups.io/g/devel/message/63247 Mute This Topic: https://groups.io/mt/75768729/21656 Group Owner: [email protected] Unsubscribe: https://edk2.groups.io/g/devel/unsub [[email protected]] -=-=-=-=-=-=-=-=-=-=-=-
