gem5 v24.0.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. | |
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 1005 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 2462 of file table_walker.cc.
References req.
|
virtual |
Implements gem5::BaseMMU::Translation.
Definition at line 2472 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 1024 of file table_walker.hh.
|
inline |
Definition at line 1030 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 2497 of file table_walker.cc.
References gem5::ArmISA::mode.
Referenced by gem5::ArmISA::TableWalker::readDataTimed().
|
private |
Definition at line 1008 of file table_walker.hh.
|
private |
Definition at line 1011 of file table_walker.hh.
Fault gem5::ArmISA::TableWalker::Stage2Walk::fault |
Definition at line 1018 of file table_walker.hh.
|
private |
Definition at line 1014 of file table_walker.hh.
|
private |
Definition at line 1009 of file table_walker.hh.
Referenced by setVirt().
|
private |
Definition at line 1013 of file table_walker.hh.
|
private |
Definition at line 1012 of file table_walker.hh.
|
private |
Definition at line 1010 of file table_walker.hh.
Referenced by setVirt(), and Stage2Walk().
|
private |
Definition at line 1015 of file table_walker.hh.