[edk2-devel] [PATCH v4 06/11] ArmPkg: Add helper to read CCIDX status
Rebecca Cran
rebecca at nuviainc.com
Tue Dec 1 00:33:53 UTC 2020
Add a helper function to determine CCIDX support.
Signed-off-by: Rebecca Cran <rebecca at nuviainc.com>
---
ArmPkg/Include/Library/ArmLib.h | 6 ++++++
ArmPkg/Library/ArmLib/AArch64/AArch64Lib.c | 12 ++++++++++++
ArmPkg/Library/ArmLib/Arm/ArmV7Lib.c | 12 ++++++++++++
3 files changed, 30 insertions(+)
diff --git a/ArmPkg/Include/Library/ArmLib.h b/ArmPkg/Include/Library/ArmLib.h
index 5a27b7c2fc27..87c3a6f1ecac 100644
--- a/ArmPkg/Include/Library/ArmLib.h
+++ b/ArmPkg/Include/Library/ArmLib.h
@@ -132,6 +132,12 @@ ArmIsArchTimerImplemented (
VOID
);
+BOOLEAN
+EFIAPI
+ArmIsCcidxImplemented (
+ VOID
+ );
+
UINTN
EFIAPI
ArmReadIdPfr0 (
diff --git a/ArmPkg/Library/ArmLib/AArch64/AArch64Lib.c b/ArmPkg/Library/ArmLib/AArch64/AArch64Lib.c
index 3fbd591192e2..915c2cacdd99 100644
--- a/ArmPkg/Library/ArmLib/AArch64/AArch64Lib.c
+++ b/ArmPkg/Library/ArmLib/AArch64/AArch64Lib.c
@@ -71,3 +71,15 @@ ArmCleanDataCache (
ArmDataSynchronizationBarrier ();
AArch64DataCacheOperation (ArmCleanDataCacheEntryBySetWay);
}
+
+BOOLEAN
+EFIAPI
+ArmIsCcidxImplemented (
+ VOID
+ )
+{
+ UINTN Mmfr2;
+
+ Mmfr2 = ArmReadIdMmfr2 ();
+ return (((Mmfr2 >> 20) & 0xF) == 1) ? TRUE : FALSE;
+}
diff --git a/ArmPkg/Library/ArmLib/Arm/ArmV7Lib.c b/ArmPkg/Library/ArmLib/Arm/ArmV7Lib.c
index 2c4a23e1a1b2..7331b1c678f3 100644
--- a/ArmPkg/Library/ArmLib/Arm/ArmV7Lib.c
+++ b/ArmPkg/Library/ArmLib/Arm/ArmV7Lib.c
@@ -71,3 +71,15 @@ ArmCleanDataCache (
ArmDataSynchronizationBarrier ();
ArmV7DataCacheOperation (ArmCleanDataCacheEntryBySetWay);
}
+
+BOOLEAN
+EFIAPI
+ArmIsCcidxImplemented (
+ VOID
+ )
+{
+ UINTN Mmfr4;
+
+ Mmfr4 = ArmReadIdMmfr4 ();
+ return (((Mmfr4 >> 24) & 0xF) == 1) ? TRUE : FALSE;
+}
--
2.26.2
-=-=-=-=-=-=-=-=-=-=-=-
Groups.io Links: You receive all messages sent to this group.
View/Reply Online (#68101): https://edk2.groups.io/g/devel/message/68101
Mute This Topic: https://groups.io/mt/78622919/1813853
Group Owner: devel+owner at edk2.groups.io
Unsubscribe: https://edk2.groups.io/g/devel/unsub [edk2-devel-archive at redhat.com]
-=-=-=-=-=-=-=-=-=-=-=-
More information about the edk2-devel-archive
mailing list