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.web11.12714.1681391725155872127 for ; Thu, 13 Apr 2023 06:15:25 -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 74F24D75; Thu, 13 Apr 2023 06:16:08 -0700 (PDT) Received: from cam-smtp0.cambridge.arm.com (pierre123.nice.arm.com [10.34.100.129]) by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPA id 1A7DF3F73F; Thu, 13 Apr 2023 06:15:22 -0700 (PDT) From: "PierreGondois" To: devel@edk2.groups.io Cc: Thomas Abraham , Ard Biesheuvel , Sami Mujawar , Fabien Ficheau Subject: [PATCH 1/1] Platform/ARM/JunoPkg: Don't setup PCIe root bridge for Juno-r0 Date: Thu, 13 Apr 2023 15:14:48 +0200 Message-Id: <20230413131448.70329-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 --- .../ARM/JunoPkg/Library/JunoPciHostBridgeLib/XPressRich3.c | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/Platform/ARM/JunoPkg/Library/JunoPciHostBridgeLib/XPressRich= 3.c b/Platform/ARM/JunoPkg/Library/JunoPciHostBridgeLib/XPressRich3.c index 0755dc155616..583efd0efb16 100644 --- a/Platform/ARM/JunoPkg/Library/JunoPciHostBridgeLib/XPressRich3.c +++ b/Platform/ARM/JunoPkg/Library/JunoPciHostBridgeLib/XPressRich3.c @@ -69,6 +69,13 @@ HWPciRbInit ( UINTN TranslationTable; EFI_CPU_IO2_PROTOCOL *CpuIo; EFI_STATUS Status; + UINT32 JunoRevision; + + GetJunoRevision (JunoRevision); + DEBUG ((DEBUG_ERROR, "Juno rev=3D%d\n", JunoRevision)); + if (JunoRevision =3D=3D JUNO_REVISION_R0) { + return EFI_SUCCESS; + } =20 PCI_TRACE ("VExpressPciRbInit()"); =20 --=20 2.25.1