From 88a5561c66bccd27c0fe4c3d7d0b3c235b2ae531 Mon Sep 17 00:00:00 2001 From: lgao4 Date: Wed, 4 Mar 2009 01:27:50 +0000 Subject: Update Variable driver to depend on full version FaultTolerantWrite protocol, and remove the lite version FaultTolerantWrite Dxe Driver. New full version FaultTolerantWriteDxe driver is added in MdeModulePkg. git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@7788 6f19259b-4bc3-4df7-8a09-765794883524 --- .../Universal/Variable/RuntimeDxe/Reclaim.c | 29 +++++++++++----------- .../Universal/Variable/RuntimeDxe/Variable.h | 2 +- .../Variable/RuntimeDxe/VariableRuntimeDxe.inf | 4 +-- 3 files changed, 18 insertions(+), 17 deletions(-) (limited to 'MdeModulePkg/Universal/Variable/RuntimeDxe') diff --git a/MdeModulePkg/Universal/Variable/RuntimeDxe/Reclaim.c b/MdeModulePkg/Universal/Variable/RuntimeDxe/Reclaim.c index e3189c4960..9c351a3547 100644 --- a/MdeModulePkg/Universal/Variable/RuntimeDxe/Reclaim.c +++ b/MdeModulePkg/Universal/Variable/RuntimeDxe/Reclaim.c @@ -201,21 +201,21 @@ FtwVariableSpace ( IN UINTN BufferSize ) { - EFI_STATUS Status; - EFI_HANDLE FvbHandle; - EFI_FTW_LITE_PROTOCOL *FtwLiteProtocol; - EFI_LBA VarLba; - UINTN VarOffset; - UINT8 *FtwBuffer; - UINTN FtwBufferSize; + EFI_STATUS Status; + EFI_HANDLE FvbHandle; + EFI_LBA VarLba; + UINTN VarOffset; + UINT8 *FtwBuffer; + UINTN FtwBufferSize; + EFI_FAULT_TOLERANT_WRITE_PROTOCOL *FtwProtocol; // // Locate fault tolerant write protocol // Status = gBS->LocateProtocol ( - &gEfiFaultTolerantWriteLiteProtocolGuid, + &gEfiFaultTolerantWriteProtocolGuid, NULL, - (VOID **) &FtwLiteProtocol + (VOID **) &FtwProtocol ); if (EFI_ERROR (Status)) { return EFI_NOT_FOUND; @@ -249,13 +249,14 @@ FtwVariableSpace ( // // FTW write record // - Status = FtwLiteProtocol->Write ( - FtwLiteProtocol, - FvbHandle, + Status = FtwProtocol->Write ( + FtwProtocol, VarLba, // LBA VarOffset, // Offset - &FtwBufferSize, // NumBytes - FtwBuffer + FtwBufferSize, // NumBytes + NULL, // PrivateData NULL + FvbHandle, // Fvb Handle + FtwBuffer // write buffer ); FreePool (FtwBuffer); diff --git a/MdeModulePkg/Universal/Variable/RuntimeDxe/Variable.h b/MdeModulePkg/Universal/Variable/RuntimeDxe/Variable.h index 4e861dccbc..6ae0ea91ec 100644 --- a/MdeModulePkg/Universal/Variable/RuntimeDxe/Variable.h +++ b/MdeModulePkg/Universal/Variable/RuntimeDxe/Variable.h @@ -19,7 +19,7 @@ WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. #include #include -#include +#include #include #include #include diff --git a/MdeModulePkg/Universal/Variable/RuntimeDxe/VariableRuntimeDxe.inf b/MdeModulePkg/Universal/Variable/RuntimeDxe/VariableRuntimeDxe.inf index 44063224a7..ffd78aa8bc 100644 --- a/MdeModulePkg/Universal/Variable/RuntimeDxe/VariableRuntimeDxe.inf +++ b/MdeModulePkg/Universal/Variable/RuntimeDxe/VariableRuntimeDxe.inf @@ -55,9 +55,9 @@ [Protocols] gEfiFirmwareVolumeBlockProtocolGuid ## SOMETIMES_CONSUMES - gEfiFaultTolerantWriteLiteProtocolGuid ## SOMETIMES_CONSUMES gEfiVariableWriteArchProtocolGuid ## ALWAYS_PRODUCES gEfiVariableArchProtocolGuid ## ALWAYS_PRODUCES + gEfiFaultTolerantWriteProtocolGuid ## SOMETIMES_CONSUMES [Guids] gEfiVariableGuid ## PRODUCES ## Configuration Table Guid @@ -75,7 +75,7 @@ gEfiMdeModulePkgTokenSpaceGuid.PcdVariableCollectStatistics ## SOMETIME_CONSUMES (statistic the information of variable.) [Depex] - gEfiFirmwareVolumeBlockProtocolGuid AND gEfiFaultTolerantWriteLiteProtocolGuid + gEfiFirmwareVolumeBlockProtocolGuid AND gEfiFaultTolerantWriteProtocolGuid # [Event] # ## -- cgit v1.2.3