diff options
author | Peter Maydell <peter.maydell@linaro.org> | 2017-09-07 13:54:55 +0100 |
---|---|---|
committer | Peter Maydell <peter.maydell@linaro.org> | 2017-09-07 13:54:55 +0100 |
commit | c79c0a314c43b78f6326d5f137bdbafdbf8e9766 (patch) | |
tree | f393bd58bc4dba89fdcea2b64a39c3f653a1e631 /target/arm/internals.h | |
parent | 4672cbd7bed88dc67f089e84a0fd5d7739020c92 (diff) | |
download | qemu-c79c0a314c43b78f6326d5f137bdbafdbf8e9766.zip qemu-c79c0a314c43b78f6326d5f137bdbafdbf8e9766.tar.gz qemu-c79c0a314c43b78f6326d5f137bdbafdbf8e9766.tar.bz2 |
target/arm: Implement new do_transaction_failed hook
Implement the new do_transaction_failed hook for ARM, which should
cause the CPU to take a prefetch abort or data abort.
Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Reviewed-by: Edgar E. Iglesias <edgar.iglesias@xilinx.com>
Message-id: 1504626814-23124-4-git-send-email-peter.maydell@linaro.org
Diffstat (limited to 'target/arm/internals.h')
-rw-r--r-- | target/arm/internals.h | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/target/arm/internals.h b/target/arm/internals.h index 4afebd9..5d7f24c 100644 --- a/target/arm/internals.h +++ b/target/arm/internals.h @@ -472,6 +472,16 @@ void arm_cpu_do_unaligned_access(CPUState *cs, vaddr vaddr, MMUAccessType access_type, int mmu_idx, uintptr_t retaddr); +/* arm_cpu_do_transaction_failed: handle a memory system error response + * (eg "no device/memory present at address") by raising an external abort + * exception + */ +void arm_cpu_do_transaction_failed(CPUState *cs, hwaddr physaddr, + vaddr addr, unsigned size, + MMUAccessType access_type, + int mmu_idx, MemTxAttrs attrs, + MemTxResult response, uintptr_t retaddr); + /* Call the EL change hook if one has been registered */ static inline void arm_call_el_change_hook(ARMCPU *cpu) { |