From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from NAM12-DM6-obe.outbound.protection.outlook.com (NAM12-DM6-obe.outbound.protection.outlook.com [40.107.243.74]) by mx.groups.io with SMTP id smtpd.web10.589.1626724925013812940 for ; Mon, 19 Jul 2021 13:02:05 -0700 Authentication-Results: mx.groups.io; dkim=pass header.i=@amd.com header.s=selector1 header.b=pi7jhQEh; spf=permerror, err=parse error for token &{10 18 %{i}._ip.%{h}._ehlo.%{d}._spf.vali.email}: invalid domain name (domain: amd.com, ip: 40.107.243.74, mailfrom: thomas.lendacky@amd.com) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=HRxd4oU8t61UmI/FUhEgxvTDD/avPofydty3f4WUGjI2NmmjEYYh6Umz1WfKLsbt7jfuOs3rGrN5UIReW3mcmYgwTz25i3Cua3HZDzGGdvEplUJ1u+1ZrFSdiDpHn0ZwMt4tBtaiCEwNoajGwvHH1aRdxn3htb7pL1oSHwONkcq6GAs/F5xuM0uWkd/duQtpZXcs3tuAufVdmZmrir52DAcSUPa2l8KH2dQ0lH+Za2/MnVa7wQixO/x/cCCnIqEm9+LJUU8uqHB0Q1T2g2KXEjoxIen/MyUuRE6recYmc7fgBzXtOaDZRBOoRts7cFGwhgH/bpzF8MCT/TtZQzbobQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=j15BW+z8VlNxGfSnkAxcc8gcPUuqC/Q2r7xVI6ofPLI=; b=KbLfrEeByy9eh7yLsO5PgIo/J52InHtyg2q568T5/CqyTbZ8eUTPn2newWgp5jUoF/zZw3fjZmqXs1qfjh2kfAxy+9h8WwpmuK8ZTqnopJFapHhsLG1IHRxVsxNiKy9qCG8qHSl7R+zFleuqcAmKRW9T055iQKVux+DV5gmbF4jczEwS912+wd4qo89ZBRa9pNnfK4vlau86pIfxSyLY/rhbF3E/pKSAmxkpr6NOv1OpMSsHnjU4DMICXePU2ZZ8jc0QQF7+ZCpDLHZli0gJ+YExOY6OFFJapbhSSF0UuPx1drftN5Bzp6rIFVGo/NoFw2HnxVIJ/yDlid3gDfeFFw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=amd.com; dmarc=pass action=none header.from=amd.com; dkim=pass header.d=amd.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=j15BW+z8VlNxGfSnkAxcc8gcPUuqC/Q2r7xVI6ofPLI=; b=pi7jhQEhYnhKaMzfGb1zwnp1COjr4ff1NovHn9WVhFLVLXLvNO2tgk9+afvpV1dmg2e4p4PoFn4oElE4Vl59WUawhgA+aZmDQcICRzrRW7QusfK9sulSEbQ3siVP99kRXzMXhfUF2BciZj23FJtfOAztYNb+GHUMNQeekMtjeus= Authentication-Results: intel.com; dkim=none (message not signed) header.d=none;intel.com; dmarc=none action=none header.from=amd.com; Received: from DM4PR12MB5229.namprd12.prod.outlook.com (2603:10b6:5:398::12) by DM8PR12MB5461.namprd12.prod.outlook.com (2603:10b6:8:3a::19) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4331.23; Mon, 19 Jul 2021 20:02:02 +0000 Received: from DM4PR12MB5229.namprd12.prod.outlook.com ([fe80::73:2581:970b:3208]) by DM4PR12MB5229.namprd12.prod.outlook.com ([fe80::73:2581:970b:3208%3]) with mapi id 15.20.4331.032; Mon, 19 Jul 2021 20:02:02 +0000 Subject: Re: [edk2-devel] [PATCH] UefiCpuPkg VTF0 X64: Build page tables using 1-GByte Page Granularity To: devel@edk2.groups.io, ardb@kernel.org, "Ni, Ray" , Brijesh Singh , Dov Murik , James Bottomley , Erdem Aktas Cc: "S, Ashraf Ali" , Ard Biesheuvel , "Justen, Jordan L" , "Agyeman, Prince" , "Kumar, Rahul1" , "De, Debkumar" , "Han, Harry" , "West, Catharine" , "V, Sangeetha" References: <0a9c6a87df650690fb97cf731cec8e11d4bcb9b1.1625228643.git.ashraf.ali.s@intel.com> From: "Lendacky, Thomas" Message-ID: <0a95bce4-e1dd-7c9a-019f-e49dc44148de@amd.com> Date: Mon, 19 Jul 2021 15:01:59 -0500 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101 Thunderbird/78.11.0 In-Reply-To: X-ClientProxiedBy: SN1PR12CA0097.namprd12.prod.outlook.com (2603:10b6:802:21::32) To DM4PR12MB5229.namprd12.prod.outlook.com (2603:10b6:5:398::12) Return-Path: thomas.lendacky@amd.com MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 Received: from [10.236.30.241] (165.204.77.1) by SN1PR12CA0097.namprd12.prod.outlook.com (2603:10b6:802:21::32) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4331.21 via Frontend Transport; Mon, 19 Jul 2021 20:02:00 +0000 X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: 089f3744-cd4a-4c4e-377e-08d94af012c2 X-MS-TrafficTypeDiagnostic: DM8PR12MB5461: X-MS-Exchange-Transport-Forked: True X-Microsoft-Antispam-PRVS: X-MS-Oob-TLC-OOBClassifiers: OLM:431; X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: g24rFI5SY+sIIjhj2+wQ25nfjCykibvzaDu55JX8qs8RQNePSc0d4YNeIibOMxOxTkskdHdCa2tN7oqUnMkyJ4OZifTSCAhJx0amDz+9D/TRXAoC+h3fCidt28k8+WS0bMohZ98pdy3EOEkoPG26kTSYRcbEDXDbdiuiL+B4VgNvXyIK9VKqlbz2fIFRykj2T9Ru0aIT/uE/j7AnkPcw4HMskY1XyFjIbgv5xgqfRbamNA/+JLEzk45KHkU2/wUlT5VYw+nMmL0hXJwEmIrJ3za7dSYJ/yy96nhSQ8aSv3GUuW64xULLzu8D7JRrl26K9L5gYCohjy352etUhvLIgAuLcbafx+fyJPYeWggNVHk8edUxFSw5FgOn/XbyZ3bad0Ljw2iV4pAy3SbbS0cyHiGowIBgaEii/kOHzh4+Ale4JTsjWtc6dF8zFPQVJqSBmmn4pDlua0lfRPBD/037XmNqHhWYZOeBzVw+Qyxztcfr+pylmFqS0DMMWNxm1n3Ji7wZnppBkiK2L7JxVaj41iSHEd5XLHQaWrwGYzgzNPZhRT9JSIC4iXl09UlbH3gBAaI8TssLt9+o+Wj+OWfnbeb8iJ8lZ/RMb2Agyz2/P443kR2EjWBnHC5V6/tG9RKkL/ssMSWuk9oQsAN2QeFAIcPSQgoOXJxFeckkcmYcL755Xdd4fhy7sJ/yfhDLWOWBQ6vST2nF/X3t2T2D+QR2YPb/JQeiq5i5s1mXWfC1Ho+N7+sqXOUsHRxjUuijxuwbSEWPQyJOR+j7nJM+acW/VBDRIVF8JixdCDCpvhly5As5ewGlf30fOK1/1wNNb+XdYJrF8dUk3nCNUNSMuaWwYojC8K0Ad4fHoY3wQSH/Mzs= X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DM4PR12MB5229.namprd12.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(366004)(53546011)(2906002)(54906003)(83380400001)(4326008)(508600001)(6486002)(186003)(8676002)(38100700002)(31686004)(66946007)(5660300002)(45080400002)(30864003)(8936002)(19627235002)(316002)(36756003)(7416002)(966005)(16576012)(66476007)(66556008)(86362001)(31696002)(2616005)(956004)(110136005)(26005)(43740500002)(45980500001);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: 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 =?utf-8?Q?9r/quG+k02+cOGlyRGzdJR8EUe6V04VWBbwnIC7?= X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-Network-Message-Id: 089f3744-cd4a-4c4e-377e-08d94af012c2 X-MS-Exchange-CrossTenant-AuthSource: DM4PR12MB5229.namprd12.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 19 Jul 2021 20:02:02.1550 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: QJZxd0vpPQA/CbxNXQ+gkR10hzZz6o/YSH5l/qn0I0JZNEIv2GA9/82SdWi9TM3jJkPuhfYPVGd2aHbpAs4VdA== X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM8PR12MB5461 Content-Type: text/plain; charset=utf-8 Content-Language: en-US Content-Transfer-Encoding: 7bit On 7/19/21 2:09 AM, Ard Biesheuvel via groups.io wrote: > On Mon, 19 Jul 2021 at 05:14, Ni, Ray wrote: >> >> This change generates the reset vector binary which only contains 1G page table. If a platform doesn't support 1G page table, this will cause system hang. >> >> To Ard and Jordan, >> Can you evaluate whether this change impacts OVMF? >> > > I don't have a clue, sorry, and I wouldn't know where to begin looking. > > Brijesh, Dov, James, Erdem: after Laszlo's sudden departure, I will be > needing help reviewing OVMF patches that are highly specific to > SEV/SNP or x86 in general. > > Please take a look. I think this is OK for Ovmf (others on the email, please double check me). Ovmf includes its own version of ResetVector.nasmb (in place of Vtf0.nasmb) which includes its own version of Ia32/PageTables64.asm and never does an include for X64/PageTables.asm. Thanks, Tom > > >> To Prince, >> Can you evaluate whether this change impacts SimicsOpenBoardPkg? >> >> Thanks, >> Ray >> >> -----Original Message----- >> From: S, Ashraf Ali >> Sent: Friday, July 2, 2021 8:25 PM >> To: devel@edk2.groups.io >> Cc: S, Ashraf Ali ; Ni, Ray ; Kumar, Rahul1 ; De, Debkumar ; Han, Harry ; West, Catharine ; V, Sangeetha >> Subject: [PATCH] UefiCpuPkg VTF0 X64: Build page tables using 1-GByte Page Granularity >> >> REF:https://nam11.safelinks.protection.outlook.com/?url=https%3A%2F%2Fbugzilla.tianocore.org%2Fshow_bug.cgi%3Fid%3D3473&data=04%7C01%7Cthomas.lendacky%40amd.com%7Ccf73602f1b224340970a08d94a84399d%7C3dd8961fe4884e608e11a82d994e183d%7C0%7C0%7C637622754052197154%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C1000&sdata=8gFLRyPEvbfwNN6BDimRe0spZfrNkMFdl6J9fYIe4RE%3D&reserved=0 >> >> X64 Reset Vector Code can access the memory range till 4GB using the Linear-Address Translation to a 2-MByte Page, when user wants to use more than 4G using 2M Page it will leads to use more number of Page table entries. using the 1-GByte Page table user can use more than 4G Memory by reducing the page table entries using 1-GByte Page, this patch attached can access memory range till 512GByte. >> Build Scrips for Reset Vector currently based on Python 2 which is already EOL, needs to modify the build script based on Python 3, update the Binary accordingly. >> >> Cc: Ray Ni >> Cc: Rahul Kumar >> Cc: Debkumar De >> Cc: Harry Han >> Cc: Catharine West >> Cc: Sangeetha V >> Signed-off-by: Ashraf Ali S >> --- >> .../Vtf0/Bin/ResetVector.ia32.port80.raw | Bin 516 -> 484 bytes >> .../ResetVector/Vtf0/Bin/ResetVector.ia32.raw | Bin 484 -> 468 bytes >> .../Vtf0/Bin/ResetVector.ia32.serial.raw | Bin 884 -> 868 bytes >> .../Vtf0/Bin/ResetVector.x64.port80.raw | Bin 28676 -> 12292 bytes >> .../ResetVector/Vtf0/Bin/ResetVector.x64.raw | Bin 28676 -> 12292 bytes >> .../Vtf0/Bin/ResetVector.x64.serial.raw | Bin 28676 -> 12292 bytes >> UefiCpuPkg/ResetVector/Vtf0/Build.py | 11 +-- >> .../ResetVector/Vtf0/Ia32/PageTables64.asm | 2 +- >> UefiCpuPkg/ResetVector/Vtf0/ReadMe.txt | 2 +- >> .../Vtf0/Tools/FixupForRawSection.py | 4 +- >> UefiCpuPkg/ResetVector/Vtf0/Vtf0.nasmb | 4 +- >> .../ResetVector/Vtf0/X64/1GPageTables.asm | 64 ++++++++++++++++++ >> .../X64/{PageTables.asm => 2MPageTables.asm} | 0 >> 13 files changed, 77 insertions(+), 10 deletions(-) create mode 100644 UefiCpuPkg/ResetVector/Vtf0/X64/1GPageTables.asm >> rename UefiCpuPkg/ResetVector/Vtf0/X64/{PageTables.asm => 2MPageTables.asm} (100%) >> >> diff --git a/UefiCpuPkg/ResetVector/Vtf0/Bin/ResetVector.ia32.port80.raw b/UefiCpuPkg/ResetVector/Vtf0/Bin/ResetVector.ia32.port80.raw >> index 2c6ff655ded2a5855ca8f4428d559a7727eb6983..79b23c047bdc6e552d77d5c9e9aeae21ff04d91d 100644 GIT binary patch delta 410 >> zcmZo+dBQ9-0SF8a=rRZ}FxWCMF#Invo+zYJ-&~=>PEYMB8#X*^*s&i7 >> zI*-2o*Lifq#%B#L{TUe;3~zVd>wJ;c9c#dNqsaO-vqOwyxZ<^$|Sx+*`qBE-KP >> zRw#MZ?IF_m@c;k+44fxR?lK-MVJf=bP$9%z%Jy2m^*||G=ZV*+3=ec3YyDQrw&BCG >> zhLV39>OTT4_yTke(6spG0}_@eiX$2-m<39tfuvB0QMW|nV~~MBTOFDYFc(>?{CR!5 >> z`2b5=qlIr&sV@Ka2ph)3jn)CK3=F06%+4CG<$;o&htnFZ!=g(0n4LMA4`}djk7m=n >> z@tSo9&>Du9B|zggh&^lgwVUBX-))iIZU6Ps_!-61b|^D2IPfbSNPCqzIiFFU^R?Xs >> zd4>r<#gi8>%0vL2z`!uOpJBgKz-zAkjsdS((>jm5W_tbeb@R)JfB*l#TmvLJAN+p? >> a3S}hl`Z9zAvN|lpjbXxs*L#qpCjbB+6v6TU >> >> delta 442 >> zcmX9)O-lk%6n)b;mb6f&NEbm;61Fgs7G?G=i3EW`h#0jTXjjt=xN`<_@e*RfKhRH@ >> zRthehQp> z2#|b@Yi!yt8wAow*Da-71;Y*UMJdG%{oGQ>0fSK3#P_%@6n3VVmKY~2sF%gXydlkT >> zz2J+}fsf;~_pRoa+J(fR`Ut;~>qat}3#muERkA!QyT~Xg^M>rg%^bM|McBYs`8V0A >> zcP&Nw(O;ogKlFmCBIg5bqJ >> zBhR=?>3OE6Mw4r>-vk>Al5t4>DR50tqp6HM5M^V1To7n?Y1=u`A{@A7c!=ymHGRlZ >> zJ}anuVpcRdDYzN0P#%MY-J^!^vR_OvBRp9GvF1f*Ah$29X~lhJI8j|qcKWL;$&ORN >> mb+{6FrzA&7=!a5r41gb~Ws5tejhbe+Ol`#xF!g`tAAbQ#M!vED >> >> diff --git a/UefiCpuPkg/ResetVector/Vtf0/Bin/ResetVector.ia32.raw b/UefiCpuPkg/ResetVector/Vtf0/Bin/ResetVector.ia32.raw >> index e34780a3a2c9b22bd10a1d5a405e344faaff94f3..ce7faa502b858e99908bcdb397b776258205e1d5 100644 GIT binary patch delta 421 zcmaFDe1%zP0uUG;&}9%{V6bIiVEA8TJW)uczPUn$q4ZSeVde;h(!;MgckBm(&ZDpY >> zbsl}`&d9)Ec)Rmn=Zm!NSOdlzMb@vG9g56a50n@+A7C%iRr%2sA^z>KLdmOc50S=) >> z|NsAI;5=D!m+@c;Q_=N?3L)lFw%6jV2TIvGPrN>5c%buG>$g&-l7BD10Br{v65o74 >> z!m|EEaYRD}vp|V7kQ6F0>XvAH3^E94n?v&f<|1pAKd)~$A7DvqwD658)#cwFVZ(U1 >> z(K^7DfuU5M*;(VYJW#Upa9X2vSX3z=volBY0S*4`(QKMGUbF51+Qaa&258)`-3%Z4 >> zZtt%9ub0NpD4w=MnSsH9U+F;FtJKNSjMDY5-6qI0OaQ6_1rZE@G=l)pF$@fo&qL_h >> zFuI>%zf-_#uKkVyuUXSNkGy7j{quG6%Zz{j|G(S> NFyZwchzJ{m0sv1?z^?!R >> >> literal 484 >> zcmX9*OG_g`5Uz2YXi!K{AwfI@4Wb8^4I;k92Z}6+5k#W02QLkK9j9Rq9_&L7ZDbtq >> zqIePigaaNjIzCSdixLS)RFt&2cybqA?5!~cU5~H6s_N>tZQD+`9S{Z>1OTb`GBa#G >> zt*_G(GaClinx^RkGo#yGe2LyNvnlO${H9mTj3XK78TZswjJl#0BPWZ(PsE3m63x5< >> zkjV2pUL={H-<6y`Ayi}y>qBYR=+mmu*E{2X*HV!;FJ=@olMU=1D> z>r@&PjmS*9G|11z5fTzEKTW^U3gc6Jd}Rz>i=xwezWi&|RKrFLb)7MgiLyt(A5Nap >> z{K@){_&;%jkXDHiVLej|v^%t)8c;mepB%?^+SRc((Td402KNZ-pIe~y>R7ebhG=Mi >> zG0>h98oCZ15CogOAHb`XKiHDrNJxngrv+CGHM`_x1(RWLh67mGTp&(0SUJnJ3Rcm& >> z65UvCM_?B@w(a-w1uqM*d0DnQmyjJzmTIyi$x?vuV|+aEM~V$8raq+> TrM$1pedcB-0FmP|Qr7> >> diff --git a/UefiCpuPkg/ResetVector/Vtf0/Bin/ResetVector.ia32.serial.raw b/UefiCpuPkg/ResetVector/Vtf0/Bin/ResetVector.ia32.serial.raw >> index 6dfa68eabb48a44bc50a0b7fe678f80b5cdadfd5..6503a988abdac06f9aa88f0a65f2525e12233b0a 100644 GIT binary patch delta 426 zcmeyu_JnPMtN<&s;Q?I+0R{$J1_p-zMaC0#Rrs4LR2WK6bslDpP$)h8+H+!>JIm{T >> zoku68$xYtMs2t$H#K2&9yYpV>i?r@o1I8OgcCVQoiY!|Xl$bUjU@tOI`Oy_2{_U_r >> z$*XP;k;aGr|Nm#;JXvy=@n8v4(e;K3A?8xfm(zi^wH_#C>pb!L_+($k?)of7kU&X% >> z^8pFV6U7k?70d!9(m+zE#Hd@M@iE8{piK_V2bhbjRsOub-F$#0t> z;YRBKR|bYsd1hyg*YZHg&ckVq)?rble9X=q%?C92w@0&S-gwQr186V9%Rm4A|KIhO >> z`OON2k{`Q%FmEt?H#v*RP`Ks4UK&56c-jtS1_lRyr2}cNv?s4)imrd{GC`hU0?-K) >> zzyM?f2mqbLz%cndgq{tf`x*8-1-$0n?-=l!Bdznu%Ljj6Grj)ylK211_kaHXf4Teb >> e|Nos2{y&2l1two#MwlBG;>Ivx!s|Uq(h~riBD@{| >> >> delta 425 >> zcmaFD_JwVNtbi=D;Q?I+0R{$J1_p-zMV1qFRYV&rRDc|Y(&L?nnIjZR54`jN@+Ky@ >> zv%mcP|NsBaqZ1S4CZ1G|2xMYlFudJ)uk%G(cdP;9jUu;~%s_<>MRu(RN~~Dff$Sn< >> zl^> z#_sxJMvz!Z5vv4H((*)cW> zv_=cxs8VzO?GZMNha0T}T!DVkWOmkgsRon;tLQwO)@U6TRVvKv%)zPw6y@I@&8B(d >> zB`c7*1Be-zUOt;_%H$+G>%U$aKcjfs4rQRn_>~T%y|SO&#T1?W(j2HroM8dT6;J?X >> zO+L>6re~jL*zXkZns2{jz-!L5&Lb~R`~e2e%P;?5ivNFk_0RwRFIW8q2IYhQ&nCRS >> WJpl|r#)O5qF-(~7`Upe>LIMEmI;Oe+ >> >> diff --git a/UefiCpuPkg/ResetVector/Vtf0/Bin/ResetVector.x64.port80.raw b/UefiCpuPkg/ResetVector/Vtf0/Bin/ResetVector.x64.port80.raw >> index 6c0bcc47ebff84830b59047790c70d96e9488296..835f8ea423437fdd8b33470ca07b5d09e27ef5bf 100644 GIT binary patch literal 12292 zcmeI&+i#oo0mkts4Go129J)fo=$7=rD1$;94uge`K!JtR2m?x1&W9N`jtlni4!~nY >> zMKVPp5;sh{V}AhViU1dVP$**DtP&R#RiF&CsHt!04FZH}-n3u#KY(6K@yE_L{>6E& >> z?8q}SGc)VwyIqx+a)EMza)EMza)EMza)EMza)EMza)EMza)EMz@AU%z;;$> z463KNvDDER)G|66gX*QDF{oqcXbfsO9gRWt(a{*xv2-*BwStbuppK)XF{tC|XbkEH >> zbTkI_LpmCRI)RSHpiZQtF{lb1jY0L((HPW8bTkIFl8(lpendxOP^;)@4C-V$8iP88 >> zj>e!?)6p2z03D4%ok~YzP(P-lF{sn%Xbfr%9gRW#gpS6beo9AUP=j> zXbfr{9gRV)r=u~b4RkaHbvhl5LH&%5#-PriqcNzBbTkHaCLN7I{hW@*pw6PBF{rcY >> zXbfr-9gRVqLq}s!=hD#_)Mh#wgW5tzV^G6%GzN7Z9gRVqPe)@=7tqld)P;032K5U% >> z8iTrsj>e!arlT>aU((SS)Ce7oL0v*eV^CY^XbkFCbTkHaDIJYLjndH=)Ma!u26Z_d >> zjX`arqcNx}=x7Y;N;(>Yx{8j*pngq9V^CvsGzN7w9gRU> zjY0i}j>e#FprbLUaXK1> z#-M&jM`KVs=x7Y;HaZ%Ex}A>3pzfffF{nG~XbkEuIvRtzn~uhy?xCYGsC(&X4C+2Q >> z8iTr@j>e#VPe)@=RXQ4jdVr3`pdO^7F{nS#(HPVp>1Yh> zXbkExIvRs|oQ}qz{zOM(P?K~t2K59TjX~AuXbh@OM`KWbrlT>aC+TPmszFC%P=BGL >> zF{r=N(HPX<=x7Y;?{qW<^%NbAK|M`JV^Gh~(U>K-6t5!tb>t;Rck;YuqrdUL=bx{4 >> znvGRkpIdW7{gY;6;2#&X?x}y+Y^>Qix9R=*-l@h0)!%E)^-c`c=Q<~}+Y6rEU0hmw >> zI)__(+OIBn@ui;P;Qg(STL-GU?%3S3Z*rv5J34vc&eVpda_r=$4PQJrvHJ75q1wS+ >> zW2>6~?G_(FIPTxIk9yv!Et~wnjg`IizRuvz)cacRcHY~P);l{tulKb-TX5}g`%rQI >> z*5dr)u)C%*aPhlOOt{h8UpuY1URfL7HPHNY>Ad2Xj!va_a%98To&8ferrNyd`W^L6 >> zmDeUN>6vSej9)3$2Ya_|>`#Q^Ki+!|MD~{`I >> zsSM3m-Z-$lvTpu$OQ{SO_f}LkSB6sD7_6+z!SO@g?tt3&7tinI;&HRu+wE4??d$Am >> zpR(Yu-qdH)``>)|&^gsg&+6*z`r_Xy#e=E`pDiBMui4Q)sW`hmyx{8W3Qg~u&h-5B >> zf$6=SYtB%+_?hCP8b>ZmPig6L> z7oY4dRt|T&i}x*EomKo%v&C0;Z0$Q^Yxj(;eS54m-(8rQIeL0|T`o{AP%cm|P%cm| >> pP%cm|P%cm|P%cm|@LgMA@vB4sf8V(M=BqR_v-s)J?;L$U`3*d;lz{*M >> >> literal 28676 >> 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 BvabLD >> >> diff --git a/UefiCpuPkg/ResetVector/Vtf0/Bin/ResetVector.x64.raw b/UefiCpuPkg/ResetVector/Vtf0/Bin/ResetVector.x64.raw >> index a78d5b407c8a106c221af127216d073cf8fdb99d..80c2de6ed5ef5e8dc5d45297fb83e7085bce0c01 100644 GIT binary patch literal 12292 zcmeI&OK)6-0mbp-n3#mun2> zQfUY>BOw;3%YJ|^F=dg1Od`mpk-8udwK7GZICs-*P>WEe*U2A=&w%bop5LAMkMDTS >> zYQ~yQr_)(I+wH2lR0~uKR0~uKR0~uKR0~uKR0~uKR0~uKR0~uKe6JVy3$LzpWd5+! >> z7*tPrFyGM_)B-vhgX*QDF{o4MXbfs09gRWt(a{*xsdO|3wTO> z9gRVqK}TayXVTFa)LC>i234b@F{pkz8iP8Uj>e#t(9sywIdn7zwUmy=pngC{V^BY& >> zqcNyubTkGvKu2Rx=hD#_)OmC?26a9ijX^D^qcNxp=x7Y;M|3m>wStbupa$t^3~D7E >> zjX|xVqcNz}bTkIFhK|OdE~KL|s2|hO7}Q!i8iQI#M`KVI(a{*xPv~e2>S8(?gSv!{ >> z#-N7iXbkF7IvRtzjE=^j*3;1#)CM{lgW5<(V^EjV(HPVfbTkHaB^`}HT}4M@P*>B@ >> z7}Pa%GzN7o9gRU> z2DO=v#-M&iM`KW1=x7Y;W;z;!`Z*nqL5> z4C)R#8iU$OM`KXi=x7Y;mvl4+btfH-LES}1V^DX~(HPV{bTkIFosPz!?xmwKs4+Sk >> zgSwB7#-Mi4(HPYIbTkI_D>@p3dVr3`pngq9V^9y$(HPWk=x7Y;Avzj^dYF#Jpngk7 >> zV^F`NqcN!8)6p1IosPz!9-*T#s7L8&4C*mD8iRVAj>e##prbLUC+TPm>M1%JgL;~d >> z#-N^|qcNyw>1YhGzRqo9gRV~NJnE(O*$HbdWnw4 >> zpkAhyetE0e-~8hB*BeEv >> zx%B$imTztRyVV?c`^xr1jZa$5<-2Ew{?Rx%*<7Q>f%Z)A*kEI(SUkPAytMZf$J_hn >> zcJ-7eJly_Q`$&Dy1M7PZjSm;SBjZ=?&cw#aoH{> z7JoGH&z|=u7L0%F=91n> zd;2HOFRzzOY}_-@`h5O8<&%v}rgwaJ%{Rs2$(&MeU32@6#!&5@u}wWQt>JB3q{fQg >> z&FhL4Wo*yXTf^ITG|uYXyl67(YVX|NchR9@;dHr&=605+D~4)=v$ek+Sy)>&`>v(b >> zHkP**)z;SrQy#3St;*4nW8Ln6=H4oQXIcll-P)={#YbPir~gbHe(z7mF0I#kmer?M >> zm;W{?A6!5BbouChO^@_R> zq<{X_zjFHx?Y(JRaoXM+w-pQP?GK6t#s7*|=hh$ZcIS4^Uu`O1!*u!69bLJ9bmhL$ >> zl^=|@XS-j1=lmz1rMj*bs1~Res1~Res1~Res1~Res1~Res22FXEHL-!vH6dcCq7qh >> Rzx!r&I&(88?>TXI=l^%>e!Ktx >> >> literal 28676 >> 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 >> SPx9m^JvI){eBb~48~hhX6Rzk0 >> >> diff --git a/UefiCpuPkg/ResetVector/Vtf0/Bin/ResetVector.x64.serial.raw b/UefiCpuPkg/ResetVector/Vtf0/Bin/ResetVector.x64.serial.raw >> index 61c71349a8a599916f3eeae8c5dee92efb56db71..9a24e8a752440462541a9589e514770692a838e4 100644 GIT binary patch literal 12292 zcmeI&No> zk6gUT%~}sUrlROY5)WdCrfM_{V;Um~qGHE);A=uhqn`DB5A&J-d^7L7|KId5(@cMV >> zfB(GUT21MZP9U8?I)QWo=>*aVq!UOdkWL_-KsteR0_g> z+^KgAG-@0j1C7eiG0>>-bPP0V0v!X5nn=e$qbAWY(5PlQ1{yV)j)6u^p<|#?2hlOm >> zsDtSkXw+0X1{!q;9RrQZ(lOAe7CHtRbtoMJjhaTsK%)+$W1vyf=@@9#;dBf%>Igap >> z8a0ECfkw5`G0>nsvs*R3;M$MsP >> zpiy(_7--ZyItCgwpN@e>9ZSbRqmH9vpi#%uG0><5bPP1=1Ud#9bs`-DjXH^rfkvH7 >> z$3UYN(lOAeQ|K6I)Twj~G^(ABfkt)EG0><*bPP0VF&zVqI*pEjMlGRZpixWd7--b# >> zbPP1=3_1oHwTzB|Mx9B=K%>9=oo0!*>nsv>Kr--8g(um1C8pWW1vyz(J|1d >> z6?65jXIx>fks_G$3UZ2(J|1d3+WhWR2Llsjk<`Afks_S$3UYlp<|#?m(nrN >> zsLSXWXw>C&3^eKrItCiGnvQ`+T}j74qpqT3pix)TG0>=M=oo0!wR8+LY7HF&jk=DG >> zfkt)HG0>>%=@@9#S~>> zItChb2OR^Ax|5E9M%_inK%;VW3^eL)ItChb4;=%Ix|fcDM%_opK%?%bW1vwF&@s@c >> z2k97S)I)R(H0ohG1{(DU9RrPel#YQ$_0TcUsK@9SXjGn#fkqYR7--bvbPP1=2|5NE >> zRitB}QBTq_(5R>A7--bfbPP1=89D|U^(-9&je3rbfkr(~$3WK|{57-jg^|IZGaEHB >> zxF@r*X{7$hq>;+YnU3TGW{dWH`l$6RE)`pf-@f!xp;{_VKl{a5R}{W36> zd8s&S-O$2M3tM}O^Hun`Je28fD-2aH$_@UO`Tote{7> z9Occ`(emc8Pi;I^N5fP9e5%TpaZ<PS+>skCB2^1(>{OC >> zi`_GJ54GiYuJ4*&`l^=vDq`|S`7fH@%a7~%EQ-@Ig~^rIl6kFjVPbhp^}`OAKUlZB >> zuwv|m>|GRKKkJExm4Cw&k(zC}vvnGn3nC`9> z*O{K>^Y>P__j-J;bjD?C3k$Pvcc0ZXR9e3J0;w=NvvNUob`r}&xzh4AYYT^DRyOx~ >> zLH6w%CZ4dZI$A;EoB|xx?>-oJ3H4qZ~n1X >> zYt`7jEp3?2X$|YYc-v+sdmGT!S}i+wTeZyJ)1LaDQ^&}GtEFRBQ^%~PjQsMhe(2l& >> z?v1-n$z_{n> z9erD?S0ArOlJh4&vN_pX~RIKYWYzE84VTb#>~d^Hx`zbLICd-FvI! >> zs=F(rqm{e&)@qf-za=-1C-1~S^5)jM=6ujKXLHw__q)o&weJpit@_>lua@4X6G$hJ >> uP9U8?I)QWo=>*aVq!UOd@PC*> >> literal 28676 >> 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 >> >> diff --git a/UefiCpuPkg/ResetVector/Vtf0/Build.py b/UefiCpuPkg/ResetVector/Vtf0/Build.py >> index 343c53b5ff..29f29ff0c2 100644 >> --- a/UefiCpuPkg/ResetVector/Vtf0/Build.py >> +++ b/UefiCpuPkg/ResetVector/Vtf0/Build.py >> @@ -1,7 +1,7 @@ >> ## @file >> # Automate the process of building the various reset vector types # -# Copyright (c) 2009, Intel Corporation. All rights reserved.
>> +# Copyright (c) 2009 - 2021, Intel Corporation. All rights >> +reserved.
>> # >> # SPDX-License-Identifier: BSD-2-Clause-Patent # @@ -32,16 +32,19 @@ for arch in ('ia32', 'x64'): >> '-o', output, >> 'Vtf0.nasmb', >> ) >> + print(f"Command : {' '.join(commandLine)}") >> ret = RunCommand(commandLine) >> - print '\tASM\t' + output >> - if ret != 0: sys.exit(ret) >> + if ret != 0: >> + print(f"something went wrong while executing the {commandLine[-1]}") >> + sys.exit() >> + print('\tASM\t' + output) >> >> commandLine = ( >> 'python', >> 'Tools/FixupForRawSection.py', >> output, >> ) >> - print '\tFIXUP\t' + output >> + print('\tFIXUP\t' + output) >> ret = RunCommand(commandLine) >> if ret != 0: sys.exit(ret) >> >> diff --git a/UefiCpuPkg/ResetVector/Vtf0/Ia32/PageTables64.asm b/UefiCpuPkg/ResetVector/Vtf0/Ia32/PageTables64.asm >> index 87a4125d4b..9cc6f56c17 100644 >> --- a/UefiCpuPkg/ResetVector/Vtf0/Ia32/PageTables64.asm >> +++ b/UefiCpuPkg/ResetVector/Vtf0/Ia32/PageTables64.asm >> @@ -15,7 +15,7 @@ BITS 32 >> SetCr3ForPageTables64: >> >> ; >> - ; These pages are built into the ROM image in X64/PageTables.asm >> + ; These pages are built into the ROM image in X64/1GPageTables.asm >> ; >> mov eax, ADDR_OF(TopLevelPageDirectory) >> mov cr3, eax >> diff --git a/UefiCpuPkg/ResetVector/Vtf0/ReadMe.txt b/UefiCpuPkg/ResetVector/Vtf0/ReadMe.txt >> index e6e5b54243..eb9dd24ee2 100644 >> --- a/UefiCpuPkg/ResetVector/Vtf0/ReadMe.txt >> +++ b/UefiCpuPkg/ResetVector/Vtf0/ReadMe.txt >> @@ -29,7 +29,7 @@ EBP/RBP - Pointer to the start of the Boot Firmware Volume === HOW TO BUILD VTF0 === >> >> Dependencies: >> -* Python 2.5~2.7 >> +* Python 3.0 or newer >> * Nasm 2.03 or newer >> >> To rebuild the VTF0 binaries: >> diff --git a/UefiCpuPkg/ResetVector/Vtf0/Tools/FixupForRawSection.py b/UefiCpuPkg/ResetVector/Vtf0/Tools/FixupForRawSection.py >> index c77438a0ce..de771eba22 100644 >> --- a/UefiCpuPkg/ResetVector/Vtf0/Tools/FixupForRawSection.py >> +++ b/UefiCpuPkg/ResetVector/Vtf0/Tools/FixupForRawSection.py >> @@ -1,7 +1,7 @@ >> ## @file >> # Apply fixup to VTF binary image for FFS Raw section # -# Copyright (c) 2008, Intel Corporation. All rights reserved.
>> +# Copyright (c) 2008 - 2021, Intel Corporation. All rights >> +reserved.
>> # >> # SPDX-License-Identifier: BSD-2-Clause-Patent # @@ -15,6 +15,6 @@ c = ((len(d) + 4 + 7) & ~7) - 4 if c > len(d): >> c -= len(d) >> f = open(sys.argv[1], 'wb') >> - f.write('\x90' * c) >> + f.write(b'\x90' * c) >> f.write(d) >> f.close() >> diff --git a/UefiCpuPkg/ResetVector/Vtf0/Vtf0.nasmb b/UefiCpuPkg/ResetVector/Vtf0/Vtf0.nasmb >> index 493738c79c..0625efc456 100644 >> --- a/UefiCpuPkg/ResetVector/Vtf0/Vtf0.nasmb >> +++ b/UefiCpuPkg/ResetVector/Vtf0/Vtf0.nasmb >> @@ -2,7 +2,7 @@ >> ; @file >> ; This file includes all other code files to assemble the reset vector code ; -; Copyright (c) 2008 - 2013, Intel Corporation. All rights reserved.
>> +; Copyright (c) 2008 - 2021, Intel Corporation. All rights >> +reserved.
>> ; SPDX-License-Identifier: BSD-2-Clause-Patent ; >> ;------------------------------------------------------------------------------ >> @@ -36,7 +36,7 @@ >> %include "PostCodes.inc" >> >> %ifdef ARCH_X64 >> -%include "X64/PageTables.asm" >> +%include "X64/1GPageTables.asm" >> %endif >> >> %ifdef DEBUG_PORT80 >> diff --git a/UefiCpuPkg/ResetVector/Vtf0/X64/1GPageTables.asm b/UefiCpuPkg/ResetVector/Vtf0/X64/1GPageTables.asm >> new file mode 100644 >> index 0000000000..8ae6c4c98c >> --- /dev/null >> +++ b/UefiCpuPkg/ResetVector/Vtf0/X64/1GPageTables.asm >> @@ -0,0 +1,64 @@ >> +;---------------------------------------------------------------------- >> +-------- >> +; @file >> +; Emits Page Tables for 1:1 mapping of the addresses 0 - 0x8000000000 >> +(512GB) ; ; Copyright (c) 2021, Intel Corporation. All rights >> +reserved.
; SPDX-License-Identifier: BSD-2-Clause-Patent ; >> +Linear-Address Translation to a 1-GByte Page ; >> +;---------------------------------------------------------------------- >> +-------- >> + >> +BITS 64 >> + >> +%define ALIGN_TOP_TO_4K_FOR_PAGING >> + >> +%define PAGE_PRESENT 0x01 >> +%define PAGE_READ_WRITE 0x02 >> +%define PAGE_USER_SUPERVISOR 0x04 >> +%define PAGE_WRITE_THROUGH 0x08 >> +%define PAGE_CACHE_DISABLE 0x010 >> +%define PAGE_ACCESSED 0x020 >> +%define PAGE_DIRTY 0x040 >> +%define PAGE_PAT 0x080 >> +%define PAGE_GLOBAL 0x0100 >> +%define PAGE_1G 0x80 >> + >> +%define PAGE_PDP_ATTR (PAGE_ACCESSED + \ >> + PAGE_READ_WRITE + \ >> + PAGE_PRESENT) >> + >> +%define PAGE_PDP_1G_ATTR (PAGE_ACCESSED + \ >> + PAGE_READ_WRITE + \ >> + PAGE_PRESENT + \ >> + PAGE_1G) >> + >> +%define PGTBLS_OFFSET(x) ((x) - TopLevelPageDirectory) %define >> +PGTBLS_ADDR(x) (ADDR_OF(TopLevelPageDirectory) + (x)) >> + >> +%define PDP(offset) (ADDR_OF(TopLevelPageDirectory) + (offset) + \ >> + PAGE_PDP_ATTR) >> + >> +%define PDP_1G(x) ((x << 30) + PAGE_PDP_1G_ATTR) >> + >> +ALIGN 16 >> + >> +TopLevelPageDirectory: >> + >> + ; >> + ; Top level Page Directory Pointers (1 * 512GB entry) >> + ; >> + DQ PDP(0x1000) >> + >> + >> + TIMES 0x1000-PGTBLS_OFFSET($) DB 0 >> + ; >> + ; Next level Page Directory Pointers (512 * 1GB entries => 512GB) >> + ; >> +%assign i 0 >> +%rep 512 >> + DQ PDP_1G(i) >> + %assign i i+1 >> +%endrep >> + >> + >> +EndOfPageTables: >> diff --git a/UefiCpuPkg/ResetVector/Vtf0/X64/PageTables.asm b/UefiCpuPkg/ResetVector/Vtf0/X64/2MPageTables.asm >> similarity index 100% >> rename from UefiCpuPkg/ResetVector/Vtf0/X64/PageTables.asm >> rename to UefiCpuPkg/ResetVector/Vtf0/X64/2MPageTables.asm >> -- >> 2.32.0.windows.1 >> > > > > >