IntelFsp2Pkg: Align FSP global data pointer for X64 build

When it used 32 bits for set FSP global data pointer under X64 build,
it should get FSP global data pointer with 32 bits data under X64 build.

Signed-off-by: Hongbin1 Zhang <hongbin1.zhang@intel.com>
Cc: Chasel Chiu <chasel.chiu@intel.com>
Cc: Nate DeSimone <nathaniel.l.desimone@intel.com>
Cc: Duggapu Chinni B <chinni.b.duggapu@intel.com>
Cc: Star Zeng <star.zeng@intel.com>
Cc: Ted Kuo <ted.kuo@intel.com>
Cc: Ashraf Ali S <ashraf.ali.s@intel.com>
This commit is contained in:
Hongbin1 Zhang 2024-07-26 10:16:42 +08:00 committed by mergify[bot]
parent a0ac7cf67a
commit 1fd2f9ec8f
2 changed files with 9 additions and 9 deletions

View File

@ -31,7 +31,7 @@ FspApiCallingCheck (
//
// NotifyPhase check
//
if ((FspData == NULL) || ((UINTN)FspData == MAX_ADDRESS) || ((UINTN)FspData == MAX_UINT32)) {
if ((FspData == NULL) || ((UINT32)(UINTN)FspData == MAX_UINT32)) {
Status = EFI_UNSUPPORTED;
} else {
if (FspData->Signature != FSP_GLOBAL_DATA_SIGNATURE) {
@ -42,7 +42,7 @@ FspApiCallingCheck (
//
// FspMemoryInit check
//
if (((UINTN)FspData != MAX_ADDRESS) && ((UINTN)FspData != MAX_UINT32)) {
if ((UINT32)(UINTN)FspData != MAX_UINT32) {
Status = EFI_UNSUPPORTED;
} else if (ApiParam == NULL) {
Status = EFI_SUCCESS;
@ -53,7 +53,7 @@ FspApiCallingCheck (
//
// TempRamExit check
//
if ((FspData == NULL) || ((UINTN)FspData == MAX_ADDRESS) || ((UINTN)FspData == MAX_UINT32)) {
if ((FspData == NULL) || ((UINT32)(UINTN)FspData == MAX_UINT32)) {
Status = EFI_UNSUPPORTED;
} else {
if (FspData->Signature != FSP_GLOBAL_DATA_SIGNATURE) {
@ -64,7 +64,7 @@ FspApiCallingCheck (
//
// FspSiliconInit check
//
if ((FspData == NULL) || ((UINTN)FspData == MAX_ADDRESS) || ((UINTN)FspData == MAX_UINT32)) {
if ((FspData == NULL) || ((UINT32)(UINTN)FspData == MAX_UINT32)) {
Status = EFI_UNSUPPORTED;
} else {
if (FspData->Signature != FSP_GLOBAL_DATA_SIGNATURE) {
@ -83,14 +83,14 @@ FspApiCallingCheck (
}
}
} else if (ApiIdx == FspMultiPhaseMemInitApiIndex) {
if ((FspData == NULL) || ((UINTN)FspData == MAX_ADDRESS) || ((UINTN)FspData == MAX_UINT32)) {
if ((FspData == NULL) || ((UINT32)(UINTN)FspData == MAX_UINT32)) {
Status = EFI_UNSUPPORTED;
}
} else if (ApiIdx == FspSmmInitApiIndex) {
//
// FspSmmInitApiIndex check
//
if ((FspData == NULL) || ((UINTN)FspData == MAX_ADDRESS) || ((UINTN)FspData == MAX_UINT32)) {
if ((FspData == NULL) || ((UINT32)(UINTN)FspData == MAX_UINT32)) {
Status = EFI_UNSUPPORTED;
} else {
if (FspData->Signature != FSP_GLOBAL_DATA_SIGNATURE) {

View File

@ -89,10 +89,10 @@ GetFspGlobalDataPointer (
VOID
)
{
FSP_GLOBAL_DATA *FspData;
UINT32 FspDataAddress;
FspData = *(FSP_GLOBAL_DATA **)(UINTN)PcdGet32 (PcdGlobalDataPointerAddress);
return FspData;
FspDataAddress = *(UINT32 *)(UINTN)PcdGet32 (PcdGlobalDataPointerAddress);
return (FSP_GLOBAL_DATA *)(UINTN)FspDataAddress;
}
/**