ArmCpuInfo uses those to read system registers and other parts of EDK2 may find them useful.
Signed-off-by: Marcin Juszkiewicz <marcin.juszkiew...@linaro.org> --- ArmPkg/Library/ArmLib/AArch64/AArch64Lib.h | 48 +++++++++++++++++++ .../Library/ArmLib/AArch64/AArch64Support.S | 32 +++++++++++++ 2 files changed, 80 insertions(+) diff --git a/ArmPkg/Library/ArmLib/AArch64/AArch64Lib.h b/ArmPkg/Library/ArmLib/AArch64/AArch64Lib.h index 330481fc50db..d9744a66cdcf 100644 --- a/ArmPkg/Library/ArmLib/AArch64/AArch64Lib.h +++ b/ArmPkg/Library/ArmLib/AArch64/AArch64Lib.h @@ -44,6 +44,54 @@ ArmReadIdAA64Pfr0 ( VOID ); +UINTN +EFIAPI +ArmReadIdAA64Pfr1 ( + VOID + ); + +UINTN +EFIAPI +ArmReadIdAA64Dfr0 ( + VOID + ); + +UINTN +EFIAPI +ArmReadIdAA64Dfr1 ( + VOID + ); + +UINTN +EFIAPI +ArmReadIdAA64Isar0 ( + VOID + ); + +UINTN +EFIAPI +ArmReadIdAA64Isar1 ( + VOID + ); + +UINTN +EFIAPI +ArmReadIdAA64Isar2 ( + VOID + ); + +UINTN +EFIAPI +ArmReadIdAA64Mmfr0 ( + VOID + ); + +UINTN +EFIAPI +ArmReadIdAA64Mmfr1 ( + VOID + ); + /** Reads the ID_AA64MMFR2_EL1 register. @return The contents of the ID_AA64MMFR2_EL1 register. diff --git a/ArmPkg/Library/ArmLib/AArch64/AArch64Support.S b/ArmPkg/Library/ArmLib/AArch64/AArch64Support.S index d3cc1e86716b..3e8d461bc819 100644 --- a/ArmPkg/Library/ArmLib/AArch64/AArch64Support.S +++ b/ArmPkg/Library/ArmLib/AArch64/AArch64Support.S @@ -482,4 +482,36 @@ ASM_FUNC(ArmWriteCntHctl) msr cnthctl_el2, x0 ret +ASM_FUNC(ArmReadIdAA64Pfr1) + mrs x0, ID_AA64PFR1_EL1 + ret + +ASM_FUNC(ArmReadIdAA64Dfr0) + mrs x0, ID_AA64DFR0_EL1 + ret + +ASM_FUNC(ArmReadIdAA64Dfr1) + mrs x0, ID_AA64DFR1_EL1 + ret + +ASM_FUNC(ArmReadIdAA64Isar0) + mrs x0, ID_AA64ISAR0_EL1 + ret + +ASM_FUNC(ArmReadIdAA64Isar1) + mrs x0, ID_AA64ISAR1_EL1 + ret + +ASM_FUNC(ArmReadIdAA64Isar2) + mrs x0, ID_AA64ISAR2_EL1 + ret + +ASM_FUNC(ArmReadIdAA64Mmfr0) + mrs x0, ID_AA64MMFR0_EL1 + ret + +ASM_FUNC(ArmReadIdAA64Mmfr1) + mrs x0, ID_AA64MMFR1_EL1 + ret + ASM_FUNCTION_REMOVE_IF_UNREFERENCED -- 2.40.0 -=-=-=-=-=-=-=-=-=-=-=- Groups.io Links: You receive all messages sent to this group. View/Reply Online (#102706): https://edk2.groups.io/g/devel/message/102706 Mute This Topic: https://groups.io/mt/98126603/21656 Group Owner: devel+ow...@edk2.groups.io Unsubscribe: https://edk2.groups.io/g/devel/unsub [arch...@mail-archive.com] -=-=-=-=-=-=-=-=-=-=-=-