Pushed as: c06b98a171..1ba46425cf -----Original Message----- From: Desimone, Nathaniel L <nathaniel.l.desim...@intel.com> Sent: Wednesday, April 27, 2022 1:18 PM To: Oram, Isaac W <isaac.w.o...@intel.com>; devel@edk2.groups.io Cc: Chiu, Chasel <chasel.c...@intel.com>; KARPAGAVINAYAGAM, MANICKAVASAKAM <manickavasak...@ami.com> Subject: RE: [edk2-devel][edk2-platforms][PATCH V1 1/1] WhitleyOpenBoardPkg/JunctionCity: Build ACPI content
Reviewed-By: Nate DeSimone <nathaniel.l.desim...@intel.com> > -----Original Message----- > From: Oram, Isaac W <isaac.w.o...@intel.com> > Sent: Friday, March 11, 2022 3:31 PM > To: devel@edk2.groups.io > Cc: Desimone, Nathaniel L <nathaniel.l.desim...@intel.com>; Chiu, > Chasel <chasel.c...@intel.com>; KARPAGAVINAYAGAM, MANICKAVASAKAM > <manickavasak...@ami.com> > Subject: [edk2-devel][edk2-platforms][PATCH V1 1/1] > WhitleyOpenBoardPkg/JunctionCity: Build ACPI content > > Use source versions of AcpiTables, AcpiPlatform, and StaticSkuDataDxe. > > Cc: Nate DeSimone <nathaniel.l.desim...@intel.com> > Cc: Chasel Chiu <chasel.c...@intel.com> > Cc: Manickavasakam Karpagavinayagam <manickavasak...@ami.com> > Signed-off-by: Isaac Oram <isaac.w.o...@intel.com> > --- > Platform/Intel/WhitleyOpenBoardPkg/JunctionCity/PlatformPkg.fdf | 3 + > Platform/Intel/WhitleyOpenBoardPkg/JunctionCity/build_board.py | 63 > ++++++++++++++++++++ > Platform/Intel/WhitleyOpenBoardPkg/JunctionCity/build_config.cfg | 15 > +++++ > 3 files changed, 81 insertions(+) > > diff --git > a/Platform/Intel/WhitleyOpenBoardPkg/JunctionCity/PlatformPkg.fdf > b/Platform/Intel/WhitleyOpenBoardPkg/JunctionCity/PlatformPkg.fdf > index 0b919b5ea9..b72aa2b688 100644 > --- a/Platform/Intel/WhitleyOpenBoardPkg/JunctionCity/PlatformPkg.fdf > +++ b/Platform/Intel/WhitleyOpenBoardPkg/JunctionCity/PlatformPkg.fdf > @@ -601,6 +601,7 @@ SET > gMinPlatformPkgTokenSpaceGuid.PcdFlashAreaSize = 0x01000000 > # UBA DXE common and board specific components > # > !include WhitleyOpenBoardPkg/Uba/UbaDxeCommon.fdf > + INF $(RP_PKG)/Uba/UbaMain/StaticSkuDataDxe/StaticSkuDataDxe.inf > INF > $(RP_PKG)/$(BOARD_NAME)/Uba/TypeJunctionCity/Dxe/UsbOcUpdateDxe > /UsbOcUpdateDxe.inf > INF > $(RP_PKG)/$(BOARD_NAME)/Uba/TypeJunctionCity/Dxe/IioCfgUpdateDxe/ > IioCfgUpdateDxe.inf > INF > $(RP_PKG)/$(BOARD_NAME)/Uba/TypeJunctionCity/Dxe/SlotDataUpdateD > xe/SlotDataUpdateDxe.inf > @@ -682,6 +683,8 @@ SET > gMinPlatformPkgTokenSpaceGuid.PcdFlashAreaSize = 0x01000000 > INF BoardModulePkg/LegacySioDxe/LegacySioDxe.inf > INF MdeModulePkg/Universal/Console/TerminalDxe/TerminalDxe.inf > > + INF RuleOverride = ACPITABLE > + WhitleyOpenBoardPkg/Features/Acpi/AcpiTables/AcpiTables10nm.inf > + INF > + WhitleyOpenBoardPkg/Features/Acpi/AcpiPlatform/AcpiPlatform.inf > INF WhitleyOpenBoardPkg/Features/AcpiVtd/AcpiVtd.inf > INF MinPlatformPkg/Acpi/AcpiSmm/AcpiSmm.inf > > diff --git > a/Platform/Intel/WhitleyOpenBoardPkg/JunctionCity/build_board.py > b/Platform/Intel/WhitleyOpenBoardPkg/JunctionCity/build_board.py > index 33698f9809..72d0c5089a 100644 > --- a/Platform/Intel/WhitleyOpenBoardPkg/JunctionCity/build_board.py > +++ b/Platform/Intel/WhitleyOpenBoardPkg/JunctionCity/build_board.py > @@ -25,6 +25,7 @@ def pre_build_ex(config, functions): > :returns: nothing > """ > print("pre_build_ex") > + > config["BUILD_DIR_PATH"] = os.path.join(config["WORKSPACE"], > 'Build', > > config["PLATFORM_BOARD_PACKAGE"], @@ -55,6 > +56,68 @@ def pre_build_ex(config, functions): > > if config.get("API_MODE_FSP_WRAPPER_BUILD", "FALSE") == "TRUE": > raise ValueError("FSP API Mode is currently unsupported on > Ice Lake Xeon Scalable") > + > + # Build the ACPI AML offset table *.offset.h > + print("Info: re-generating PlatformOffset header files") > + > + execute_script = functions.get("execute_script") > + > + command = ["build", "-D", "MAX_SOCKET=" + config["MAX_SOCKET"]] > + > + if config["EXT_BUILD_FLAGS"] and config["EXT_BUILD_FLAGS"] != "": > + ext_build_flags = config["EXT_BUILD_FLAGS"].split(" ") > + ext_build_flags = [x.strip() for x in ext_build_flags] > + ext_build_flags = [x for x in ext_build_flags if x != ""] > + command.extend(ext_build_flags) > + > + aml_offsets_split = > os.path.split(os.path.normpath(config["AML_OFFSETS_PATH"])) > + command.append("-p") > + command.append(os.path.normpath(config["AML_OFFSETS_PATH"]) + > '.dsc') > + command.append("-m") > + command.append(os.path.join(aml_offsets_split[0], > aml_offsets_split[1], aml_offsets_split[1] + '.inf')) > + command.append("-y") > + command.append(os.path.join(config["WORKSPACE"], > "PreBuildReport.txt")) > + command.append("--log=" + os.path.join(config["WORKSPACE"], > + "PreBuild.log")) > + > + _, _, _, code = execute_script(command, config) > + if code != 0: > + print(" ".join(command)) > + print("Error re-generating PlatformOffset header files") > + sys.exit(1) > + > + # Build AmlGenOffset command to consume the *.offset.h and > + produce > AmlOffsetTable.c for StaticSkuDataDxe use. > + > + # Get destination path and filename from config > + relative_file_path = > os.path.normpath(config["STRIPPED_AML_OFFSETS_FILE_PATH"]) # get > path relative to Platform/Intel > + out_file_path = os.path.join(config["WORKSPACE_PLATFORM"], > relative_file_path) # full path to output file > + out_file_dir = os.path.dirname(out_file_path) > # > remove filename > + > + out_file_root_ext = > + os.path.splitext(os.path.basename(out_file_path)) > # root and extension of output file > + > + # Get relative path for the generated offset.h file > + relative_dsdt_file_path = > os.path.normpath(config["DSDT_TABLE_FILE_PATH"]) # path relative to > Platform/Intel > + dsdt_file_root_ext = > os.path.splitext(os.path.basename(relative_dsdt_file_path)) # root and > extension of generated offset.h file > + > + # Generate output directory if it doesn't exist > + if not os.path.exists(out_file_dir): > + os.mkdir(out_file_dir) > + > + command = ["python", > + os.path.join(config["MIN_PACKAGE_TOOLS"], > + "AmlGenOffset", > "AmlGenOffset.py"), > + "-d", "--aml_filter", config["AML_FILTER"], > + "-o", out_file_path, > + os.path.join(config["BUILD_X64"], > + aml_offsets_split[0], aml_offsets_split[1], aml_offsets_split[1], > + "OUTPUT", os.path.dirname(relative_dsdt_file_path), > + dsdt_file_root_ext[0] + ".offset.h")] > + > + # execute the command > + _, _, _, code = execute_script(command, config) > + if code != 0: > + print(" ".join(command)) > + print("Error re-generating PlatformOffset header files") > + sys.exit(1) > + > + print("GenOffset done") > + > + > return None > > def _merge_files(files, ofile): > diff --git > a/Platform/Intel/WhitleyOpenBoardPkg/JunctionCity/build_config.cfg > b/Platform/Intel/WhitleyOpenBoardPkg/JunctionCity/build_config.cfg > index 8744e9072c..3b66995128 100644 > --- a/Platform/Intel/WhitleyOpenBoardPkg/JunctionCity/build_config.cfg > +++ b/Platform/Intel/WhitleyOpenBoardPkg/JunctionCity/build_config.cfg > @@ -35,3 +35,18 @@ FSP_BINARY_BUILD = FALSE FSP_TEST_RELEASE = FALSE > SECURE_BOOT_ENABLE = FALSE BIOS_INFO_GUID = 4A4CA1C6-871C- > 45BB-8801-6910A7AA5807 > + > +# > +# AML offset table generation configuration options # All paths > +should use / and be relative to edk2-platforms/Platform/Intel # > +# AML_FILTER - AML filter is used to strip out unused > AML offset > data > +# AML_OFFSETS_PATH - Path to INF file that builds AML offsets > C > source file > +# The directory name, DSC file name, INF file name, and BASE_NAME must > match identically > +# DSDT_TABLE_FILE_PATH - Path to DSDT ASL file for the board > +# STRIPPED_AML_OFFSETS_FILE_PATH - Target AML offset data file > +consumed by UBA driver # AML_FILTER = \"PSYS\" .\.DRVT\" > +.\.FIX[0-9,A-Z] BBI[0] BBU[0] CRCM BAR0 .\.CCT[0-9A-Z]\" > +.\.CFH[0-9A-Z]\" .\.FXCD\" .\.FXST\" .\.FXIN\" .\.FXOU\" .\.FXBS\" > +.\.FXFH\" .\.CENA\" .\.DRVT\" .\.CFIS\" {NULL }; AML_OFFSETS_PATH = > +WhitleyOpenBoardPkg/WilsonCityRvp/AmlOffsets > +DSDT_TABLE_FILE_PATH = > +WhitleyOpenBoardPkg/Features/Acpi/AcpiTables/Dsdt/EPRPPlatform10nm > .asl > +STRIPPED_AML_OFFSETS_FILE_PATH = > +WhitleyOpenBoardPkg/Uba/UbaMain/StaticSkuDataDxe/AmlOffsetTable.c > -- > 2.27.0.windows.1 -=-=-=-=-=-=-=-=-=-=-=- Groups.io Links: You receive all messages sent to this group. View/Reply Online (#89354): https://edk2.groups.io/g/devel/message/89354 Mute This Topic: https://groups.io/mt/89723271/21656 Group Owner: devel+ow...@edk2.groups.io Unsubscribe: https://edk2.groups.io/g/devel/unsub [arch...@mail-archive.com] -=-=-=-=-=-=-=-=-=-=-=-