gem5  v21.1.0.2
Public Member Functions | Public Attributes | Private Attributes | List of all members
gem5::ArmISA::TableWalker::Stage2Walk Class Reference

This translation class is used to trigger the data fetch once a timing translation returns the translated physical address. More...

#include <table_walker.hh>

Inheritance diagram for gem5::ArmISA::TableWalker::Stage2Walk:
gem5::BaseMMU::Translation

Public Member Functions

 Stage2Walk (TableWalker &_parent, uint8_t *_data, Event *_event, Addr vaddr)
 
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
 
Eventevent
 
TableWalkerparent
 
Addr oVAddr
 

Detailed Description

This translation class is used to trigger the data fetch once a timing translation returns the translated physical address.

Definition at line 906 of file table_walker.hh.

Constructor & Destructor Documentation

◆ Stage2Walk()

gem5::TableWalker::Stage2Walk::Stage2Walk ( TableWalker _parent,
uint8_t *  _data,
Event _event,
Addr  vaddr 
)

Definition at line 2461 of file table_walker.cc.

References req.

Member Function Documentation

◆ finish()

void gem5::TableWalker::Stage2Walk::finish ( const Fault fault,
const RequestPtr req,
ThreadContext tc,
BaseMMU::Mode  mode 
)
virtual

◆ markDelayed()

void gem5::ArmISA::TableWalker::Stage2Walk::markDelayed ( )
inlinevirtual

Signal that the translation has been delayed due to a hw page table walk.

Implements gem5::BaseMMU::Translation.

Definition at line 922 of file table_walker.hh.

◆ setVirt()

void gem5::ArmISA::TableWalker::Stage2Walk::setVirt ( Addr  vaddr,
int  size,
Request::Flags  flags,
int  requestorId 
)
inline

◆ translateTiming()

void gem5::TableWalker::Stage2Walk::translateTiming ( ThreadContext tc)

Definition at line 2496 of file table_walker.cc.

References gem5::BaseMMU::Read.

Referenced by gem5::ArmISA::TableWalker::readDataTimed().

Member Data Documentation

◆ data

uint8_t* gem5::ArmISA::TableWalker::Stage2Walk::data
private

Definition at line 909 of file table_walker.hh.

◆ event

Event* gem5::ArmISA::TableWalker::Stage2Walk::event
private

Definition at line 912 of file table_walker.hh.

◆ fault

Fault gem5::ArmISA::TableWalker::Stage2Walk::fault

Definition at line 917 of file table_walker.hh.

◆ numBytes

int gem5::ArmISA::TableWalker::Stage2Walk::numBytes
private

Definition at line 910 of file table_walker.hh.

Referenced by setVirt().

◆ oVAddr

Addr gem5::ArmISA::TableWalker::Stage2Walk::oVAddr
private

Definition at line 914 of file table_walker.hh.

◆ parent

TableWalker& gem5::ArmISA::TableWalker::Stage2Walk::parent
private

Definition at line 913 of file table_walker.hh.

◆ req

RequestPtr gem5::ArmISA::TableWalker::Stage2Walk::req
private

Definition at line 911 of file table_walker.hh.

Referenced by setVirt(), and Stage2Walk().


The documentation for this class was generated from the following files:

Generated on Tue Sep 21 2021 12:28:42 for gem5 by doxygen 1.8.17