diff options
-rw-r--r-- | MdePkg/Include/Library/BaseLib.h | 20 | ||||
-rw-r--r-- | MdePkg/Library/BaseCacheMaintenanceLib/IpfCache.c | 8 | ||||
-rw-r--r-- | MdePkg/Library/BaseLib/Ipf/FlushCacheRange.s | 7 |
3 files changed, 17 insertions, 18 deletions
diff --git a/MdePkg/Include/Library/BaseLib.h b/MdePkg/Include/Library/BaseLib.h index 3cb2cdb..cc0e6ee 100644 --- a/MdePkg/Include/Library/BaseLib.h +++ b/MdePkg/Include/Library/BaseLib.h @@ -3608,21 +3608,19 @@ EFIAPI CpuDeadLoop (
VOID
);
-
#if defined (MDE_CPU_IPF)
/**
Flush a range of cache lines in the cache coherency domain of the calling
CPU.
- Invalidates the cache lines specified by Address and Length. If Address is
- not aligned on a cache line boundary, then entire cache line containing
- Address is invalidated. If Address + Length is not aligned on a cache line
- boundary, then the entire instruction cache line containing Address + Length
- -1 is invalidated. This function may choose to invalidate the entire
- instruction cache if that is more efficient than invalidating the specified
- range. If Length is 0, the no instruction cache lines are invalidated.
- Address is returned.
+ Flushes the cache lines specified by Address and Length. If Address is not aligned
+ on a cache line boundary, then entire cache line containing Address is flushed.
+ If Address + Length is not aligned on a cache line boundary, then the entire cache
+ line containing Address + Length - 1 is flushed. This function may choose to flush
+ the entire cache if that is more efficient than flushing the specified range. If
+ Length is 0, the no cache lines are flushed. Address is returned.
+ This function is only available on IPF.
If Length is greater than (MAX_ADDRESS - Address + 1), then ASSERT().
@@ -3633,12 +3631,12 @@ CpuDeadLoop ( @param Length The number of bytes to invalidate from the instruction cache.
- @return Address
+ @return Address.
**/
VOID *
EFIAPI
-IpfFlushCacheRange (
+AsmFlushCacheRange (
IN VOID *Address,
IN UINTN Length
);
diff --git a/MdePkg/Library/BaseCacheMaintenanceLib/IpfCache.c b/MdePkg/Library/BaseCacheMaintenanceLib/IpfCache.c index 8e999a4..9b940fc 100644 --- a/MdePkg/Library/BaseCacheMaintenanceLib/IpfCache.c +++ b/MdePkg/Library/BaseCacheMaintenanceLib/IpfCache.c @@ -68,7 +68,7 @@ InvalidateInstructionCacheRange ( )
{
ASSERT (Length <= MAX_ADDRESS - (UINTN)Address + 1);
- return IpfFlushCacheRange (Address, Length);
+ return AsmFlushCacheRange (Address, Length);
}
/**
@@ -125,7 +125,7 @@ WriteBackInvalidateDataCacheRange ( {
ASSERT (Length <= MAX_ADDRESS - (UINTN)Address + 1);
- return IpfFlushCacheRange (Address, Length);
+ return AsmFlushCacheRange (Address, Length);
}
/**
@@ -181,7 +181,7 @@ WriteBackDataCacheRange ( {
ASSERT (Length <= MAX_ADDRESS - (UINTN)Address + 1);
- return IpfFlushCacheRange (Address, Length);
+ return AsmFlushCacheRange (Address, Length);
}
/**
@@ -247,5 +247,5 @@ InvalidateDataCacheRange ( // Invalidation of a data cache range without writing back is not supported on
// IPF architecture, so write back and invalidate operation is performed.
//
- return IpfFlushCacheRange (Address, Length);
+ return AsmFlushCacheRange (Address, Length);
}
diff --git a/MdePkg/Library/BaseLib/Ipf/FlushCacheRange.s b/MdePkg/Library/BaseLib/Ipf/FlushCacheRange.s index 72623f5..ebb1290 100644 --- a/MdePkg/Library/BaseLib/Ipf/FlushCacheRange.s +++ b/MdePkg/Library/BaseLib/Ipf/FlushCacheRange.s @@ -33,6 +33,7 @@ // invalidate the entire instruction cache if that is more efficient than
// invalidating the specified range. If Length is 0, the no instruction cache
// lines are invalidated. Address is returned.
+// This function is only available on IPF.
//
// If Length is greater than (MAX_ADDRESS - Address + 1), then ASSERT().
//
@@ -47,12 +48,12 @@ //
// VOID *
// EFIAPI
-// IpfFlushCacheRange (
+// AsmFlushCacheRange (
// IN VOID *Address,
// IN UINTN Length
// );
//
-PROCEDURE_ENTRY (IpfFlushCacheRange)
+PROCEDURE_ENTRY (AsmFlushCacheRange)
NESTED_SETUP (5,8,0,0)
@@ -91,5 +92,5 @@ DoneFlushingC: mov r8 = in0 // return *Address
NESTED_RETURN
-PROCEDURE_EXIT (IpfFlushCacheRange)
+PROCEDURE_EXIT (AsmFlushCacheRange)
|