From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: 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 Received: from foss.arm.com (usa-sjc-mx-foss1.foss.arm.com [217.140.101.70]) by ml01.01.org (Postfix) with ESMTP id 86ABF20968910 for ; Sun, 17 Jun 2018 22:39:03 -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 02BAA1596 for ; Sun, 17 Jun 2018 22:39:03 -0700 (PDT) Received: from mail-ot0-f177.google.com (usa-sjc-mx-foss1.foss.arm.com [217.140.101.70]) by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPSA id DF5173F5B6 for ; Sun, 17 Jun 2018 22:39:02 -0700 (PDT) Received: by mail-ot0-f177.google.com with SMTP id i19-v6so17115023otk.10 for ; Sun, 17 Jun 2018 22:39:02 -0700 (PDT) X-Gm-Message-State: APt69E0mHkpfV7hNewK3ppVZ9MOBmXyp7Czf2RxO7GBttBNXZ/0U5Ro5 ePVdyIqanawihezvyNPhoemHAOA/LWAZONb2VDk= X-Google-Smtp-Source: ADUXVKKI2RRemJ1EmtE8hye/wpJp5x2XwIa3ixttXoZbgLMWEkp+BXBtIBBURMeyovXg6tjmdTnQEM4Mc9/xxbJBT50= X-Received: by 2002:a9d:55d9:: with SMTP id z25-v6mr6545549oti.131.1529300342256; Sun, 17 Jun 2018 22:39:02 -0700 (PDT) MIME-Version: 1.0 Received: by 2002:a9d:e2c:0:0:0:0:0 with HTTP; Sun, 17 Jun 2018 22:39:01 -0700 (PDT) In-Reply-To: References: <1529064002-18779-1-git-send-email-chandni.cherukuri@arm.com> <1529064002-18779-3-git-send-email-chandni.cherukuri@arm.com> From: chandni cherukuri Date: Mon, 18 Jun 2018 11:09:01 +0530 X-Gmail-Original-Message-ID: Message-ID: To: Ard Biesheuvel Cc: Chandni Cherukuri , "edk2-devel@lists.01.org" , Leif Lindholm Subject: Re: [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: , X-List-Received-Date: Mon, 18 Jun 2018 05:39:03 -0000 Content-Type: text/plain; charset="UTF-8" On Fri, Jun 15, 2018 at 6:35 PM, Ard Biesheuvel wrote: > On 15 June 2018 at 14:00, Chandni Cherukuri wrote: >> 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 >> --- >> 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/Platform/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 @@ >> >> #include >> #include >> +#include >> +#include >> >> EFI_STATUS >> InitVirtioBlockIo ( >> @@ -28,20 +30,41 @@ ArmSgiPkgEntryPoint ( >> ) >> { >> EFI_STATUS Status; >> + VOID *PlatformIdHob; >> + SGI_PLATFORM_DESCRIPTOR *HobData; >> + UINT32 ConfigId; >> + UINT32 PartNum; >> >> - Status = LocateAndInstallAcpiFromFv (&gSgi575AcpiTablesiFileGuid); >> - if (EFI_ERROR (Status)) { >> - DEBUG ((DEBUG_ERROR, "%a: Failed to install ACPI tables\n", __FUNCTION__)); >> - return Status; >> + PlatformIdHob = GetFirstGuidHob (&gArmSgiPlatformIdDescriptorGuid); >> + if (PlatformIdHob == NULL) { >> + DEBUG ((DEBUG_ERROR, "Platform ID HOB is NULL\n")); >> + return EFI_INVALID_PARAMETER; >> + } >> + >> + HobData = (SGI_PLATFORM_DESCRIPTOR *)(GET_GUID_HOB_DATA (PlatformIdHob)); >> + >> + PartNum = (HobData->PlatformId & SGI_PART_NUM_MASK); >> + ConfigId = ((HobData->PlatformId >> SGI_CONFIG_SHIFT) & SGI_CONFIG_MASK); >> + >> + if ((PartNum == SGI575_PART_NUM) && (ConfigId == SGI575_CONF_NUM)) { >> + Status = LocateAndInstallAcpiFromFv (&gSgi575AcpiTablesiFileGuid); >> + if (EFI_ERROR (Status)) { >> + DEBUG ((DEBUG_ERROR, "%a: Failed to install ACPI tables\n", __FUNCTION__)); >> + return Status; >> + } >> + } else { >> + DEBUG ((DEBUG_ERROR, "PlatformDxe: Unsupported Platform Id\n")); >> + return EFI_UNSUPPORTED; >> } >> > > >> - Status = EFI_REQUEST_UNLOAD_IMAGE; >> if (FeaturePcdGet (PcdVirtioSupported)) { >> Status = InitVirtioBlockIo (ImageHandle); >> if (EFI_ERROR (Status)) { >> DEBUG ((DEBUG_ERROR, "%a: Failed to install Virtio Block device\n", >> __FUNCTION__)); >> } >> + } else { >> + Status = EFI_REQUEST_UNLOAD_IMAGE; >> } >> > > This is an unrelated (and unnecessary) change. removed this unrelated change in v3 patchset > > >> return Status; >> diff --git a/Platform/ARM/SgiPkg/Drivers/PlatformDxe/PlatformDxe.inf b/Platform/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 @@ >> >> [LibraryClasses] >> AcpiLib >> + HobLib >> UefiDriverEntryPoint >> VirtioMmioDeviceLib >> >> [Guids] >> + gArmSgiPlatformIdDescriptorGuid >> gSgi575AcpiTablesiFileGuid >> >> [FeaturePcd] >> diff --git a/Platform/ARM/SgiPkg/SgiPlatform.dsc b/Platform/ARM/SgiPkg/SgiPlatform.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/LzmaCustomDecompressLib.inf >> } >> + Platform/ARM/SgiPkg/Library/SgiPlatformPei/SgiPlatformPei.inf >> >> # >> # DXE >> diff --git a/Platform/ARM/SgiPkg/SgiPlatform.fdf b/Platform/ARM/SgiPkg/SgiPlatform.fdf >> index 17cdf48..0e5739e 100644 >> --- a/Platform/ARM/SgiPkg/SgiPlatform.fdf >> +++ b/Platform/ARM/SgiPkg/SgiPlatform.fdf >> @@ -220,6 +220,7 @@ READ_LOCK_STATUS = TRUE >> INF MdeModulePkg/Universal/FaultTolerantWritePei/FaultTolerantWritePei.inf >> INF MdeModulePkg/Universal/PCD/Pei/Pcd.inf >> INF MdeModulePkg/Universal/Variable/Pei/VariablePei.inf >> + INF Platform/ARM/SgiPkg/Library/SgiPlatformPei/SgiPlatformPei.inf >> >> FILE FV_IMAGE = 9E21FD93-9C72-4c15-8C4B-E77F1DB2D792 { >> SECTION GUIDED EE4E5898-3914-4259-9D6E-DC7BD79403CF PROCESSING_REQUIRED = TRUE { >> -- >> 2.7.4 >> > _______________________________________________ > edk2-devel mailing list > edk2-devel@lists.01.org > https://lists.01.org/mailman/listinfo/edk2-devel