From nobody Sat May 18 12:05:15 2024 Delivered-To: importer@patchew.org Received-SPF: pass (zohomail.com: domain of groups.io designates 66.175.222.108 as permitted sender) client-ip=66.175.222.108; envelope-from=bounce+27952+109303+1787277+3901457@groups.io; helo=mail02.groups.io; Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of groups.io designates 66.175.222.108 as permitted sender) smtp.mailfrom=bounce+27952+109303+1787277+3901457@groups.io ARC-Seal: i=1; a=rsa-sha256; t=1696366829; cv=none; d=zohomail.com; s=zohoarc; b=DEQzMhXg6S2+j9Nn0VLWlSPqvL0y5bWP6UkPI0wgQQaRYEbQTrygnfo04PYvUkXjF6fl49HZSx5L1UiEntLXVzzae4/+nqdLD3uT2T3eQMzfQO/yP+erLY2rWPlqFis5ehLSDdHaNPpXM6vE1CWWQ81iwKfqDnhYlpYiXKdYBfM= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1696366829; h=Content-Transfer-Encoding:Cc:Date:From:List-Subscribe:List-Id:List-Help:List-Unsubscribe:MIME-Version:Message-ID:Reply-To:Sender:Subject:To; bh=R3UcA5TvBlyH44rQDW0Gj3n7QkiqtKIgxazKD5rEVpw=; b=U+IbrUCDHeEsMAWdiwt1isX55e7w2SmPu7ddRhIALy+YDB0QQwENc2WznCqAP3EpXE+pr+i2dgOIhUMtP4JcS1WhYPqYge8pn43nOR4JzcBqf6NDSmZUMHwvjaehN7ft2LCWeIUtLINRLeAu/IFsyryOgCrtFBs+lYXTUV9jY8s= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of groups.io designates 66.175.222.108 as permitted sender) smtp.mailfrom=bounce+27952+109303+1787277+3901457@groups.io Received: from mail02.groups.io (mail02.groups.io [66.175.222.108]) by mx.zohomail.com with SMTPS id 1696366829990906.4186906018566; Tue, 3 Oct 2023 14:00:29 -0700 (PDT) Return-Path: DKIM-Signature: a=rsa-sha256; bh=qkPf7xy4CDmH9cDjFwzEbL2ygSoH3uuu3lDRbHwePts=; c=relaxed/simple; d=groups.io; h=From:To:Cc:Subject:Date:Message-Id:MIME-Version:Precedence:List-Subscribe:List-Help:Sender:List-Id:Mailing-List:Delivered-To:Reply-To:List-Unsubscribe-Post:List-Unsubscribe:Content-Transfer-Encoding; s=20140610; t=1696366829; v=1; b=tmDVRGDaYANt13YgyErcvDFCy7FReLsIteUNlLoxb973+Yyrmb+zaYUrEpV+X28H5Q5vXKxP tnHqYb5D8Xmg1ns9jiBSCXuFpaQ4NIrIl0iMK1awK375BfiLCb0t/PmTxsks0znwcygXxVwz20F Dkh8F8Jdw8NCYSWag0K/d7tc= X-Received: by 127.0.0.2 with SMTP id mwjNYY1788612xRMut8uc8Fw; Tue, 03 Oct 2023 14:00:29 -0700 X-Received: from mail-pl1-f170.google.com (mail-pl1-f170.google.com [209.85.214.170]) by mx.groups.io with SMTP id smtpd.web11.2117.1696366829067314498 for ; Tue, 03 Oct 2023 14:00:29 -0700 X-Received: by mail-pl1-f170.google.com with SMTP id d9443c01a7336-1c62d61dc96so10267715ad.0 for ; Tue, 03 Oct 2023 14:00:29 -0700 (PDT) X-Gm-Message-State: SIqP5zkcOK6qER36yKW2myBOx1787277AA= X-Google-Smtp-Source: AGHT+IEk0uOca6TLis8beXFx2X2GtVrNGCFLnzakNtedrb2zsPmEgZap+vRP2k5Ia0b5AACW0a3oHQ== X-Received: by 2002:a17:902:e5c8:b0:1c7:6200:bc7d with SMTP id u8-20020a170902e5c800b001c76200bc7dmr775996plf.52.1696366828023; Tue, 03 Oct 2023 14:00:28 -0700 (PDT) X-Received: from localhost.localdomain (c-76-20-53-72.hsd1.ca.comcast.net. [76.20.53.72]) by smtp.gmail.com with ESMTPSA id s18-20020a17090330d200b001bb9f104328sm2073069plc.146.2023.10.03.14.00.26 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 03 Oct 2023 14:00:27 -0700 (PDT) From: "Tuan Phan" To: devel@edk2.groups.io Cc: michael.d.kinney@intel.com, gaoliming@byosoft.com.cn, zhiguang.liu@intel.com, sunilvl@ventanamicro.com, git@danielschaefer.me, andrei.warkentin@intel.com, ardb+tianocore@kernel.org, Tuan Phan Subject: [edk2-devel] [PATCH] UefiCpuPkg: RISC-V: MMU: Introduce a PCD for SATP mode Date: Tue, 3 Oct 2023 14:00:21 -0700 Message-Id: <20231003210021.26834-1-tphan@ventanamicro.com> MIME-Version: 1.0 Precedence: Bulk List-Subscribe: List-Help: 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,tphan@ventanamicro.com List-Unsubscribe-Post: List-Unsubscribe=One-Click List-Unsubscribe: Content-Transfer-Encoding: quoted-printable X-ZohoMail-DKIM: pass (identity @groups.io) X-ZM-MESSAGEID: 1696366831405100001 Content-Type: text/plain; charset="utf-8" Introduce a PCD to control the maximum SATP mode that MMU allowed to use. This PCD helps RISC-V platform set bare or minimum SATA mode during bring up to debug memory map issue. Signed-off-by: Tuan Phan Reviewed-by: Andrei Warkentin Reviewed-by: Dhaval Sharma --- UefiCpuPkg/Library/BaseRiscVMmuLib/BaseRiscVMmuLib.c | 6 +++++- UefiCpuPkg/Library/BaseRiscVMmuLib/BaseRiscVMmuLib.inf | 3 +++ UefiCpuPkg/UefiCpuPkg.dec | 8 ++++++++ 3 files changed, 16 insertions(+), 1 deletion(-) diff --git a/UefiCpuPkg/Library/BaseRiscVMmuLib/BaseRiscVMmuLib.c b/UefiCpu= Pkg/Library/BaseRiscVMmuLib/BaseRiscVMmuLib.c index 9cca5fc128af..826a1d32a1d4 100644 --- a/UefiCpuPkg/Library/BaseRiscVMmuLib/BaseRiscVMmuLib.c +++ b/UefiCpuPkg/Library/BaseRiscVMmuLib/BaseRiscVMmuLib.c @@ -36,7 +36,7 @@ #define PTE_PPN_SHIFT 10 #define RISCV_MMU_PAGE_SHIFT 12 =20 -STATIC UINTN mModeSupport[] =3D { SATP_MODE_SV57, SATP_MODE_SV48, SATP_MO= DE_SV39 }; +STATIC UINTN mModeSupport[] =3D { SATP_MODE_SV57, SATP_MODE_SV48, SATP_MO= DE_SV39, SATP_MODE_OFF }; STATIC UINTN mMaxRootTableLevel; STATIC UINTN mBitPerLevel; STATIC UINTN mTableEntryCount; @@ -590,6 +590,10 @@ RiscVMmuSetSatpMode ( UINTN Index; EFI_STATUS Status; =20 + if (SatpMode > PcdGet32 (PcdCpuRiscVMmuMaxSatpMode)) { + return EFI_DEVICE_ERROR; + } + switch (SatpMode) { case SATP_MODE_OFF: return EFI_SUCCESS; diff --git a/UefiCpuPkg/Library/BaseRiscVMmuLib/BaseRiscVMmuLib.inf b/UefiC= puPkg/Library/BaseRiscVMmuLib/BaseRiscVMmuLib.inf index 9b28a98cb346..51ebe1750e97 100644 --- a/UefiCpuPkg/Library/BaseRiscVMmuLib/BaseRiscVMmuLib.inf +++ b/UefiCpuPkg/Library/BaseRiscVMmuLib/BaseRiscVMmuLib.inf @@ -25,3 +25,6 @@ =20 [LibraryClasses] BaseLib + +[Pcd] + gUefiCpuPkgTokenSpaceGuid.PcdCpuRiscVMmuMaxSatpMode ## CONSUMES diff --git a/UefiCpuPkg/UefiCpuPkg.dec b/UefiCpuPkg/UefiCpuPkg.dec index 68473fc640e6..79191af18a05 100644 --- a/UefiCpuPkg/UefiCpuPkg.dec +++ b/UefiCpuPkg/UefiCpuPkg.dec @@ -396,6 +396,14 @@ # @Prompt Access to non-SMRAM memory is restricted to reserved, runtime = and ACPI NVS type after SmmReadyToLock. gUefiCpuPkgTokenSpaceGuid.PcdCpuSmmRestrictedMemoryAccess|TRUE|BOOLEAN|0= x3213210F =20 +[PcdsFixedAtBuild.RISCV64] + ## Indicate the maximum SATP mode allowed. + # 0 - Bare mode. + # 8 - 39bit mode. + # 9 - 48bit mode. + # 10 - 57bit mode. + gUefiCpuPkgTokenSpaceGuid.PcdCpuRiscVMmuMaxSatpMode|0|UINT32|0x60000021 + [PcdsDynamic, PcdsDynamicEx] ## Contains the pointer to a CPU S3 data buffer of structure ACPI_CPU_DA= TA. # @Prompt The pointer to a CPU S3 data buffer. --=20 2.25.1 -=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 (#109303): https://edk2.groups.io/g/devel/message/109303 Mute This Topic: https://groups.io/mt/101742937/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-