}\r
}\r
\r
-\r
-VOID\r
-AArch64PoUDataCacheOperation (\r
- IN AARCH64_CACHE_OPERATION DataCacheOperation\r
- )\r
-{\r
- UINTN SavedInterruptState;\r
-\r
- SavedInterruptState = ArmGetInterruptState ();\r
- ArmDisableInterrupts ();\r
-\r
- AArch64PerformPoUDataCacheOperation (DataCacheOperation);\r
-\r
- ArmDrainWriteBuffer ();\r
-\r
- if (SavedInterruptState) {\r
- ArmEnableInterrupts ();\r
- }\r
-}\r
-\r
VOID\r
EFIAPI\r
ArmInvalidateDataCache (\r
ArmDrainWriteBuffer ();\r
AArch64DataCacheOperation (ArmCleanDataCacheEntryBySetWay);\r
}\r
-\r
-VOID\r
-EFIAPI\r
-ArmCleanDataCacheToPoU (\r
- VOID\r
- )\r
-{\r
- ArmDrainWriteBuffer ();\r
- AArch64PoUDataCacheOperation (ArmCleanDataCacheEntryBySetWay);\r
-}\r