Data Structures | |
struct | _EFI_SWAP_ADDRESS_RANGE_PROTOCOL |
Defines | |
#define | EFI_SWAP_ADDRESS_RANGE_PROTOCOL_GUID |
#define | EFI_UNSUPPORT_LOCK 0 |
#define | EFI_SOFTWARE_LOCK 1 |
#define | EFI_HARDWARE_LOCK 2 |
Typedefs | |
typedef struct _EFI_SWAP_ADDRESS_RANGE_PROTOCOL | EFI_SWAP_ADDRESS_RANGE_PROTOCOL |
typedef UINT8 | EFI_SWAP_LOCK_CAPABILITY |
typedef EFI_STATUS(EFIAPI * | EFI_GET_RANGE_LOCATION )(IN EFI_SWAP_ADDRESS_RANGE_PROTOCOL *This, OUT EFI_PHYSICAL_ADDRESS *BootBlockBase, OUT UINTN *BootBlockSize, OUT EFI_PHYSICAL_ADDRESS *BackupBlockBase, OUT UINTN *BackupBlockSize) |
typedef EFI_STATUS(EFIAPI * | EFI_GET_SWAP_STATE )(IN EFI_SWAP_ADDRESS_RANGE_PROTOCOL *This, OUT BOOLEAN *SwapState) |
typedef EFI_STATUS(EFIAPI * | EFI_SET_SWAP_STATE )(IN EFI_SWAP_ADDRESS_RANGE_PROTOCOL *This, IN BOOLEAN NewSwapState) |
typedef EFI_STATUS(EFIAPI * | EFI_GET_RTC_POWER_STATUS )(IN EFI_SWAP_ADDRESS_RANGE_PROTOCOL *This, OUT BOOLEAN *RtcPowerFailed) |
typedef EFI_STATUS(EFIAPI * | EFI_GET_SWAP_LOCK_CAPABILITY )(IN EFI_SWAP_ADDRESS_RANGE_PROTOCOL *This, OUT EFI_SWAP_LOCK_CAPABILITY *LockCapability) |
typedef EFI_STATUS(EFIAPI * | EFI_SET_SWAP_LOCK )(IN EFI_SWAP_ADDRESS_RANGE_PROTOCOL *This, IN EFI_SWAP_LOCK_CAPABILITY LockCapability, IN BOOLEAN NewLockState) |
Variables | |
EFI_GUID | gEfiSwapAddressRangeProtocolGuid |
Copyright (c) 2009 - 2010, Intel Corporation. All rights reserved.
This program and the accompanying materials are licensed and made available under the terms and conditions of the BSD License that accompanies this distribution. The full text of the license may be found at http://opensource.org/licenses/bsd-license.php.
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
#define EFI_HARDWARE_LOCK 2 |
#define EFI_SOFTWARE_LOCK 1 |
#define EFI_SWAP_ADDRESS_RANGE_PROTOCOL_GUID |
Value:
{ \ 0x1259f60d, 0xb754, 0x468e, {0xa7, 0x89, 0x4d, 0xb8, 0x5d, 0x55, 0xe8, 0x7e } \ }
#define EFI_UNSUPPORT_LOCK 0 |
typedef EFI_STATUS(EFIAPI * EFI_GET_RANGE_LOCATION)(IN EFI_SWAP_ADDRESS_RANGE_PROTOCOL *This, OUT EFI_PHYSICAL_ADDRESS *BootBlockBase, OUT UINTN *BootBlockSize, OUT EFI_PHYSICAL_ADDRESS *BackupBlockBase, OUT UINTN *BackupBlockSize) |
This function gets the address range location of boot block and backup block.
This | Indicates the calling context. | |
BootBlockBase | The base address of current boot block. | |
BootBlockSize | The size (in bytes) of current boot block. | |
BackupBlockBase | The base address of current backup block. | |
BackupBlockSize | The size (in bytes) of current backup block. |
EFI_SUCCESS | The call was successful. |
typedef EFI_STATUS(EFIAPI * EFI_GET_RTC_POWER_STATUS)(IN EFI_SWAP_ADDRESS_RANGE_PROTOCOL *This, OUT BOOLEAN *RtcPowerFailed) |
This service checks if a Real Time Clock (RTC) power failure happened.
If parameter RtcPowerFailed is true after the function returns, RTC power supply failed or was removed. It is recommended to check RTC power status before calling GetSwapState().
This | Indicates the calling context. | |
RtcPowerFailed | True if the RTC (Real Time Clock) power failed or was removed. |
EFI_SUCCESS | The call was successful. |
typedef EFI_STATUS(EFIAPI * EFI_GET_SWAP_LOCK_CAPABILITY)(IN EFI_SWAP_ADDRESS_RANGE_PROTOCOL *This, OUT EFI_SWAP_LOCK_CAPABILITY *LockCapability) |
This service returns all lock methods for swap operations that the current platform supports. Could be software lock, hardware lock, or unsupport lock. Note that software and hardware lock methods can be used simultaneously.
This | Indicates the calling context. | |
LockCapability | The current lock method for swap operations. |
EFI_SUCCESS | The call was successful. |
typedef EFI_STATUS(EFIAPI * EFI_GET_SWAP_STATE)(IN EFI_SWAP_ADDRESS_RANGE_PROTOCOL *This, OUT BOOLEAN *SwapState) |
This service checks if the boot block and backup block has been swapped.
This | Indicates the calling context. | |
SwapState | True if the boot block and backup block has been swapped. False if the boot block and backup block has not been swapped. |
EFI_SUCCESS | The call was successful. |
typedef EFI_STATUS(EFIAPI * EFI_SET_SWAP_LOCK)(IN EFI_SWAP_ADDRESS_RANGE_PROTOCOL *This, IN EFI_SWAP_LOCK_CAPABILITY LockCapability, IN BOOLEAN NewLockState) |
This service is used to acquire or release appointed kind of lock for Swap Address Range operations.
Note that software and hardware lock mothod can be used simultaneously.
This | Indicates the calling context. | |
LockCapability | Indicates which lock to acquire or release. | |
NewLockState | True to acquire lock; False to release lock. |
EFI_SUCCESS | The call was successful. |
typedef EFI_STATUS(EFIAPI * EFI_SET_SWAP_STATE)(IN EFI_SWAP_ADDRESS_RANGE_PROTOCOL *This, IN BOOLEAN NewSwapState) |
This service swaps the boot block and backup block, or swaps them back.
It also acquires and releases software swap lock during operation. The setting of the new swap state is not affected by the old swap state.
This | Indicates the calling context. | |
NewSwapState | True to swap real boot block and backup block, False to swap them back. |
EFI_SUCCESS | The call was successful. | |
EFI_ABORTED | Set swap state error. |
typedef struct _EFI_SWAP_ADDRESS_RANGE_PROTOCOL EFI_SWAP_ADDRESS_RANGE_PROTOCOL |
typedef UINT8 EFI_SWAP_LOCK_CAPABILITY |
EFI_GUID gEfiSwapAddressRangeProtocolGuid |