public inbox for devel@edk2.groups.io
 help / color / mirror / Atom feed
* [edk2-devel][PATCH v3 0/8] Support PEI 64bit in IntelFsp2Pkg and IntelFsp2WrapperPkg
@ 2022-04-06 17:02 Kuo, Ted
  2022-04-06 17:02 ` [edk2-devel][PATCH v3 1/8] IntelFsp2Pkg: X64 compatible changes to support PEI in 64bit Kuo, Ted
                   ` (7 more replies)
  0 siblings, 8 replies; 14+ messages in thread
From: Kuo, Ted @ 2022-04-06 17:02 UTC (permalink / raw)
  To: devel

REF:https://bugzilla.tianocore.org/show_bug.cgi?id=3893

Currently PEI drivers/libraries only support 32bit in IntelFsp2Pkg and
IntelFsp2WrapperPkg. The patches below are needed to support these
drivers/libraries in 64bit.

V2 changes:
1.Change FSPM_UPD_COMMON2 to FSPM_UPD_COMMON_FSP24 in FspApiEntryM.nasm.
2.Add FSPx_UPD_COMMON_FSP24 in FspApi.h.
3.Add 3 additional patches for supporting X64 in IntelFsp2WrapperPkg.

V3 changes:
1.Update FSPT_ARCH2_UPD and add FSPT_CORE_UPD back.
2.Use 0xFFFFFFFF instead of MAX_ADDRESS to reflect the default of FspData.
3.Remove EnableMultiPhaseMemoryInit from FSPM_ARCH2_UPD.
4.Bump GenCfgOpt version to 0.57.

Ted Kuo (8):
  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
  IntelFsp2WrapperPkg: Adopt FSPM_UPD_COMMON_FSP24 for X64
  IntelFsp2WrapperPkg: BaseFspWrapperApiLib support for X64
  IntelFsp2WrapperPkg: SecFspWrapperPlatformSecLibSample 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     |  28 ++
 IntelFsp2Pkg/FspSecCore/Ia32/FspApiEntryT.nasm     |  96 +++-
 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      | 262 +++++++++++
 IntelFsp2Pkg/FspSecCore/X64/FspApiEntryS.nasm      |  67 +++
 IntelFsp2Pkg/FspSecCore/X64/FspApiEntryT.nasm      | 495 +++++++++++++++++++++
 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               | 145 +++++-
 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                    |   4 +-
 .../FspmWrapperPeim/FspmWrapperPeim.c              |  25 +-
 .../BaseFspWrapperApiLib/FspWrapperApiLib.c        |  42 +-
 .../BaseFspWrapperApiLib/IA32/DispatchExecute.c    |  21 +
 .../BaseFspWrapperApiLib/X64/DispatchExecute.c     |  45 +-
 .../{Ia32 => }/Fsp.h                               |   0
 .../Ia32/Stack.nasm                                |   6 +-
 .../SecFspWrapperPlatformSecLibSample.inf          |   7 +-
 .../SecRamInitData.c                               |  22 +-
 .../X64/PeiCoreEntry.nasm                          | 149 +++++++
 .../X64/SecEntry.nasm                              | 171 +++++++
 .../X64/Stack.nasm                                 |  73 +++
 47 files changed, 2404 insertions(+), 105 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
 rename IntelFsp2WrapperPkg/Library/SecFspWrapperPlatformSecLibSample/{Ia32 => }/Fsp.h (100%)
 create mode 100644 IntelFsp2WrapperPkg/Library/SecFspWrapperPlatformSecLibSample/X64/PeiCoreEntry.nasm
 create mode 100644 IntelFsp2WrapperPkg/Library/SecFspWrapperPlatformSecLibSample/X64/SecEntry.nasm
 create mode 100644 IntelFsp2WrapperPkg/Library/SecFspWrapperPlatformSecLibSample/X64/Stack.nasm

-- 
2.16.2.windows.1


^ permalink raw reply	[flat|nested] 14+ messages in thread

end of thread, other threads:[~2022-04-07  1:25 UTC | newest]

Thread overview: 14+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2022-04-06 17:02 [edk2-devel][PATCH v3 0/8] Support PEI 64bit in IntelFsp2Pkg and IntelFsp2WrapperPkg Kuo, Ted
2022-04-06 17:02 ` [edk2-devel][PATCH v3 1/8] IntelFsp2Pkg: X64 compatible changes to support PEI in 64bit Kuo, Ted
2022-04-06 23:57   ` Ni, Ray
2022-04-07  0:05     ` Andrew Fish
2022-04-07  0:08       ` Ni, Ray
2022-04-07  1:25       ` Kuo, Ted
2022-04-07  1:10     ` Kuo, Ted
2022-04-06 17:02 ` [edk2-devel][PATCH v3 2/8] IntelFsp2Pkg: Add FSPx_ARCH2_UPD support for X64 Kuo, Ted
2022-04-06 17:02 ` [edk2-devel][PATCH v3 3/8] IntelFsp2Pkg: Update FSP_GLOBAL_DATA and FSP_PLAT_DATA " Kuo, Ted
2022-04-06 17:02 ` [edk2-devel][PATCH v3 4/8] IntelFsp2Pkg: FspSecCore support " Kuo, Ted
2022-04-06 17:02 ` [edk2-devel][PATCH v3 5/8] IntelFsp2Pkg: SecFspSecPlatformLibNull " Kuo, Ted
2022-04-06 17:02 ` [edk2-devel][PATCH v3 6/8] IntelFsp2WrapperPkg: Adopt FSPM_UPD_COMMON_FSP24 " Kuo, Ted
2022-04-06 17:02 ` [edk2-devel][PATCH v3 7/8] IntelFsp2WrapperPkg: BaseFspWrapperApiLib support " Kuo, Ted
2022-04-06 17:02 ` [edk2-devel][PATCH v3 8/8] IntelFsp2WrapperPkg: SecFspWrapperPlatformSecLibSample " Kuo, Ted

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox