[edk2-devel] [PATCH edk2-platforms v2 1/3] Platform/ARM/Juno: Merge ASL and CfgMngr directories

Sami Mujawar sami.mujawar at arm.com
Sat Nov 7 09:45:30 UTC 2020


From: Pierre Gondois <pierre.gondois at arm.com>

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 <pierre.gondois at arm.com>
Signed-off-by: Sami Mujawar <sami.mujawar at arm.com>
---

Notes:
    v2:
      - No code change. Resending with v2 series.                   [SAMI]
        Ref: https://edk2.groups.io/g/devel/message/63247
    
     v1:
      - Merge the PlatformASLTablesLib and ConfigurationManagerDxe  [Pierre]
        directories.

 Platform/ARM/JunoPkg/ConfigurationManager/ConfigurationManager.dsc.inc                                                | 10 +----
 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
 Platform/ARM/JunoPkg/ConfigurationManager/ConfigurationManagerDxe/ConfigurationManager.c                              |  8 +---
 Platform/ARM/JunoPkg/ConfigurationManager/ConfigurationManagerDxe/ConfigurationManager.h                              | 11 +++++-
 Platform/ARM/JunoPkg/ConfigurationManager/ConfigurationManagerDxe/ConfigurationManagerDxe.inf                         |  7 +++-
 Platform/ARM/JunoPkg/ConfigurationManager/PlatformASLTablesLib/PlatformASLTablesLib.inf                               | 39 --------------------
 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/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
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/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/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
-- 
'Guid(CE165669-3EF3-493F-B85D-6190EE5B9759)'



-=-=-=-=-=-=-=-=-=-=-=-
Groups.io Links: You receive all messages sent to this group.
View/Reply Online (#67120): https://edk2.groups.io/g/devel/message/67120
Mute This Topic: https://groups.io/mt/78092586/1813853
Group Owner: devel+owner at edk2.groups.io
Unsubscribe: https://edk2.groups.io/g/devel/unsub [edk2-devel-archive at redhat.com]
-=-=-=-=-=-=-=-=-=-=-=-





More information about the edk2-devel-archive mailing list