From ca52a258822c1c47d533684c5a4cbe5f2b7bd487 Mon Sep 17 00:00:00 2001 From: Julius Werner Date: Wed, 10 Oct 2018 15:31:36 -0700 Subject: libpayload: arm64: Conform to new coreboot lib_helpers.h and assume EL2 This patch adds the new, faster architectural register accessors to libpayload that were already added to coreboot in CB:27881. It also hardcodes the assumption that coreboot payloads run at EL2, which has already been hardcoded in coreboot with CB:27880 (see rationale there). This means we can drop all the read_current/write_current stuff which added a lot of unnecessary helpers to check the current exception level. This patch breaks payloads that used read_current/write_current accessors, but it seems unlikely that many payloads deal with this stuff anyway, and it should be a trivial fix (just replace them with the respective _el2 versions). Also add accessors for a couple of more registers that are required to enable debug mode while I'm here. Change-Id: Ic9dfa48411f3805747613f03611f8a134a51cc46 Signed-off-by: Julius Werner Reviewed-on: https://review.coreboot.org/29017 Tested-by: build bot (Jenkins) Reviewed-by: Aaron Durbin Reviewed-by: Patrick Rudolph --- src/arch/arm64/include/armv8/arch/lib_helpers.h | 4 ++++ 1 file changed, 4 insertions(+) (limited to 'src/arch/arm64') diff --git a/src/arch/arm64/include/armv8/arch/lib_helpers.h b/src/arch/arm64/include/armv8/arch/lib_helpers.h index e270e0096c..b6d067ce65 100644 --- a/src/arch/arm64/include/armv8/arch/lib_helpers.h +++ b/src/arch/arm64/include/armv8/arch/lib_helpers.h @@ -210,9 +210,13 @@ MAKE_REGISTER_ACCESSORS(hpfar_el2) MAKE_REGISTER_ACCESSORS(hstr_el2) MAKE_REGISTER_ACCESSORS(isr_el1) MAKE_REGISTER_ACCESSORS_EL123(mair) +MAKE_REGISTER_ACCESSORS_EL123(mdcr) +MAKE_REGISTER_ACCESSORS(mdscr) MAKE_REGISTER_ACCESSORS(midr_el1) MAKE_REGISTER_ACCESSORS(mpidr_el1) MAKE_REGISTER_ACCESSORS(nzcv) +MAKE_REGISTER_ACCESSORS(oslar_el1) +MAKE_REGISTER_ACCESSORS(oslsr_el1) MAKE_REGISTER_ACCESSORS(par_el1) MAKE_REGISTER_ACCESSORS(revdir_el1) MAKE_REGISTER_ACCESSORS_EL123(rmr) -- cgit v1.2.3