From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail02.groups.io (mail02.groups.io [66.175.222.108]) by spool.mail.gandi.net (Postfix) with ESMTPS id 60493740037 for ; Thu, 30 Nov 2023 17:35:17 +0000 (UTC) DKIM-Signature: a=rsa-sha256; bh=p36CeJq9IpL7hm8hDeYvJDUX9VI/E9S9HtRk/OXpikE=; 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=1701365716; v=1; b=XOfvE6u2kuauRC8VQLAF0om2vuPki2x3qm0sedDw69PisW8mrpX5N6uGsbEyMwDZ0k1f8cYn rGnu7kBBMMk2hRavXHimoNtPyE1lu0RRRojw1DiFgGq43SOQfHD4waE6dc1dWFseHy+GmsDcIeG aqqPpB9k9iiQCbBEy/gKFM+0= X-Received: by 127.0.0.2 with SMTP id f9uhYY7687511x5apF3YHr7W; Thu, 30 Nov 2023 09:35:16 -0800 X-Received: from mgamail.intel.com (mgamail.intel.com [192.198.163.10]) by mx.groups.io with SMTP id smtpd.web10.78613.1701365715467511723 for ; Thu, 30 Nov 2023 09:35:15 -0800 X-IronPort-AV: E=McAfee;i="6600,9927,10910"; a="360325" X-IronPort-AV: E=Sophos;i="6.04,239,1695711600"; d="scan'208";a="360325" X-Received: from orsmga005.jf.intel.com ([10.7.209.41]) by fmvoesa104.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 30 Nov 2023 09:35:10 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=McAfee;i="6600,9927,10910"; a="942783014" X-IronPort-AV: E=Sophos;i="6.04,239,1695711600"; d="scan'208";a="942783014" X-Received: from ashrafal-mobl4.gar.corp.intel.com ([10.215.121.211]) by orsmga005-auth.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 30 Nov 2023 09:35:07 -0800 From: "Ashraf Ali S" To: devel@edk2.groups.io Cc: Ashraf Ali S , Rahul Kumar , Ray Ni , Catharine West , V Sangeetha Subject: [edk2-devel] [PATCH] UefiCpuPkg/ResetVector: Option for 1G Page Table Size increase Date: Thu, 30 Nov 2023 23:04:52 +0530 Message-Id: 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,ashraf.ali.s@intel.com List-Unsubscribe-Post: List-Unsubscribe=One-Click List-Unsubscribe: X-Gm-Message-State: Q2TLdHsTZIOe14JGqB0FddOIx7686176AA= Content-Transfer-Encoding: 8bit X-GND-Status: LEGIT Authentication-Results: spool.mail.gandi.net; dkim=pass header.d=groups.io header.s=20140610 header.b=XOfvE6u2; dmarc=fail reason="SPF not aligned (relaxed), DKIM not aligned (relaxed)" header.from=intel.com (policy=none); spf=pass (spool.mail.gandi.net: domain of bounce@groups.io designates 66.175.222.108 as permitted sender) smtp.mailfrom=bounce@groups.io Currently 1G Page table is restricted 512GB. this patch can help to increase the page table size based on the input. default will be 512GB build option PAGE_TABLE_1G_SIZE is used to increase the page table size Cc: Rahul Kumar Cc: Ray Ni Cc: Catharine West Cc: V Sangeetha Signed-off-by: Ashraf Ali S --- UefiCpuPkg/ResetVector/Vtf0/ReadMe.txt | 4 ++-- UefiCpuPkg/ResetVector/Vtf0/Vtf0.inf | 2 ++ UefiCpuPkg/ResetVector/Vtf0/X64/PageTables.asm | 13 +++++++++++-- 3 files changed, 15 insertions(+), 4 deletions(-) diff --git a/UefiCpuPkg/ResetVector/Vtf0/ReadMe.txt b/UefiCpuPkg/ResetVector/Vtf0/ReadMe.txt index 4fcb15c3b1..4d153fc1a7 100644 --- a/UefiCpuPkg/ResetVector/Vtf0/ReadMe.txt +++ b/UefiCpuPkg/ResetVector/Vtf0/ReadMe.txt @@ -1,10 +1,10 @@ === HOW TO USE VTF0 === Add this line to your DSC [Components.IA32] or [Components.X64] section: - UefiCpuPkg/ResetVector/Vtf0/ResetVector.inf + UefiCpuPkg/ResetVector/Vtf0/Vtf0.inf Add this line to your FDF FV section: - INF RuleOverride=RESET_VECTOR UefiCpuPkg/ResetVector/Vtf0/ResetVector.inf + INF RuleOverride=RESET_VECTOR UefiCpuPkg/ResetVector/Vtf0/Vtf0.inf In your FDF FFS file rules sections add: [Rule.Common.SEC.RESET_VECTOR] diff --git a/UefiCpuPkg/ResetVector/Vtf0/Vtf0.inf b/UefiCpuPkg/ResetVector/Vtf0/Vtf0.inf index 6b406163db..96106a4b11 100644 --- a/UefiCpuPkg/ResetVector/Vtf0/Vtf0.inf +++ b/UefiCpuPkg/ResetVector/Vtf0/Vtf0.inf @@ -53,5 +53,7 @@ # -DARCH_X64, -DARCH_IA32 # * for using 1G page table: # -DPAGE_TABLE_1G +# * for incresing the 1G page table size (Size in GBs): +# -DPAGE_TABLE_1G_SIZE=1024 # * for different debug channels: # -DDEBUG_SERIAL, -DDEBUG_PORT80, or not specify any debug channel diff --git a/UefiCpuPkg/ResetVector/Vtf0/X64/PageTables.asm b/UefiCpuPkg/ResetVector/Vtf0/X64/PageTables.asm index 7960b141be..b080dc5296 100644 --- a/UefiCpuPkg/ResetVector/Vtf0/X64/PageTables.asm +++ b/UefiCpuPkg/ResetVector/Vtf0/X64/PageTables.asm @@ -1,7 +1,7 @@ ;------------------------------------------------------------------------------ ; @file ; Emits Page Tables for 1:1 mapping. -; If using 1G page table, map addresses 0 - 0x8000000000 (512GB), +; If using 1G page table, map addresses 0 - 0x8000000000 (512GB, Size can be increse via PAGE_TABLE_1G_SIZE), ; else, map addresses 0 - 0x100000000 (4GB) ; ; Copyright (c) 2021 - 2023, Intel Corporation. All rights reserved.
@@ -39,6 +39,15 @@ BITS 64 %define PAGE_PDPTE_1GB(x) ((x << 30) + PAGE_BLE_ATTR) %define PAGE_PDE_2MB(x) ((x << 21) + PAGE_BLE_ATTR) +%ifdef PAGE_TABLE_1G_SIZE + %define PAGE_PDPTE_1GB_SIZE PAGE_TABLE_1G_SIZE +%else + ; + ; Default 512GB of 1G Page Table + ; + %define PAGE_PDPTE_1GB_SIZE 512 +%endif + ALIGN 16 %ifdef PAGE_TABLE_1G @@ -47,7 +56,7 @@ Pdp: ; Page-directory pointer table (512 * 1GB entries => 512GB) ; %assign i 0 - %rep 512 + %rep PAGE_PDPTE_1GB_SIZE DQ PAGE_PDPTE_1GB(i) %assign i i+1 %endrep -- 2.39.1.windows.1 -=-=-=-=-=-=-=-=-=-=-=- Groups.io Links: You receive all messages sent to this group. View/Reply Online (#111910): https://edk2.groups.io/g/devel/message/111910 Mute This Topic: https://groups.io/mt/102898657/7686176 Group Owner: devel+owner@edk2.groups.io Unsubscribe: https://edk2.groups.io/g/devel/unsub [rebecca@openfw.io] -=-=-=-=-=-=-=-=-=-=-=-