From nobody Sun Apr 28 00:46:45 2024 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; spf=none (zoho.com: 198.145.21.10 is neither permitted nor denied by domain of lists.01.org) smtp.mailfrom=edk2-devel-bounces@lists.01.org Return-Path: Received: from ml01.01.org (ml01.01.org [198.145.21.10]) by mx.zohomail.com with SMTPS id 1529064022461205.18956516263108; Fri, 15 Jun 2018 05:00:22 -0700 (PDT) Received: from [127.0.0.1] (localhost [IPv6:::1]) by ml01.01.org (Postfix) with ESMTP id E09C7210F93D3; Fri, 15 Jun 2018 05:00:19 -0700 (PDT) Received: from foss.arm.com (foss.arm.com [217.140.101.70]) by ml01.01.org (Postfix) with ESMTP id 892E0210F673B for ; Fri, 15 Jun 2018 05:00:18 -0700 (PDT) Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.72.51.249]) by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id 6904D1529; Fri, 15 Jun 2018 05:00:18 -0700 (PDT) Received: from usa.arm.com (a73437-lin.blr.arm.com [10.162.0.155]) by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPA id 7D1863F557; Fri, 15 Jun 2018 05:00:17 -0700 (PDT) X-Original-To: edk2-devel@lists.01.org Received-SPF: none (zoho.com: 198.145.21.10 is neither permitted nor denied by domain of lists.01.org) client-ip=198.145.21.10; envelope-from=edk2-devel-bounces@lists.01.org; helo=ml01.01.org; Received-SPF: Pass (sender SPF authorized) identity=mailfrom; client-ip=217.140.101.70; helo=foss.arm.com; envelope-from=chandni.cherukuri@arm.com; receiver=edk2-devel@lists.01.org From: Chandni Cherukuri To: edk2-devel@lists.01.org Date: Fri, 15 Jun 2018 17:30:01 +0530 Message-Id: <1529064002-18779-2-git-send-email-chandni.cherukuri@arm.com> X-Mailer: git-send-email 2.7.4 In-Reply-To: <1529064002-18779-1-git-send-email-chandni.cherukuri@arm.com> References: <1529064002-18779-1-git-send-email-chandni.cherukuri@arm.com> Subject: [edk2] [PATCH edk2-platforms v2 1/2] Platform/ARM/Sgi: Install a Platform ID HOB X-BeenThere: edk2-devel@lists.01.org X-Mailman-Version: 2.1.26 Precedence: list List-Id: EDK II Development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: leif.lindholm@linaro.org, ard.biesheuvel@linaro.org MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Errors-To: edk2-devel-bounces@lists.01.org Sender: "edk2-devel" X-ZohoMail: RSF_4 Z_629925259 SPT_0 Content-Type: text/plain; charset="utf-8" On SGI platforms, the trusted firmware executes prior to the SEC phase. It supplies to the SEC phase a pointer to a fdt, that contains platform specific information such as part number and config number of the SGI platform. The platform code that executes during the SEC phase creates a PPI that allows access to other PEIMs to obtain a copy of the fdt pointer. Further, during the PEI phase, a Platform ID PEIM installs a Platform ID HOB. The Platform ID HOB can be used by DXE drivers to identify the platform it is executing on. Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by: Chandni Cherukuri Reviewed-by: Leif Lindholm --- Platform/ARM/SgiPkg/Include/Ppi/SgiPlatformId.h | 23 ++++ Platform/ARM/SgiPkg/Include/SgiPlatform.h | 13 +++ Platform/ARM/SgiPkg/Library/PlatformLib/AArch64/Helper.S | 13 ++- Platform/ARM/SgiPkg/Library/PlatformLib/PlatformLib.c | 10 ++ Platform/ARM/SgiPkg/Library/PlatformLib/PlatformLib.inf | 3 + Platform/ARM/SgiPkg/Library/SgiPlatformPei/SgiPlatformPei.inf | 40 +++++++ Platform/ARM/SgiPkg/Library/SgiPlatformPei/SgiPlatformPeim.c | 112 ++++++= ++++++++++++++ Platform/ARM/SgiPkg/SgiPlatform.dec | 5 + 8 files changed, 215 insertions(+), 4 deletions(-) diff --git a/Platform/ARM/SgiPkg/Include/Ppi/SgiPlatformId.h b/Platform/ARM= /SgiPkg/Include/Ppi/SgiPlatformId.h new file mode 100644 index 0000000..5ffc69d --- /dev/null +++ b/Platform/ARM/SgiPkg/Include/Ppi/SgiPlatformId.h @@ -0,0 +1,23 @@ +/** @file +* +* Copyright (c) 2018, ARM Limited. All rights reserved. +* +* This program and the accompanying materials are licensed and made avail= able +* under the terms and conditions of the BSD License which accompanies this +* distribution. The full text of the license may be found at +* http://opensource.org/licenses/bsd-license.php +* +* THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, +* WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IM= PLIED. +* +**/ + +#ifndef SGI_PLATFORMID_PPI_ +#define SGI_PLATFORMID_PPI_ + +//HwConfig DT structure +typedef struct { + UINT64 *HwConfigDtAddr; +} SGI_HW_CONFIG_INFO_PPI; + +#endif diff --git a/Platform/ARM/SgiPkg/Include/SgiPlatform.h b/Platform/ARM/SgiPk= g/Include/SgiPlatform.h index 00ca7e9..1454018 100644 --- a/Platform/ARM/SgiPkg/Include/SgiPlatform.h +++ b/Platform/ARM/SgiPkg/Include/SgiPlatform.h @@ -68,4 +68,17 @@ #define SGI_SYSPH_SYS_REG_FLASH 0x4C #define SGI_SYSPH_SYS_REG_FLASH_RWEN 0x1 =20 +// SGI575_VERSION values +#define SGI575_CONF_NUM 0x3 +#define SGI575_PART_NUM 0x783 + +#define SGI_CONFIG_MASK 0x0F +#define SGI_CONFIG_SHIFT 0x1C +#define SGI_PART_NUM_MASK 0xFFF + +// ARM platform description data. +typedef struct { + UINTN PlatformId; +} SGI_PLATFORM_DESCRIPTOR; + #endif // __SGI_PLATFORM_H__ diff --git a/Platform/ARM/SgiPkg/Library/PlatformLib/AArch64/Helper.S b/Pla= tform/ARM/SgiPkg/Library/PlatformLib/AArch64/Helper.S index dab6c77..3662266 100644 --- a/Platform/ARM/SgiPkg/Library/PlatformLib/AArch64/Helper.S +++ b/Platform/ARM/SgiPkg/Library/PlatformLib/AArch64/Helper.S @@ -22,15 +22,20 @@ GCC_ASM_EXPORT(ArmPlatformPeiBootAction) GCC_ASM_EXPORT(ArmPlatformGetCorePosition) GCC_ASM_EXPORT(ArmPlatformGetPrimaryCoreMpId) GCC_ASM_EXPORT(ArmPlatformIsPrimaryCore) +GCC_ASM_IMPORT(HwConfigDtBlob) =20 // // First platform specific function to be called in the PEI phase // -// This function is actually the first function called by the PrePi -// or PrePeiCore modules. It allows to retrieve arguments passed to -// the UEFI firmware through the CPU registers. -// +// The trusted firmware passed the hw config DT blob in x1 register. +// Keep a copy of it in a global variable. +//VOID +//ArmPlatformPeiBootAction ( +// VOID +// ); ASM_PFX(ArmPlatformPeiBootAction): + adr x10, HwConfigDtBlob + str x1, [x10] ret =20 //UINTN diff --git a/Platform/ARM/SgiPkg/Library/PlatformLib/PlatformLib.c b/Platfo= rm/ARM/SgiPkg/Library/PlatformLib/PlatformLib.c index ea3201a..c9ddbfb 100644 --- a/Platform/ARM/SgiPkg/Library/PlatformLib/PlatformLib.c +++ b/Platform/ARM/SgiPkg/Library/PlatformLib/PlatformLib.c @@ -15,6 +15,10 @@ #include #include #include +#include + +UINT64 HwConfigDtBlob; +STATIC SGI_HW_CONFIG_INFO_PPI mHwConfigDtInfoPpi; =20 STATIC ARM_CORE_INFO mCoreInfoTable[] =3D { { @@ -36,6 +40,7 @@ ArmPlatformInitialize ( IN UINTN MpId ) { + mHwConfigDtInfoPpi.HwConfigDtAddr =3D &HwConfigDtBlob; return RETURN_SUCCESS; } =20 @@ -59,6 +64,11 @@ EFI_PEI_PPI_DESCRIPTOR gPlatformPpiTable[] =3D { EFI_PEI_PPI_DESCRIPTOR_PPI, &gArmMpCoreInfoPpiGuid, &mMpCoreInfoPpi + }, + { + EFI_PEI_PPI_DESCRIPTOR_PPI, + &gHwConfigDtInfoPpiGuid, + &mHwConfigDtInfoPpi } }; =20 diff --git a/Platform/ARM/SgiPkg/Library/PlatformLib/PlatformLib.inf b/Plat= form/ARM/SgiPkg/Library/PlatformLib/PlatformLib.inf index 42e14d5..5d4bf72 100644 --- a/Platform/ARM/SgiPkg/Library/PlatformLib/PlatformLib.inf +++ b/Platform/ARM/SgiPkg/Library/PlatformLib/PlatformLib.inf @@ -61,7 +61,10 @@ gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress =20 [Guids] + gArmSgiPlatformIdDescriptorGuid gEfiHobListGuid ## CONSUMES ## SystemTable + gFdtTableGuid =20 [Ppis] gArmMpCoreInfoPpiGuid + gHwConfigDtInfoPpiGuid diff --git a/Platform/ARM/SgiPkg/Library/SgiPlatformPei/SgiPlatformPei.inf = b/Platform/ARM/SgiPkg/Library/SgiPlatformPei/SgiPlatformPei.inf new file mode 100644 index 0000000..3d1bab7 --- /dev/null +++ b/Platform/ARM/SgiPkg/Library/SgiPlatformPei/SgiPlatformPei.inf @@ -0,0 +1,40 @@ +# +# Copyright (c) 2018, ARM Limited. All rights reserved. +# +# This program and the accompanying materials are licensed and made avail= able +# under the terms and conditions of the BSD License which accompanies this +# distribution. The full text of the license may be found at +# http://opensource.org/licenses/bsd-license.php +# +# THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, +# WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IM= PLIED. +# + +[Defines] + INF_VERSION =3D 0x0001001A + BASE_NAME =3D SgiPlatformIdPei + FILE_GUID =3D a9936f3e-6a1b-11e8-8ce0-fffe69b86863 + MODULE_TYPE =3D PEIM + VERSION_STRING =3D 1.0 + ENTRY_POINT =3D SgiPlatformPeim + +[Packages] + EmbeddedPkg/EmbeddedPkg.dec + MdePkg/MdePkg.dec + Platform/ARM/SgiPkg/SgiPlatform.dec + +[LibraryClasses] + FdtLib + PeimEntryPoint + +[Sources] + SgiPlatformPeim.c + +[Guids] + gArmSgiPlatformIdDescriptorGuid + +[Ppis] + gHwConfigDtInfoPpiGuid + +[Depex] + TRUE diff --git a/Platform/ARM/SgiPkg/Library/SgiPlatformPei/SgiPlatformPeim.c b= /Platform/ARM/SgiPkg/Library/SgiPlatformPei/SgiPlatformPeim.c new file mode 100644 index 0000000..77499a6 --- /dev/null +++ b/Platform/ARM/SgiPkg/Library/SgiPlatformPei/SgiPlatformPeim.c @@ -0,0 +1,112 @@ +/** @file +* +* Copyright (c) 2018, ARM Limited. All rights reserved. +* +* This program and the accompanying materials are licensed and made avail= able +* under the terms and conditions of the BSD License which accompanies this +* distribution. The full text of the license may be found at +* http://opensource.org/licenses/bsd-license.php +* +* THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, +* WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IM= PLIED. +* +**/ + +#include +#include +#include +#include +#include +#include +#include + +/** + + This function returns the Platform ID of the platform + + This functions locates the HwConfig PPI and gets the base address of HW = CONFIG + DT from which the platform ID is obtained using FDT helper functions + + @return returns the platform ID on success else returns 0 on error + +**/ + +STATIC +UINT32 +GetSgiPlatformId ( + VOID +) +{ + CONST UINT32 *Property; + INT32 Offset; + CONST VOID *HwCfgDtBlob; + SGI_HW_CONFIG_INFO_PPI *HwConfigInfoPpi; + EFI_STATUS Status; + + Status =3D PeiServicesLocatePpi (&gHwConfigDtInfoPpiGuid, 0, NULL, + (VOID**)&HwConfigInfoPpi); + if (EFI_ERROR (Status)) { + DEBUG ((DEBUG_ERROR, + "PeiServicesLocatePpi failed with error %r\n", Status)); + return 0; + } + + HwCfgDtBlob =3D (VOID *)(*(HwConfigInfoPpi->HwConfigDtAddr)); + if (fdt_check_header (HwCfgDtBlob) !=3D 0) { + DEBUG ((DEBUG_ERROR, "Invalid DTB file %p passed\n", HwCfgDtBlob)); + return 0; + } + + Offset =3D fdt_subnode_offset (HwCfgDtBlob, 0, "system-id"); + if (Offset =3D=3D -FDT_ERR_NOTFOUND) { + DEBUG ((DEBUG_ERROR, "Invalid DTB : system-id node not found\n")); + return 0; + } + + Property =3D fdt_getprop (HwCfgDtBlob, Offset, "platform-id", NULL); + if (Property =3D=3D NULL) { + DEBUG ((DEBUG_ERROR, "Platform Id is NULL\n")); + return 0; + } + + return fdt32_to_cpu (*Property); +} + +/** + + This function creates a Platform ID HOB and assigns PlatformId as the + HobData + + @return asserts on error and returns EFI_INVALID_PARAMETER. On success + returns EFI_SUCCESS + +**/ +EFI_STATUS +EFIAPI +SgiPlatformPeim ( + IN EFI_PEI_FILE_HANDLE FileHandle, + IN CONST EFI_PEI_SERVICES **PeiServices +) +{ + SGI_PLATFORM_DESCRIPTOR *HobData; + + //Create platform descriptor HOB + HobData =3D (SGI_PLATFORM_DESCRIPTOR *)BuildGuidHob ( + &gArmSgiPlatformIdDescriptorGuid, + sizeof (SGI_PLATFORM_DESCRIPTOR)); + + //Get the platform id from the platform specific hw_config device tree + if (HobData =3D=3D NULL) { + DEBUG ((DEBUG_ERROR, "Platform HOB is NULL\n")); + ASSERT (FALSE); + return EFI_OUT_OF_RESOURCES; + } + + HobData->PlatformId =3D GetSgiPlatformId (); + if (HobData->PlatformId =3D=3D 0) { + ASSERT (FALSE); + return EFI_INVALID_PARAMETER; + } + + return EFI_SUCCESS; +} diff --git a/Platform/ARM/SgiPkg/SgiPlatform.dec b/Platform/ARM/SgiPkg/SgiP= latform.dec index d995937..ea9f6c5 100644 --- a/Platform/ARM/SgiPkg/SgiPlatform.dec +++ b/Platform/ARM/SgiPkg/SgiPlatform.dec @@ -29,9 +29,14 @@ Include # Root include for the package =20 [Guids.common] + # ARM Sgi Platform ID descriptor + gArmSgiPlatformIdDescriptorGuid =3D { 0xf56f152a, 0xad2a, 0x11e6, { 0xb1= , 0xa7, 0x00, 0x50, 0x56, 0x3c, 0x44, 0xcc } } gArmSgiTokenSpaceGuid =3D { 0x577d6941, 0xaea1, 0x40b4, { 0x90, 0x9= 3, 0x2a, 0x86, 0x61, 0x72, 0x5a, 0x57 } } gSgi575AcpiTablesiFileGuid =3D { 0xc712719a, 0x0aaf, 0x438c, { 0x9c, 0xd= d, 0x35, 0xab, 0x4d, 0x60, 0x20, 0x7d } } =20 [PcdsFeatureFlag.common] # Set this PCD to TRUE to enable virtio support. gArmSgiTokenSpaceGuid.PcdVirtioSupported|TRUE|BOOLEAN|0x00000001 + +[Ppis] + gHwConfigDtInfoPpiGuid =3D { 0x6f606eb3, 0x9123, 0x4e15, { 0xa8, 0x9= b, 0x0f, 0xac, 0x66, 0xef, 0xd0, 0x17 } } --=20 2.7.4 _______________________________________________ edk2-devel mailing list edk2-devel@lists.01.org https://lists.01.org/mailman/listinfo/edk2-devel From nobody Sun Apr 28 00:46:45 2024 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; spf=none (zoho.com: 198.145.21.10 is neither permitted nor denied by domain of lists.01.org) smtp.mailfrom=edk2-devel-bounces@lists.01.org Return-Path: Received: from ml01.01.org (ml01.01.org [198.145.21.10]) by mx.zohomail.com with SMTPS id 1529064025571943.7916709445864; Fri, 15 Jun 2018 05:00:25 -0700 (PDT) Received: from [127.0.0.1] (localhost [IPv6:::1]) by ml01.01.org (Postfix) with ESMTP id 25AD1210F673B; Fri, 15 Jun 2018 05:00:21 -0700 (PDT) Received: from foss.arm.com (usa-sjc-mx-foss1.foss.arm.com [217.140.101.70]) by ml01.01.org (Postfix) with ESMTP id 0D300210E38B1 for ; Fri, 15 Jun 2018 05:00:19 -0700 (PDT) Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.72.51.249]) by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id B870C1529; Fri, 15 Jun 2018 05:00:19 -0700 (PDT) Received: from usa.arm.com (a73437-lin.blr.arm.com [10.162.0.155]) by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPA id CE2FA3F557; Fri, 15 Jun 2018 05:00:18 -0700 (PDT) X-Original-To: edk2-devel@lists.01.org Received-SPF: none (zoho.com: 198.145.21.10 is neither permitted nor denied by domain of lists.01.org) client-ip=198.145.21.10; envelope-from=edk2-devel-bounces@lists.01.org; helo=ml01.01.org; Received-SPF: Pass (sender SPF authorized) identity=mailfrom; client-ip=217.140.101.70; helo=foss.arm.com; envelope-from=chandni.cherukuri@arm.com; receiver=edk2-devel@lists.01.org From: Chandni Cherukuri To: edk2-devel@lists.01.org Date: Fri, 15 Jun 2018 17:30:02 +0530 Message-Id: <1529064002-18779-3-git-send-email-chandni.cherukuri@arm.com> X-Mailer: git-send-email 2.7.4 In-Reply-To: <1529064002-18779-1-git-send-email-chandni.cherukuri@arm.com> References: <1529064002-18779-1-git-send-email-chandni.cherukuri@arm.com> Subject: [edk2] [PATCH edk2-platforms v2 2/2] Platform/ARM/Sgi: Pick ACPI tables to install based on platform ID X-BeenThere: edk2-devel@lists.01.org X-Mailman-Version: 2.1.26 Precedence: list List-Id: EDK II Development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: leif.lindholm@linaro.org, ard.biesheuvel@linaro.org MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Errors-To: edk2-devel-bounces@lists.01.org Sender: "edk2-devel" X-ZohoMail: RSF_4 Z_629925259 SPT_0 Content-Type: text/plain; charset="utf-8" Use the platform ID and config ID values from the platform ID HOB to choose the right set of ACPI tables to be installed. Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by: Chandni Cherukuri Reviewed-by: Leif Lindholm --- Platform/ARM/SgiPkg/Drivers/PlatformDxe/PlatformDxe.c | 33 +++++++++++++= ++++--- Platform/ARM/SgiPkg/Drivers/PlatformDxe/PlatformDxe.inf | 2 ++ Platform/ARM/SgiPkg/SgiPlatform.dsc | 1 + Platform/ARM/SgiPkg/SgiPlatform.fdf | 1 + 4 files changed, 32 insertions(+), 5 deletions(-) diff --git a/Platform/ARM/SgiPkg/Drivers/PlatformDxe/PlatformDxe.c b/Platfo= rm/ARM/SgiPkg/Drivers/PlatformDxe/PlatformDxe.c index edaae5b..f077a2c 100644 --- a/Platform/ARM/SgiPkg/Drivers/PlatformDxe/PlatformDxe.c +++ b/Platform/ARM/SgiPkg/Drivers/PlatformDxe/PlatformDxe.c @@ -14,6 +14,8 @@ =20 #include #include +#include +#include =20 EFI_STATUS InitVirtioBlockIo ( @@ -28,20 +30,41 @@ ArmSgiPkgEntryPoint ( ) { EFI_STATUS Status; + VOID *PlatformIdHob; + SGI_PLATFORM_DESCRIPTOR *HobData; + UINT32 ConfigId; + UINT32 PartNum; =20 - Status =3D LocateAndInstallAcpiFromFv (&gSgi575AcpiTablesiFileGuid); - if (EFI_ERROR (Status)) { - DEBUG ((DEBUG_ERROR, "%a: Failed to install ACPI tables\n", __FUNCTION= __)); - return Status; + PlatformIdHob =3D GetFirstGuidHob (&gArmSgiPlatformIdDescriptorGuid); + if (PlatformIdHob =3D=3D NULL) { + DEBUG ((DEBUG_ERROR, "Platform ID HOB is NULL\n")); + return EFI_INVALID_PARAMETER; + } + + HobData =3D (SGI_PLATFORM_DESCRIPTOR *)(GET_GUID_HOB_DATA (PlatformIdHob= )); + + PartNum =3D (HobData->PlatformId & SGI_PART_NUM_MASK); + ConfigId =3D ((HobData->PlatformId >> SGI_CONFIG_SHIFT) & SGI_CONFIG_MAS= K); + + if ((PartNum =3D=3D SGI575_PART_NUM) && (ConfigId =3D=3D SGI575_CONF_NUM= )) { + Status =3D LocateAndInstallAcpiFromFv (&gSgi575AcpiTablesiFileGuid); + if (EFI_ERROR (Status)) { + DEBUG ((DEBUG_ERROR, "%a: Failed to install ACPI tables\n", __FUNCTI= ON__)); + return Status; + } + } else { + DEBUG ((DEBUG_ERROR, "PlatformDxe: Unsupported Platform Id\n")); + return EFI_UNSUPPORTED; } =20 - Status =3D EFI_REQUEST_UNLOAD_IMAGE; if (FeaturePcdGet (PcdVirtioSupported)) { Status =3D InitVirtioBlockIo (ImageHandle); if (EFI_ERROR (Status)) { DEBUG ((DEBUG_ERROR, "%a: Failed to install Virtio Block device\n", __FUNCTION__)); } + } else { + Status =3D EFI_REQUEST_UNLOAD_IMAGE; } =20 return Status; diff --git a/Platform/ARM/SgiPkg/Drivers/PlatformDxe/PlatformDxe.inf b/Plat= form/ARM/SgiPkg/Drivers/PlatformDxe/PlatformDxe.inf index 51ad22f..b6b8209 100644 --- a/Platform/ARM/SgiPkg/Drivers/PlatformDxe/PlatformDxe.inf +++ b/Platform/ARM/SgiPkg/Drivers/PlatformDxe/PlatformDxe.inf @@ -30,10 +30,12 @@ =20 [LibraryClasses] AcpiLib + HobLib UefiDriverEntryPoint VirtioMmioDeviceLib =20 [Guids] + gArmSgiPlatformIdDescriptorGuid gSgi575AcpiTablesiFileGuid =20 [FeaturePcd] diff --git a/Platform/ARM/SgiPkg/SgiPlatform.dsc b/Platform/ARM/SgiPkg/SgiP= latform.dsc index a56175e..7b8e051 100644 --- a/Platform/ARM/SgiPkg/SgiPlatform.dsc +++ b/Platform/ARM/SgiPkg/SgiPlatform.dsc @@ -199,6 +199,7 @@ NULL|MdeModulePkg/Library/LzmaCustomDecompressLib/LzmaCustomDecompre= ssLib.inf } + Platform/ARM/SgiPkg/Library/SgiPlatformPei/SgiPlatformPei.inf =20 # # DXE diff --git a/Platform/ARM/SgiPkg/SgiPlatform.fdf b/Platform/ARM/SgiPkg/SgiP= latform.fdf index 17cdf48..0e5739e 100644 --- a/Platform/ARM/SgiPkg/SgiPlatform.fdf +++ b/Platform/ARM/SgiPkg/SgiPlatform.fdf @@ -220,6 +220,7 @@ READ_LOCK_STATUS =3D TRUE INF MdeModulePkg/Universal/FaultTolerantWritePei/FaultTolerantWritePei.i= nf INF MdeModulePkg/Universal/PCD/Pei/Pcd.inf INF MdeModulePkg/Universal/Variable/Pei/VariablePei.inf + INF Platform/ARM/SgiPkg/Library/SgiPlatformPei/SgiPlatformPei.inf =20 FILE FV_IMAGE =3D 9E21FD93-9C72-4c15-8C4B-E77F1DB2D792 { SECTION GUIDED EE4E5898-3914-4259-9D6E-DC7BD79403CF PROCESSING_REQUIRE= D =3D TRUE { --=20 2.7.4 _______________________________________________ edk2-devel mailing list edk2-devel@lists.01.org https://lists.01.org/mailman/listinfo/edk2-devel