From nobody Mon Feb 9 22:24:37 2026 Delivered-To: importer@patchew.org Received-SPF: pass (zohomail.com: domain of groups.io designates 66.175.222.12 as permitted sender) client-ip=66.175.222.12; envelope-from=bounce+27952+53538+1787277+3901457@groups.io; helo=web01.groups.io; Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of groups.io designates 66.175.222.12 as permitted sender) smtp.mailfrom=bounce+27952+53538+1787277+3901457@groups.io; dmarc=fail(p=none dis=none) header.from=redhat.com Received: from web01.groups.io (web01.groups.io [66.175.222.12]) by mx.zohomail.com with SMTPS id 1580334269726979.0024848042458; Wed, 29 Jan 2020 13:44:29 -0800 (PST) Return-Path: X-Received: by 127.0.0.2 with SMTP id UpC1YY1788612x8ynMRZ8zYm; Wed, 29 Jan 2020 13:44:28 -0800 X-Received: from us-smtp-delivery-1.mimecast.com (us-smtp-delivery-1.mimecast.com [207.211.31.81]) by mx.groups.io with SMTP id smtpd.web10.615.1580334268133561698 for ; Wed, 29 Jan 2020 13:44:28 -0800 X-Received: from mimecast-mx01.redhat.com (mimecast-mx01.redhat.com [209.132.183.4]) (Using TLS) by relay.mimecast.com with ESMTP id us-mta-159-8b7_X8o0M8KNzCzAcPDiAQ-1; Wed, 29 Jan 2020 16:44:23 -0500 X-Received: from smtp.corp.redhat.com (int-mx04.intmail.prod.int.phx2.redhat.com [10.5.11.14]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mimecast-mx01.redhat.com (Postfix) with ESMTPS id B0A2A18A6EC1; Wed, 29 Jan 2020 21:44:22 +0000 (UTC) X-Received: from lacos-laptop-7.usersys.redhat.com (ovpn-116-32.ams2.redhat.com [10.36.116.32]) by smtp.corp.redhat.com (Postfix) with ESMTP id BC9315DA75; Wed, 29 Jan 2020 21:44:21 +0000 (UTC) From: "Laszlo Ersek" To: edk2-devel-groups-io Cc: Ard Biesheuvel , Jordan Justen Subject: [edk2-devel] [PATCH v2 05/11] OvmfPkg/PlatformPei: detect SMRAM at default SMBASE (skeleton) Date: Wed, 29 Jan 2020 22:44:06 +0100 Message-Id: <20200129214412.2361-6-lersek@redhat.com> In-Reply-To: <20200129214412.2361-1-lersek@redhat.com> References: <20200129214412.2361-1-lersek@redhat.com> MIME-Version: 1.0 X-Scanned-By: MIMEDefang 2.79 on 10.5.11.14 X-MC-Unique: 8b7_X8o0M8KNzCzAcPDiAQ-1 X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Precedence: Bulk List-Unsubscribe: Sender: devel@edk2.groups.io List-Id: Mailing-List: list devel@edk2.groups.io; contact devel+owner@edk2.groups.io Reply-To: devel@edk2.groups.io,lersek@redhat.com X-Gm-Message-State: SMl4c0gowmBH1Q2Laia9c7Ogx1787277AA= Content-Transfer-Encoding: quoted-printable DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=groups.io; q=dns/txt; s=20140610; t=1580334268; bh=WexKzO4leZE6WKMxGE5XnPim8d1PfuAx/eU3S36Uzd4=; h=Cc:Content-Type:Date:From:Reply-To:Subject:To; b=cfBxT3+/oYmuO+cUa2LWHAqWTYolvF0KFsYMtAYRPEaiGr4xWyGunnkIHN0iCOvi6xO /KkksQMaskk8kZNnV1HUOqn0bYV+pNlMyPJqpTGEmZ6IaMYHmCUCa7dzc1C/8EusI4GsP pBQ96iIj6dmFKSu+80gJ6X2Rszr9V45JpBk= X-ZohoMail-DKIM: pass (identity @groups.io) Content-Type: text/plain; charset="utf-8" Introduce the Q35SmramAtDefaultSmbaseInitialization() function for detecting the "SMRAM at default SMBASE" feature. For now, the function is only a skeleton, so that we can gradually build upon the result while the result is hard-coded as FALSE. The actual detection will occur in a later patch. Cc: Ard Biesheuvel Cc: Jordan Justen Ref: https://bugzilla.tianocore.org/show_bug.cgi?id=3D1512 Signed-off-by: Laszlo Ersek Reviewed-by: Jiewen Yao --- Notes: v2: - trim Cc list - pick up Jiewen's R-b OvmfPkg/PlatformPei/PlatformPei.inf | 1 + OvmfPkg/PlatformPei/Platform.h | 7 +++++++ OvmfPkg/PlatformPei/MemDetect.c | 18 ++++++++++++++++++ OvmfPkg/PlatformPei/Platform.c | 1 + 4 files changed, 27 insertions(+) diff --git a/OvmfPkg/PlatformPei/PlatformPei.inf b/OvmfPkg/PlatformPei/Plat= formPei.inf index 30eaebdfae63..25229618ed13 100644 --- a/OvmfPkg/PlatformPei/PlatformPei.inf +++ b/OvmfPkg/PlatformPei/PlatformPei.inf @@ -84,6 +84,7 @@ [Pcd] gUefiOvmfPkgTokenSpaceGuid.PcdPciMmio64Size gUefiOvmfPkgTokenSpaceGuid.PcdOvmfDecompressionScratchEnd gUefiOvmfPkgTokenSpaceGuid.PcdQ35TsegMbytes + gUefiOvmfPkgTokenSpaceGuid.PcdQ35SmramAtDefaultSmbase gEfiMdePkgTokenSpaceGuid.PcdGuidedExtractHandlerTableAddress gEfiMdeModulePkgTokenSpaceGuid.PcdFlashNvStorageFtwSpareSize gEfiMdeModulePkgTokenSpaceGuid.PcdFlashNvStorageVariableSize diff --git a/OvmfPkg/PlatformPei/Platform.h b/OvmfPkg/PlatformPei/Platform.h index 2f3cebcd3a6a..43f20f067f22 100644 --- a/OvmfPkg/PlatformPei/Platform.h +++ b/OvmfPkg/PlatformPei/Platform.h @@ -52,6 +52,11 @@ Q35TsegMbytesInitialization ( VOID ); =20 +VOID +Q35SmramAtDefaultSmbaseInitialization ( + VOID + ); + EFI_STATUS PublishPeiMemory ( VOID @@ -119,6 +124,8 @@ extern UINT32 mMaxCpuCount; =20 extern UINT16 mHostBridgeDevId; =20 +extern BOOLEAN mQ35SmramAtDefaultSmbase; + extern UINT32 mQemuUc32Base; =20 #endif // _PLATFORM_PEI_H_INCLUDED_ diff --git a/OvmfPkg/PlatformPei/MemDetect.c b/OvmfPkg/PlatformPei/MemDetec= t.c index 58b171fba1c8..2bc1c46dffc2 100644 --- a/OvmfPkg/PlatformPei/MemDetect.c +++ b/OvmfPkg/PlatformPei/MemDetect.c @@ -43,6 +43,8 @@ STATIC UINT32 mS3AcpiReservedMemorySize; =20 STATIC UINT16 mQ35TsegMbytes; =20 +BOOLEAN mQ35SmramAtDefaultSmbase; + UINT32 mQemuUc32Base; =20 VOID @@ -90,6 +92,22 @@ Q35TsegMbytesInitialization ( } =20 =20 +VOID +Q35SmramAtDefaultSmbaseInitialization ( + VOID + ) +{ + RETURN_STATUS PcdStatus; + + ASSERT (mHostBridgeDevId =3D=3D INTEL_Q35_MCH_DEVICE_ID); + + mQ35SmramAtDefaultSmbase =3D FALSE; + PcdStatus =3D PcdSetBoolS (PcdQ35SmramAtDefaultSmbase, + mQ35SmramAtDefaultSmbase); + ASSERT_RETURN_ERROR (PcdStatus); +} + + VOID QemuUc32BaseInitialization ( VOID diff --git a/OvmfPkg/PlatformPei/Platform.c b/OvmfPkg/PlatformPei/Platform.c index 510d6d7477ec..473af102783a 100644 --- a/OvmfPkg/PlatformPei/Platform.c +++ b/OvmfPkg/PlatformPei/Platform.c @@ -792,6 +792,7 @@ InitializePlatform ( if (FeaturePcdGet (PcdSmmSmramRequire)) { Q35BoardVerification (); Q35TsegMbytesInitialization (); + Q35SmramAtDefaultSmbaseInitialization (); } =20 PublishPeiMemory (); --=20 2.19.1.3.g30247aa5d201 -=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D- Groups.io Links: You receive all messages sent to this group. View/Reply Online (#53538): https://edk2.groups.io/g/devel/message/53538 Mute This Topic: https://groups.io/mt/70252356/1787277 Group Owner: devel+owner@edk2.groups.io Unsubscribe: https://edk2.groups.io/g/devel/unsub [importer@patchew.org] -=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-