UINTN SavedInterruptState;
SavedInterruptState = ArmGetInterruptState ();
- ArmDisableInterrupts();
+ ArmDisableInterrupts ();
-
ArmV7AllDataCachesOperation (DataCacheOperation);
ArmDrainWriteBuffer ();
}
}
+
+VOID
+ArmV7PoUDataCacheOperation (
+ IN ARM_V7_CACHE_OPERATION DataCacheOperation
+ )
+{
+ UINTN SavedInterruptState;
+
+ SavedInterruptState = ArmGetInterruptState ();
+ ArmDisableInterrupts ();
+
+ ArmV7PerformPoUDataCacheOperation (DataCacheOperation);
+
+ ArmDrainWriteBuffer ();
+
+ if (SavedInterruptState) {
+ ArmEnableInterrupts ();
+ }
+}
+
VOID
EFIAPI
ArmInvalidateDataCache (
ArmV7DataCacheOperation (ArmCleanDataCacheEntryBySetWay);
}
+VOID
+EFIAPI
+ArmCleanDataCacheToPoU (
+ VOID
+ )
+{
+ ArmV7PoUDataCacheOperation (ArmCleanDataCacheEntryBySetWay);
+}