gem5 v24.1.0.1
|
#include <stage2_lookup.hh>
Public Member Functions | |
Stage2LookUp (MMU *_mmu, TlbEntry s1_te, const RequestPtr &_req, MMU::Translation *_transState, BaseMMU::Mode _mode, bool _timing, bool _functional, SecurityState _ss, MMU::ArmTranslationType _tranType) | |
Fault | getTe (ThreadContext *tc, TlbEntry *destTe) |
void | mergeTe (BaseMMU::Mode mode) |
void | setSelfDelete () |
bool | isComplete () const |
void | markDelayed () |
Signal that the translation has been delayed due to a hw page table walk. | |
void | finish (const Fault &fault, const RequestPtr &req, ThreadContext *tc, BaseMMU::Mode mode) |
Public Member Functions inherited from gem5::BaseMMU::Translation | |
virtual | ~Translation () |
virtual bool | squashed () const |
This function is used by the page table walker to determine if it should translate the a pending request or if the underlying request has been squashed. | |
Private Attributes | |
MMU * | mmu |
TlbEntry | stage1Te |
RequestPtr | s1Req |
BaseMMU::Translation * | transState |
BaseMMU::Mode | mode |
bool | timing |
bool | functional |
MMU::ArmTranslationType | tranType |
TlbEntry * | stage2Te |
RequestPtr | req |
Fault | fault |
bool | complete |
bool | selfDelete |
SecurityState | ss |
PASpace | ipaSpace |
Definition at line 59 of file stage2_lookup.hh.
|
inline |
Definition at line 79 of file stage2_lookup.hh.
References gem5::ArmISA::TlbEntry::pAddr(), req, and s1Req.
|
virtual |
Implements gem5::BaseMMU::Translation.
Definition at line 188 of file stage2_lookup.cc.
References fault, gem5::BaseMMU::Translation::finish(), functional, gem5::ArmISA::MMU::getTE(), ipaSpace, mergeTe(), mmu, mode, gem5::NoFault, req, s1Req, selfDelete, ss, stage2Te, timing, gem5::ArmISA::MMU::translateComplete(), transState, and tranType.
Fault gem5::Stage2LookUp::getTe | ( | ThreadContext * | tc, |
TlbEntry * | destTe | ||
) |
Definition at line 57 of file stage2_lookup.cc.
References gem5::ArmISA::MMU::checkPermissions(), gem5::ArmISA::MMU::checkPermissions64(), gem5::ArmISA::EL2, gem5::ArmISA::ELIs64(), fault, functional, gem5::ArmISA::MMU::getTE(), ipaSpace, mergeTe(), mmu, mode, gem5::NoFault, req, ss, stage1Te, stage2Te, timing, and tranType.
Referenced by gem5::ArmISA::MMU::getResultTe().
|
inline |
Definition at line 100 of file stage2_lookup.hh.
References complete.
Referenced by gem5::ArmISA::MMU::getResultTe().
|
inlinevirtual |
Signal that the translation has been delayed due to a hw page table walk.
Implements gem5::BaseMMU::Translation.
Definition at line 102 of file stage2_lookup.hh.
void gem5::Stage2LookUp::mergeTe | ( | BaseMMU::Mode | mode | ) |
Definition at line 82 of file stage2_lookup.cc.
References complete, gem5::ArmISA::TlbEntry::Device, fault, gem5::ArmISA::TlbEntry::innerAttrs, gem5::ArmISA::mask, gem5::ArmISA::TlbEntry::mtype, gem5::ArmISA::TlbEntry::N, gem5::NoFault, gem5::ArmISA::TlbEntry::nonCacheable, gem5::ArmISA::TlbEntry::Normal, gem5::ArmISA::TlbEntry::outerAttrs, gem5::ArmISA::TlbEntry::outerShareable, gem5::ArmISA::ArmFault::OVA, gem5::ArmISA::pa, gem5::ArmISA::TlbEntry::pfn, s1Req, gem5::ArmISA::TlbEntry::shareable, gem5::ArmISA::TlbEntry::size, stage1Te, stage2Te, gem5::ArmISA::TlbEntry::StronglyOrdered, gem5::ArmISA::TlbEntry::updateAttributes(), gem5::ArmISA::TlbEntry::vpn, gem5::ArmISA::TlbEntry::xn, and gem5::ArmISA::TlbEntry::xs.
|
inline |
Definition at line 98 of file stage2_lookup.hh.
References selfDelete.
Referenced by gem5::ArmISA::MMU::getResultTe().
|
private |
Definition at line 73 of file stage2_lookup.hh.
Referenced by isComplete(), and mergeTe().
|
private |
Definition at line 72 of file stage2_lookup.hh.
|
private |
Definition at line 68 of file stage2_lookup.hh.
|
private |
Definition at line 76 of file stage2_lookup.hh.
|
private |
Definition at line 62 of file stage2_lookup.hh.
|
private |
Definition at line 66 of file stage2_lookup.hh.
|
private |
Definition at line 71 of file stage2_lookup.hh.
Referenced by finish(), getTe(), and Stage2LookUp().
|
private |
Definition at line 64 of file stage2_lookup.hh.
Referenced by finish(), mergeTe(), and Stage2LookUp().
|
private |
Definition at line 74 of file stage2_lookup.hh.
Referenced by finish(), and setSelfDelete().
|
private |
Definition at line 75 of file stage2_lookup.hh.
|
private |
Definition at line 63 of file stage2_lookup.hh.
|
private |
Definition at line 70 of file stage2_lookup.hh.
|
private |
Definition at line 67 of file stage2_lookup.hh.
|
private |
Definition at line 65 of file stage2_lookup.hh.
Referenced by finish().
|
private |
Definition at line 69 of file stage2_lookup.hh.