TianoCore EDK2 master
SynchronizationLib.h
Go to the documentation of this file.
1
9#ifndef __SYNCHRONIZATION_LIB__
10#define __SYNCHRONIZATION_LIB__
11
15typedef volatile UINTN SPIN_LOCK;
16
34EFIAPI
36 VOID
37 );
38
56EFIAPI
58 OUT SPIN_LOCK *SpinLock
59 );
60
82EFIAPI
84 IN OUT SPIN_LOCK *SpinLock
85 );
86
104BOOLEAN
105EFIAPI
107 IN OUT SPIN_LOCK *SpinLock
108 );
109
124SPIN_LOCK *
125EFIAPI
127 IN OUT SPIN_LOCK *SpinLock
128 );
129
144UINT32
145EFIAPI
147 IN volatile UINT32 *Value
148 );
149
164UINT32
165EFIAPI
167 IN volatile UINT32 *Value
168 );
169
188UINT16
189EFIAPI
191 IN OUT volatile UINT16 *Value,
192 IN UINT16 CompareValue,
193 IN UINT16 ExchangeValue
194 );
195
215UINT32
216EFIAPI
218 IN OUT volatile UINT32 *Value,
219 IN UINT32 CompareValue,
220 IN UINT32 ExchangeValue
221 );
222
241UINT64
242EFIAPI
244 IN OUT volatile UINT64 *Value,
245 IN UINT64 CompareValue,
246 IN UINT64 ExchangeValue
247 );
248
267VOID *
268EFIAPI
270 IN OUT VOID *volatile *Value,
271 IN VOID *CompareValue,
272 IN VOID *ExchangeValue
273 );
274
275#endif
UINT64 UINTN
#define IN
Definition: Base.h:279
#define OUT
Definition: Base.h:284
UINT32 EFIAPI InterlockedIncrement(IN volatile UINT32 *Value)
VOID *EFIAPI InterlockedCompareExchangePointer(IN OUT VOID *volatile *Value, IN VOID *CompareValue, IN VOID *ExchangeValue)
SPIN_LOCK *EFIAPI AcquireSpinLock(IN OUT SPIN_LOCK *SpinLock)
UINTN EFIAPI GetSpinLockProperties(VOID)
UINT32 EFIAPI InterlockedCompareExchange32(IN OUT volatile UINT32 *Value, IN UINT32 CompareValue, IN UINT32 ExchangeValue)
UINT16 EFIAPI InterlockedCompareExchange16(IN OUT volatile UINT16 *Value, IN UINT16 CompareValue, IN UINT16 ExchangeValue)
UINT32 EFIAPI InterlockedDecrement(IN volatile UINT32 *Value)
SPIN_LOCK *EFIAPI InitializeSpinLock(OUT SPIN_LOCK *SpinLock)
volatile UINTN SPIN_LOCK
SPIN_LOCK *EFIAPI ReleaseSpinLock(IN OUT SPIN_LOCK *SpinLock)
BOOLEAN EFIAPI AcquireSpinLockOrFail(IN OUT SPIN_LOCK *SpinLock)
UINT64 EFIAPI InterlockedCompareExchange64(IN OUT volatile UINT64 *Value, IN UINT64 CompareValue, IN UINT64 ExchangeValue)