gem5
v22.1.0.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. More... | |
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. More... | |
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 978 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 2536 of file table_walker.cc.
References req.
|
virtual |
Implements gem5::BaseMMU::Translation.
Definition at line 2546 of file table_walker.cc.
References gem5::ArmISA::ArmFault::annotate(), gem5::Clocked::clockPeriod(), data, gem5::MipsISA::event, gem5::ThreadContext::getCpuPtr(), gem5::Request::NO_ACCESS, gem5::NoFault, gem5::ArmISA::ArmFault::OVA, 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 997 of file table_walker.hh.
|
inline |
Definition at line 1003 of file table_walker.hh.
References flags, 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 2572 of file table_walker.cc.
References gem5::ArmISA::mode.
Referenced by gem5::ArmISA::TableWalker::readDataTimed().
|
private |
Definition at line 981 of file table_walker.hh.
|
private |
Definition at line 984 of file table_walker.hh.
Fault gem5::ArmISA::TableWalker::Stage2Walk::fault |
Definition at line 991 of file table_walker.hh.
|
private |
Definition at line 987 of file table_walker.hh.
|
private |
Definition at line 982 of file table_walker.hh.
Referenced by setVirt().
|
private |
Definition at line 986 of file table_walker.hh.
|
private |
Definition at line 985 of file table_walker.hh.
|
private |
Definition at line 983 of file table_walker.hh.
Referenced by setVirt(), and Stage2Walk().
|
private |
Definition at line 988 of file table_walker.hh.