|
gem5 [DEVELOP-FOR-25.0]
|
This translation class is used to trigger the data fetch once a timing translation returns the translated physical address. More...
#include <table_walker.hh>
Public Member Functions | |
| Stage2Walk (TableWalker &_parent, uint8_t *_data, Event *_event, Addr vaddr, BaseMMU::Mode mode, MMU::ArmTranslationType tran_type) | |
| 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) |
| void | setVirt (Addr vaddr, int size, Request::Flags flags, int requestorId) |
| void | translateTiming (ThreadContext *tc) |
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. | |
Public Attributes | |
| Fault | fault |
Private Attributes | |
| uint8_t * | data |
| int | numBytes |
| RequestPtr | req |
| Event * | event |
| TableWalker & | parent |
| Addr | oVAddr |
| BaseMMU::Mode | mode |
| MMU::ArmTranslationType | tranType |
This translation class is used to trigger the data fetch once a timing translation returns the translated physical address.
Definition at line 1037 of file table_walker.hh.
| gem5::TableWalker::Stage2Walk::Stage2Walk | ( | TableWalker & | _parent, |
| uint8_t * | _data, | ||
| Event * | _event, | ||
| Addr | vaddr, | ||
| BaseMMU::Mode | mode, | ||
| MMU::ArmTranslationType | tran_type ) |
Definition at line 2538 of file table_walker.cc.
References data, event, fault, mode, gem5::NoFault, numBytes, oVAddr, parent, req, gem5::ArmISA::TableWalker::TableWalker(), tranType, and gem5::MipsISA::vaddr.
|
virtual |
Implements gem5::BaseMMU::Translation.
Definition at line 2548 of file table_walker.cc.
References gem5::ArmISA::ArmFault::annotate(), gem5::Clocked::clockPeriod(), data, event, fault, gem5::ThreadContext::getCpuPtr(), mode, gem5::Request::NO_ACCESS, gem5::NoFault, gem5::ArmISA::ArmFault::OVA, oVAddr, parent, req, and gem5::ArmISA::ArmFault::S1PTW.
|
inlinevirtual |
Signal that the translation has been delayed due to a hw page table walk.
Implements gem5::BaseMMU::Translation.
Definition at line 1056 of file table_walker.hh.
|
inline |
Definition at line 1062 of file table_walker.hh.
References numBytes, req, gem5::ArmISA::TableWalker::requestorId, and gem5::MipsISA::vaddr.
Referenced by gem5::ArmISA::TableWalker::readDataTimed().
| void gem5::TableWalker::Stage2Walk::translateTiming | ( | ThreadContext * | tc | ) |
Definition at line 2573 of file table_walker.cc.
References mode, parent, req, and tranType.
Referenced by gem5::ArmISA::TableWalker::readDataTimed().
|
private |
Definition at line 1040 of file table_walker.hh.
Referenced by finish(), and Stage2Walk().
|
private |
Definition at line 1043 of file table_walker.hh.
Referenced by finish(), and Stage2Walk().
| Fault gem5::ArmISA::TableWalker::Stage2Walk::fault |
Definition at line 1050 of file table_walker.hh.
Referenced by finish(), and Stage2Walk().
|
private |
Definition at line 1046 of file table_walker.hh.
Referenced by finish(), Stage2Walk(), and translateTiming().
|
private |
Definition at line 1041 of file table_walker.hh.
Referenced by setVirt(), and Stage2Walk().
|
private |
Definition at line 1045 of file table_walker.hh.
Referenced by finish(), and Stage2Walk().
|
private |
Definition at line 1044 of file table_walker.hh.
Referenced by finish(), Stage2Walk(), and translateTiming().
|
private |
Definition at line 1042 of file table_walker.hh.
Referenced by finish(), setVirt(), Stage2Walk(), and translateTiming().
|
private |
Definition at line 1047 of file table_walker.hh.
Referenced by Stage2Walk(), and translateTiming().