TianoCore EDK2 master
Loading...
Searching...
No Matches
SwapAddressRange.h
Go to the documentation of this file.
1
13#ifndef _EFI_SWAP_ADDRESS_RANGE_PROTOCOL_H_
14#define _EFI_SWAP_ADDRESS_RANGE_PROTOCOL_H_
15
16#define EFI_SWAP_ADDRESS_RANGE_PROTOCOL_GUID \
17 { \
18 0x1259f60d, 0xb754, 0x468e, {0xa7, 0x89, 0x4d, 0xb8, 0x5d, 0x55, 0xe8, 0x7e } \
19 }
20
21//
22// Forward reference for pure ANSI compatability
23//
25
26#define EFI_UNSUPPORT_LOCK 0
27#define EFI_SOFTWARE_LOCK 1
28#define EFI_HARDWARE_LOCK 2
29
30typedef UINT8 EFI_SWAP_LOCK_CAPABILITY;
31
32//
33// Protocol APIs
34//
35
49typedef
53 OUT EFI_PHYSICAL_ADDRESS *BootBlockBase,
54 OUT UINTN *BootBlockSize,
55 OUT EFI_PHYSICAL_ADDRESS *BackupBlockBase,
56 OUT UINTN *BackupBlockSize
57 );
58
69typedef
71(EFIAPI *EFI_GET_SWAP_STATE)(
73 OUT BOOLEAN *SwapState
74 );
75
89typedef
91(EFIAPI *EFI_SET_SWAP_STATE)(
93 IN BOOLEAN NewSwapState
94 );
95
108typedef
112 OUT BOOLEAN *RtcPowerFailed
113 );
114
126typedef
130 OUT EFI_SWAP_LOCK_CAPABILITY *LockCapability
131 );
132
145typedef
147(EFIAPI *EFI_SET_SWAP_LOCK)(
149 IN EFI_SWAP_LOCK_CAPABILITY LockCapability,
150 IN BOOLEAN NewLockState
151 );
152
154 EFI_GET_RANGE_LOCATION GetRangeLocation; // has output parameters for base and length
155 EFI_GET_SWAP_STATE GetSwapState; // are ranges swapped or not
156 EFI_SET_SWAP_STATE SetSwapState; // swap or unswap ranges
157 EFI_GET_RTC_POWER_STATUS GetRtcPowerStatus; // checks RTC battery, or whatever...
158 EFI_GET_SWAP_LOCK_CAPABILITY GetSwapLockCapability; // Get TOP_SWAP lock capability,
159 EFI_SET_SWAP_LOCK SetSwapLock; // Set TOP_SWAP lock state
160};
161
162extern EFI_GUID gEfiSwapAddressRangeProtocolGuid;
163
164#endif
UINT64 UINTN
#define IN
Definition: Base.h:279
#define OUT
Definition: Base.h:284
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)
EFI_STATUS(EFIAPI * EFI_GET_SWAP_STATE)(IN EFI_SWAP_ADDRESS_RANGE_PROTOCOL *This, OUT BOOLEAN *SwapState)
EFI_STATUS(EFIAPI * EFI_GET_RTC_POWER_STATUS)(IN EFI_SWAP_ADDRESS_RANGE_PROTOCOL *This, OUT BOOLEAN *RtcPowerFailed)
EFI_STATUS(EFIAPI * EFI_SET_SWAP_STATE)(IN EFI_SWAP_ADDRESS_RANGE_PROTOCOL *This, IN BOOLEAN NewSwapState)
EFI_STATUS(EFIAPI * EFI_GET_SWAP_LOCK_CAPABILITY)(IN EFI_SWAP_ADDRESS_RANGE_PROTOCOL *This, OUT EFI_SWAP_LOCK_CAPABILITY *LockCapability)
EFI_STATUS(EFIAPI * EFI_SET_SWAP_LOCK)(IN EFI_SWAP_ADDRESS_RANGE_PROTOCOL *This, IN EFI_SWAP_LOCK_CAPABILITY LockCapability, IN BOOLEAN NewLockState)
UINT64 EFI_PHYSICAL_ADDRESS
Definition: UefiBaseType.h:50
RETURN_STATUS EFI_STATUS
Definition: UefiBaseType.h:29
Definition: Base.h:213