From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mga07.intel.com (mga07.intel.com [134.134.136.100]) by mx.groups.io with SMTP id smtpd.web08.31237.1649045654812520599 for ; Sun, 03 Apr 2022 21:14:16 -0700 Authentication-Results: mx.groups.io; dkim=fail reason="unable to parse pub key" header.i=@intel.com header.s=intel header.b=h14vjiMO; spf=pass (domain: intel.com, ip: 134.134.136.100, mailfrom: ted.kuo@intel.com) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1649045654; x=1680581654; h=from:to:cc:subject:date:message-id; bh=7CNx1vmO7y8h5Ru29PTKR1uE5LXq07BM8wWWa+sVW9U=; b=h14vjiMOKKgBddK6ouu15pYbOimuzrbTCP7S/AO5kevHZvZUoDgG0L87 FCRhbYOsTod4dZaNO2sCaZIyj3t/niYmQCrK8PA/TCxUntT6iyTvGNXhJ p+vfoh9qFRijx+EkXBLxNs8TtW37GkEgPM9pifiiF5QRA4g32lP7n6j2e IRs6t6kb1WEokOcJ3Ip7M53hdVbPJ2se+OPIxWuNGBfJ0bR1DG2MYzq10 qFUkjjQir6d5qNKm4upOV3/HbyRvT1d4SAM+CdYsa8HVTxeZkaNzJRWBi JKSr8IavvtK47+0CqV+qVhC4a9heRX0QwDJi4mRKW0EXGBZcLg2pkdDA1 w==; X-IronPort-AV: E=McAfee;i="6200,9189,10306"; a="323608959" X-IronPort-AV: E=Sophos;i="5.90,233,1643702400"; d="scan'208";a="323608959" Received: from fmsmga001.fm.intel.com ([10.253.24.23]) by orsmga105.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 03 Apr 2022 21:14:13 -0700 X-IronPort-AV: E=Sophos;i="5.90,233,1643702400"; d="scan'208";a="696444530" Received: from tedkuo1-win10.gar.corp.intel.com ([10.5.215.13]) by fmsmga001-auth.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 03 Apr 2022 21:14:11 -0700 From: "Kuo, Ted" To: devel@edk2.groups.io Cc: Chasel Chiu , Nate DeSimone , Star Zeng , Ashraf Ali S Subject: [edk2-devel][PATCH 0/5] To support PEI 64bit in IntelFsp2Pkg Date: Mon, 4 Apr 2022 12:13:55 +0800 Message-Id: X-Mailer: git-send-email 2.16.2.windows.1 REF:https://bugzilla.tianocore.org/show_bug.cgi?id=3893 Currently PEI drivers/libraries only support 32bit in IntelFsp2Pkg. The patches below are needed to support these drivers/libraries in 64bit. Cc: Chasel Chiu Cc: Nate DeSimone Cc: Star Zeng Cc: Ashraf Ali S Signed-off-by: Ted Kuo Ted Kuo (5): IntelFsp2Pkg: X64 compatible changes to support PEI in 64bit IntelFsp2Pkg: Add FSPx_ARCH2_UPD support for X64 IntelFsp2Pkg: Update FSP_GLOBAL_DATA and FSP_PLAT_DATA for X64 IntelFsp2Pkg: FspSecCore support for X64 IntelFsp2Pkg: SecFspSecPlatformLibNull support for X64 IntelFsp2Pkg/FspNotifyPhase/FspNotifyPhasePeim.c | 1 + IntelFsp2Pkg/FspSecCore/Fsp22SecCoreS.inf | 8 +- IntelFsp2Pkg/FspSecCore/FspSecCoreM.inf | 9 +- IntelFsp2Pkg/FspSecCore/FspSecCoreS.inf | 8 +- IntelFsp2Pkg/FspSecCore/FspSecCoreT.inf | 10 +- .../FspSecCore/Ia32/FspApiEntryCommon.nasm | 4 +- IntelFsp2Pkg/FspSecCore/Ia32/FspApiEntryM.nasm | 29 ++ IntelFsp2Pkg/FspSecCore/Ia32/FspApiEntryT.nasm | 93 +++- IntelFsp2Pkg/FspSecCore/Ia32/ReadEsp.nasm | 8 +- IntelFsp2Pkg/FspSecCore/Ia32/Stack.nasm | 10 +- IntelFsp2Pkg/FspSecCore/SecFsp.c | 10 +- IntelFsp2Pkg/FspSecCore/SecFsp.h | 2 +- IntelFsp2Pkg/FspSecCore/SecFspApiChk.c | 8 +- IntelFsp2Pkg/FspSecCore/SecMain.c | 8 +- IntelFsp2Pkg/FspSecCore/SecMain.h | 10 +- IntelFsp2Pkg/FspSecCore/X64/Fsp22ApiEntryS.nasm | 103 +++++ IntelFsp2Pkg/FspSecCore/X64/FspApiEntryCommon.nasm | 76 ++++ IntelFsp2Pkg/FspSecCore/X64/FspApiEntryM.nasm | 263 +++++++++++ IntelFsp2Pkg/FspSecCore/X64/FspApiEntryS.nasm | 67 +++ IntelFsp2Pkg/FspSecCore/X64/FspApiEntryT.nasm | 492 +++++++++++++++++++++ IntelFsp2Pkg/FspSecCore/X64/FspHelper.nasm | 34 ++ IntelFsp2Pkg/FspSecCore/X64/MicrocodeLoadNasm.inc | 11 + IntelFsp2Pkg/FspSecCore/X64/ReadRsp.nasm | 22 + IntelFsp2Pkg/FspSecCore/X64/Stack.nasm | 73 +++ IntelFsp2Pkg/Include/FspEas/FspApi.h | 128 +++++- IntelFsp2Pkg/Include/FspGlobalData.h | 51 ++- IntelFsp2Pkg/Include/Guid/FspHeaderFile.h | 14 +- IntelFsp2Pkg/Include/SaveRestoreSseAvxNasm.inc | 284 ++++++++++++ IntelFsp2Pkg/IntelFsp2Pkg.dsc | 2 +- .../Library/BaseFspCommonLib/FspCommonLib.c | 1 + .../Library/BaseFspSwitchStackLib/X64/Stack.nasm | 5 +- .../SecFspSecPlatformLibNull/Ia32/Flat32.nasm | 2 +- .../SecFspSecPlatformLibNull.inf | 6 +- .../SecFspSecPlatformLibNull/X64/Long64.nasm | 31 ++ .../SecFspSecPlatformLibNull/X64/SecCarInit.nasm | 40 ++ IntelFsp2Pkg/Tools/GenCfgOpt.py | 2 +- 36 files changed, 1850 insertions(+), 75 deletions(-) create mode 100644 IntelFsp2Pkg/FspSecCore/X64/Fsp22ApiEntryS.nasm create mode 100644 IntelFsp2Pkg/FspSecCore/X64/FspApiEntryCommon.nasm create mode 100644 IntelFsp2Pkg/FspSecCore/X64/FspApiEntryM.nasm create mode 100644 IntelFsp2Pkg/FspSecCore/X64/FspApiEntryS.nasm create mode 100644 IntelFsp2Pkg/FspSecCore/X64/FspApiEntryT.nasm create mode 100644 IntelFsp2Pkg/FspSecCore/X64/FspHelper.nasm create mode 100644 IntelFsp2Pkg/FspSecCore/X64/MicrocodeLoadNasm.inc create mode 100644 IntelFsp2Pkg/FspSecCore/X64/ReadRsp.nasm create mode 100644 IntelFsp2Pkg/FspSecCore/X64/Stack.nasm create mode 100644 IntelFsp2Pkg/Include/SaveRestoreSseAvxNasm.inc create mode 100644 IntelFsp2Pkg/Library/SecFspSecPlatformLibNull/X64/Long64.nasm create mode 100644 IntelFsp2Pkg/Library/SecFspSecPlatformLibNull/X64/SecCarInit.nasm -- 2.16.2.windows.1