IntelFrameworkModulePkg BdsDxe: Use PcdSet##S to replace PcdSet##

PcdSet## has no error status returned, then the caller has no idea about whether the set operation is successful or not.
PcdSet##S were added to return error status and PcdSet## APIs were put in ifndef DISABLE_NEW_DEPRECATED_INTERFACES condition.
To adopt PcdSet##S and further code development with DISABLE_NEW_DEPRECATED_INTERFACES defined, we need to Replace PcdSet## usage with PcdSet##S.

Normally, DynamicDefault PCD set is expected to be success, but DynamicHii PCD set failure is a legal case.
So for DynamicDefault, we add assert when set failure. For DynamicHii, we add logic to handle it.

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Eric Dong <eric.dong@intel.com>
Reviewed-by: Star Zeng <star.zeng@intel.com>

git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@18605 6f19259b-4bc3-4df7-8a09-765794883524
This commit is contained in:
Eric Dong
2015-10-15 00:57:45 +00:00
committed by ydong10
parent 291422d78b
commit 84db9040cc
3 changed files with 21 additions and 10 deletions

View File

@ -1370,9 +1370,11 @@ Var_UpdateConMode (
Status = gST->ConOut->QueryMode (gST->ConOut, Mode, &(ModeInfo.Column), &(ModeInfo.Row)); Status = gST->ConOut->QueryMode (gST->ConOut, Mode, &(ModeInfo.Column), &(ModeInfo.Row));
if (!EFI_ERROR(Status)) { if (!EFI_ERROR(Status)) {
PcdSet32 (PcdSetupConOutColumn, (UINT32) ModeInfo.Column); Status = PcdSet32S (PcdSetupConOutColumn, (UINT32) ModeInfo.Column);
PcdSet32 (PcdSetupConOutRow, (UINT32) ModeInfo.Row); if (!EFI_ERROR (Status)){
Status = PcdSet32S (PcdSetupConOutRow, (UINT32) ModeInfo.Row);
}
} }
return EFI_SUCCESS; return Status;
} }

View File

@ -1395,8 +1395,10 @@ BdsSetConsoleMode (
// //
// Update text mode PCD. // Update text mode PCD.
// //
PcdSet32 (PcdConOutColumn, mSetupTextModeColumn); Status = PcdSet32S (PcdConOutColumn, mSetupTextModeColumn);
PcdSet32 (PcdConOutRow, mSetupTextModeRow); ASSERT_EFI_ERROR (Status);
Status = PcdSet32S (PcdConOutRow, mSetupTextModeRow);
ASSERT_EFI_ERROR (Status);
FreePool (Info); FreePool (Info);
return EFI_SUCCESS; return EFI_SUCCESS;
} }
@ -1437,10 +1439,14 @@ BdsSetConsoleMode (
// Set PCD to Inform GraphicsConsole to change video resolution. // Set PCD to Inform GraphicsConsole to change video resolution.
// Set PCD to Inform Consplitter to change text mode. // Set PCD to Inform Consplitter to change text mode.
// //
PcdSet32 (PcdVideoHorizontalResolution, NewHorizontalResolution); Status = PcdSet32S (PcdVideoHorizontalResolution, NewHorizontalResolution);
PcdSet32 (PcdVideoVerticalResolution, NewVerticalResolution); ASSERT_EFI_ERROR (Status);
PcdSet32 (PcdConOutColumn, NewColumns); Status = PcdSet32S (PcdVideoVerticalResolution, NewVerticalResolution);
PcdSet32 (PcdConOutRow, NewRows); ASSERT_EFI_ERROR (Status);
Status = PcdSet32S (PcdConOutColumn, NewColumns);
ASSERT_EFI_ERROR (Status);
Status = PcdSet32S (PcdConOutRow, NewRows);
ASSERT_EFI_ERROR (Status);
// //

View File

@ -426,7 +426,10 @@ Done:
// //
IsFirstBoot = PcdGetBool(PcdBootState); IsFirstBoot = PcdGetBool(PcdBootState);
if (IsFirstBoot) { if (IsFirstBoot) {
PcdSetBool(PcdBootState, FALSE); Status = PcdSetBoolS(PcdBootState, FALSE);
if (EFI_ERROR (Status)) {
DEBUG ((EFI_D_ERROR, "Set PcdBootState to FALSE failed.\n"));
}
} }
return ReturnStatus; return ReturnStatus;