From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from foss.arm.com (foss.arm.com [217.140.110.172]) by mx.groups.io with SMTP id smtpd.web10.3461.1681456611763107640 for ; Fri, 14 Apr 2023 00:16:52 -0700 Authentication-Results: mx.groups.io; dkim=missing; spf=pass (domain: arm.com, ip: 217.140.110.172, mailfrom: pierre.gondois@arm.com) Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.121.207.14]) by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id A7FCA2F4; Fri, 14 Apr 2023 00:17:35 -0700 (PDT) Received: from pierre123.arm.com (unknown [172.31.20.19]) by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPA id A82CB3F6C4; Fri, 14 Apr 2023 00:16:49 -0700 (PDT) From: "PierreGondois" To: devel@edk2.groups.io Cc: Thomas Abraham , Ard Biesheuvel , Sami Mujawar , Fabien Ficheau , Rebecca Cran Subject: [PATCH v2 1/1] Platform/ARM/JunoPkg: Don't setup PCIe root bridge for Juno-r0 Date: Fri, 14 Apr 2023 09:16:43 +0200 Message-Id: <20230414071643.220924-1-Pierre.Gondois@arm.com> X-Mailer: git-send-email 2.25.1 MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable From: Pierre Gondois Booting a Juno-r0 with a DEBUG build triggers an ASSERT when processing the library constructors of: MdeModulePkg/Bus/Pci/PciHostBridgeDxe/PciHostBridgeDxe.inf JunoPciHostBridgeLib.inf::HWPciRbInit() returns an error code as Juno-r0 doesn't support PCIe. Check Juno's revision in HWPciRbInit() before setting up the PCIe root complex. Reported-by: Fabien Ficheau Signed-off-by: Pierre Gondois Reviewed-by: Sami Mujawar --- .../ARM/JunoPkg/Library/JunoPciHostBridgeLib/XPressRich3.c | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/Platform/ARM/JunoPkg/Library/JunoPciHostBridgeLib/XPressRich= 3.c b/Platform/ARM/JunoPkg/Library/JunoPciHostBridgeLib/XPressRich3.c index 0755dc155616..055bf95f10ec 100644 --- a/Platform/ARM/JunoPkg/Library/JunoPciHostBridgeLib/XPressRich3.c +++ b/Platform/ARM/JunoPkg/Library/JunoPciHostBridgeLib/XPressRich3.c @@ -69,6 +69,12 @@ HWPciRbInit ( UINTN TranslationTable; EFI_CPU_IO2_PROTOCOL *CpuIo; EFI_STATUS Status; + UINT32 JunoRevision; + + GetJunoRevision (JunoRevision); + if (JunoRevision =3D=3D JUNO_REVISION_R0) { + return EFI_SUCCESS; + } =20 PCI_TRACE ("VExpressPciRbInit()"); =20 --=20 2.25.1