From f21c37708d5b2110e0b562e105adbebcb17e6453 Mon Sep 17 00:00:00 2001 From: qwang12 Date: Tue, 10 Jun 2008 07:21:00 +0000 Subject: [PATCH] install mReadOnlyVariableThunkPresent PPI to insure that only one ReadOnlyVariable thunk driver can be present in the platform. git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@5337 6f19259b-4bc3-4df7-8a09-765794883524 --- .../ReadOnlyVariable2ToReadOnlyVariableThunk.c | 6 ++++-- .../ReadOnlyVariableToReadOnlyVariable2Thunk.c | 10 ++++++++++ 2 files changed, 14 insertions(+), 2 deletions(-) diff --git a/EdkCompatibilityPkg/Compatibility/ReadOnlyVariable2ToReadOnlyVariableThunk/ReadOnlyVariable2ToReadOnlyVariableThunk.c b/EdkCompatibilityPkg/Compatibility/ReadOnlyVariable2ToReadOnlyVariableThunk/ReadOnlyVariable2ToReadOnlyVariableThunk.c index d7d4df6ebc..756787e27b 100644 --- a/EdkCompatibilityPkg/Compatibility/ReadOnlyVariable2ToReadOnlyVariableThunk/ReadOnlyVariable2ToReadOnlyVariableThunk.c +++ b/EdkCompatibilityPkg/Compatibility/ReadOnlyVariable2ToReadOnlyVariableThunk/ReadOnlyVariable2ToReadOnlyVariableThunk.c @@ -73,7 +73,7 @@ EFI_PEI_PPI_DESCRIPTOR mReadOnlyVariableThunkPresent = { (EFI_PEI_PPI_DESCRIPTOR_PPI | EFI_PEI_PPI_DESCRIPTOR_TERMINATE_LIST), &gPeiReadonlyVariableThunkPresentPpiGuid, NULL - }; +}; EFI_STATUS EFIAPI @@ -109,7 +109,9 @@ Returns: Status = PeiServicesLocatePpi (&gPeiReadonlyVariableThunkPresentPpiGuid, 0, NULL, &Interface); ASSERT (Status == EFI_NOT_FOUND); - PeiServicesInstallPpi (&mReadOnlyVariableThunkPresent); + Status = PeiServicesInstallPpi (&mReadOnlyVariableThunkPresent); + ASSERT_EFI_ERROR (Status); + // // Publish the variable capability to other modules // diff --git a/EdkCompatibilityPkg/Compatibility/ReadOnlyVariableToReadOnlyVariable2Thunk/ReadOnlyVariableToReadOnlyVariable2Thunk.c b/EdkCompatibilityPkg/Compatibility/ReadOnlyVariableToReadOnlyVariable2Thunk/ReadOnlyVariableToReadOnlyVariable2Thunk.c index fcb6fb53f1..0e531e3a5f 100644 --- a/EdkCompatibilityPkg/Compatibility/ReadOnlyVariableToReadOnlyVariable2Thunk/ReadOnlyVariableToReadOnlyVariable2Thunk.c +++ b/EdkCompatibilityPkg/Compatibility/ReadOnlyVariableToReadOnlyVariable2Thunk/ReadOnlyVariableToReadOnlyVariable2Thunk.c @@ -66,6 +66,13 @@ EFI_PEI_PPI_DESCRIPTOR mPpiListVariable = { &mVariablePpi }; +EFI_PEI_PPI_DESCRIPTOR mReadOnlyVariableThunkPresent = { + (EFI_PEI_PPI_DESCRIPTOR_PPI | EFI_PEI_PPI_DESCRIPTOR_TERMINATE_LIST), + &gPeiReadonlyVariableThunkPresentPpiGuid, + NULL +}; + + /** Standard entry point of a PEIM. @@ -92,6 +99,9 @@ PeimInitializeReadOnlyVariable ( Status = PeiServicesLocatePpi (&gPeiReadonlyVariableThunkPresentPpiGuid, 0, NULL, &Interface); ASSERT (Status == EFI_NOT_FOUND); + Status = PeiServicesInstallPpi (&mReadOnlyVariableThunkPresent); + ASSERT_EFI_ERROR (Status); + // // Publish the variable capability to other modules //