summaryrefslogtreecommitdiff
path: root/src/arch/arm/tlb.hh
diff options
context:
space:
mode:
authorGiacomo Travaglini <giacomo.travaglini@arm.com>2020-02-03 10:17:34 +0000
committerGiacomo Travaglini <giacomo.travaglini@arm.com>2020-02-04 09:42:13 +0000
commit6cff0dd218941eabf2b9cf3a7ce6d641ea7884cb (patch)
tree5d00f8f0ac6f777acf22561fdd86e0f929b67d38 /src/arch/arm/tlb.hh
parent4ae8d1c0ed18f351b52f421553b28fe109f87665 (diff)
downloadgem5-6cff0dd218941eabf2b9cf3a7ce6d641ea7884cb.tar.xz
arch-arm: Split translateFs to distinguish when MMU is on/off
This patch is splitting the big translateFs method so that it is using different methods when the MMU is on/off Change-Id: I198851bdbedf8a8e69730693ff87ffb9ed535ea3 Signed-off-by: Giacomo Travaglini <giacomo.travaglini@arm.com> Reviewed-on: https://gem5-review.googlesource.com/c/public/gem5/+/24985 Reviewed-by: Nikos Nikoleris <nikos.nikoleris@arm.com> Tested-by: kokoro <noreply+kokoro@google.com>
Diffstat (limited to 'src/arch/arm/tlb.hh')
-rw-r--r--src/arch/arm/tlb.hh7
1 files changed, 7 insertions, 0 deletions
diff --git a/src/arch/arm/tlb.hh b/src/arch/arm/tlb.hh
index 6314ef2d6..a344cd490 100644
--- a/src/arch/arm/tlb.hh
+++ b/src/arch/arm/tlb.hh
@@ -44,6 +44,7 @@
#define __ARCH_ARM_TLB_HH__
+#include "arch/arm/faults.hh"
#include "arch/arm/isa_traits.hh"
#include "arch/arm/pagetable.hh"
#include "arch/arm/utility.hh"
@@ -351,6 +352,12 @@ class TLB : public BaseTLB
return _attr;
}
+ Fault translateMmuOff(ThreadContext *tc, const RequestPtr &req, Mode mode,
+ TLB::ArmTranslationType tranType, Addr vaddr, bool long_desc_format);
+ Fault translateMmuOn(ThreadContext *tc, const RequestPtr &req, Mode mode,
+ Translation *translation, bool &delay, bool timing, bool functional,
+ Addr vaddr, ArmFault::TranMethod tranMethod);
+
Fault translateFs(const RequestPtr &req, ThreadContext *tc, Mode mode,
Translation *translation, bool &delay,
bool timing, ArmTranslationType tranType, bool functional = false);