Initial patchset adding support for trapping to an EL other than EL1. Support includes changes to interfaces to allow specification of the target EL. Also includes the addition of the ARMv8 CPTR system registers used for controlling the trapping of features.
--- v1 -> v2 - Removed use of MAX through out the patch when setting target_el - Updated FP trap support to pass a target exception EL rather than just an enable boolean. - Added utility functions for determining the target exception EL - Broke up cptr and cpacr access functions - Added HCPTR CP register entry and HCPTR/CPTR_EL2 zero entries - Broke out TCR changes into their own patch and added support for handling the lack of TTBR1 - Simplified wfx checking - General comment cleanup Greg Bellows (9): target-arm: Add exception target el infrastructure target-arm: Extend helpers to route exceptions target-arm: Update interrupt handling to use target EL target-arm: Add AArch64 CPTR registers target-arm: Extend FP checks to use an EL target-arm: Add TTBR regime function and use target-arm: Add EL3 and EL2 TCR checking target-arm: Add WFx syndrome function target-arm: Add WFx instruction trap support target-arm/cpu.c | 61 +++++++++++------ target-arm/cpu.h | 76 ++++++++++++++++----- target-arm/helper-a64.c | 2 +- target-arm/helper.c | 160 +++++++++++++++++++++++++++++---------------- target-arm/helper.h | 2 +- target-arm/internals.h | 6 ++ target-arm/op_helper.c | 98 +++++++++++++++++++++++++-- target-arm/translate-a64.c | 40 +++++++----- target-arm/translate.c | 70 ++++++++++++-------- target-arm/translate.h | 17 ++++- 10 files changed, 390 insertions(+), 142 deletions(-) -- 1.8.3.2