From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mail-wm1-f65.google.com (mail-wm1-f65.google.com [209.85.128.65]) by mx.groups.io with SMTP id smtpd.web11.18278.1595423766258252221 for ; Wed, 22 Jul 2020 06:16:06 -0700 Authentication-Results: mx.groups.io; dkim=pass header.i=@9elements.com header.s=google header.b=gAsvtoYQ; spf=pass (domain: 9elements.com, ip: 209.85.128.65, mailfrom: marcello.bauer@9elements.com) Received: by mail-wm1-f65.google.com with SMTP id o8so1901207wmh.4 for ; Wed, 22 Jul 2020 06:16:06 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=9elements.com; s=google; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=nK3AoScPHvZ8I37ICsKhuIka8rU1DJQhIiGx2iAZd3w=; b=gAsvtoYQtLiV/Ndv+3qJH2pAvnOBa42CYB4I7MbaVR9X9Aug1FgYWSsCLMvU8CfVOW dKZGWDngXY2fpFtTxYdjfkc6IE/E1w6gMZuiy5GFVteVApaSKRT/oFfwpSmKiKUh36kR Znyuhfe11OCCPzjE5F0RN6d87l/UxMaxJM++DdXOelwtK8AZS7B15OEcCQeWYGy1On44 pB6/AE1pMH/o9H7zWWAQ+kIJhf0d1uR2HBzMnv4bQkjsVv9yesb2FozfHFLLIZ4iEoWg AQEj95s71wsibrmHcGVzeUpCiBi2P5G3FAD9LS1UFtL0ECCIwJI0EIXQPP3MpM9SU5C2 8XWw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=nK3AoScPHvZ8I37ICsKhuIka8rU1DJQhIiGx2iAZd3w=; b=Okj0TBZSB+3h9yK/P32kLmlfp2unbQp2+ZyO2L05U8iaYxXb4tZ1SxoL0LBJhe+fZH YH1yzHHo1PESrtUIXqpvvT8mjSqRvHyLSfNEJrpcGQAmmPyPQp7YHn5uKOyhjYI/sKgu yJf1Pv4zGSiqKm/nkfKNqjfWoV9ZtPMBdLzxGwBPaJ2faHcd6NUXskQPgJ0aC6tpxTmY +8fuAOZeGlZX5/lb+gKu9xXx8VMLUeBnZABsqtX0lavYds7fvYguLn/PtRBJyecPke7N uuLuNl0Am9wVeHcFspbuRA7cjVCuJpDHR8WGzqYkt/sC1H6rO4XKdDCzo1ZalTg/Xko7 pZGw== X-Gm-Message-State: AOAM533OwrQack/6kf9wjWU6Nd8ri/HtNzGM7bQ/nnYhBc6kWuSZf5f1 AximbrZUbqIIHKtPDY4IZDWZU584+g4= X-Google-Smtp-Source: ABdhPJxIJtfdlp16EBhlXLdZZH5w1p0ABBsiIkRxe6lF2Aa0R59iCBxbNNHWs/svBbT7Bmpbx35yqA== X-Received: by 2002:a1c:a914:: with SMTP id s20mr7218400wme.76.1595423764644; Wed, 22 Jul 2020 06:16:04 -0700 (PDT) Return-Path: Received: from T14.n1ce.space ([2a02:908:e851:d750:c5a1:8c6d:2e5a:7eca]) by smtp.gmail.com with ESMTPSA id p14sm10038106wrg.96.2020.07.22.06.16.03 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 22 Jul 2020 06:16:04 -0700 (PDT) From: "Marcello Sylvester Bauer" To: devel@edk2.groups.io Cc: Patrick Rudolph , Christian Walter , Maurice Ma , Nate DeSimone , Benjamin You Subject: [PATCH v3 3/3] UefiPayloadPkg: Support variable size MMCONF space Date: Wed, 22 Jul 2020 15:15:43 +0200 Message-Id: <20200722131543.12530-4-marcello.bauer@9elements.com> X-Mailer: git-send-email 2.27.0 In-Reply-To: <20200722131543.12530-1-marcello.bauer@9elements.com> References: <20200722131543.12530-1-marcello.bauer@9elements.com> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable The default size is still 256MiB, but will be overwritten by UefiPayloadPkg with the real MMCONF size. e.g.: On embedded AMD platforms the MMCONF window size is usually only 64MiB. Fixes crash on platforms not exposing 256 buses. Tested on: * AMD Stoney Ridge Signed-off-by: Patrick Rudolph Signed-off-by: Marcello Sylvester Bauer Cc: Patrick Rudolph Cc: Christian Walter Cc: Maurice Ma Cc: Nate DeSimone Cc: Benjamin You --- UefiPayloadPkg/UefiPayloadPkgIa32X64.dsc | 1 + UefiPayloadPkg/BlSupportDxe/BlSupportDxe.inf | 1 + UefiPayloadPkg/BlSupportDxe/BlSupportDxe.c | 4 +++- 3 files changed, 5 insertions(+), 1 deletion(-) diff --git a/UefiPayloadPkg/UefiPayloadPkgIa32X64.dsc b/UefiPayloadPkg/Uefi= PayloadPkgIa32X64.dsc index a768a8702c66..162cbf47a83f 100644 --- a/UefiPayloadPkg/UefiPayloadPkgIa32X64.dsc +++ b/UefiPayloadPkg/UefiPayloadPkgIa32X64.dsc @@ -363,6 +363,7 @@ [PcdsDynamicDefault] gEfiMdeModulePkgTokenSpaceGuid.PcdConOutRow|31=0D gEfiMdeModulePkgTokenSpaceGuid.PcdConOutColumn|100=0D gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0=0D + gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseSize|0=0D =0D ##########################################################################= ######=0D #=0D diff --git a/UefiPayloadPkg/BlSupportDxe/BlSupportDxe.inf b/UefiPayloadPkg/= BlSupportDxe/BlSupportDxe.inf index 1371d5eb7952..cebc81135565 100644 --- a/UefiPayloadPkg/BlSupportDxe/BlSupportDxe.inf +++ b/UefiPayloadPkg/BlSupportDxe/BlSupportDxe.inf @@ -54,6 +54,7 @@ [Pcd] gEfiMdeModulePkgTokenSpaceGuid.PcdSetupVideoHorizontalResolution=0D gEfiMdeModulePkgTokenSpaceGuid.PcdSetupVideoVerticalResolution=0D gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress=0D + gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseSize=0D =0D [Depex]=0D TRUE=0D diff --git a/UefiPayloadPkg/BlSupportDxe/BlSupportDxe.c b/UefiPayloadPkg/Bl= SupportDxe/BlSupportDxe.c index a3974dcc02f8..a746d0581ee3 100644 --- a/UefiPayloadPkg/BlSupportDxe/BlSupportDxe.c +++ b/UefiPayloadPkg/BlSupportDxe/BlSupportDxe.c @@ -155,13 +155,15 @@ BlDxeEntryPoint ( }=0D =0D //=0D - // Set PcdPciExpressBaseAddress by HOB info=0D + // Set PcdPciExpressBaseAddress and PcdPciExpressBaseSize by HOB info=0D //=0D GuidHob =3D GetFirstGuidHob (&gUefiAcpiBoardInfoGuid);=0D if (GuidHob !=3D NULL) {=0D AcpiBoardInfo =3D (ACPI_BOARD_INFO *)GET_GUID_HOB_DATA (GuidHob);=0D Status =3D PcdSet64S (PcdPciExpressBaseAddress, AcpiBoardInfo->PcieBas= eAddress);=0D ASSERT_EFI_ERROR (Status);=0D + Status =3D PcdSet64S (PcdPciExpressBaseSize, AcpiBoardInfo->PcieBaseSi= ze);=0D + ASSERT_EFI_ERROR (Status);=0D }=0D =0D return EFI_SUCCESS;=0D --=20 2.27.0