gem5 v24.0.0.0
Loading...
Searching...
No Matches
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, 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
 
Eventevent
 
TableWalkerparent
 
Addr oVAddr
 
BaseMMU::Mode mode
 
MMU::ArmTranslationType tranType
 

Detailed Description

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.

Constructor & Destructor Documentation

◆ Stage2Walk()

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.

Member Function Documentation

◆ finish()

◆ 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 1024 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 2497 of file table_walker.cc.

References gem5::ArmISA::mode.

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

Member Data Documentation

◆ data

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

Definition at line 1008 of file table_walker.hh.

◆ event

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

Definition at line 1011 of file table_walker.hh.

◆ fault

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

Definition at line 1018 of file table_walker.hh.

◆ mode

BaseMMU::Mode gem5::ArmISA::TableWalker::Stage2Walk::mode
private

Definition at line 1014 of file table_walker.hh.

◆ numBytes

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

Definition at line 1009 of file table_walker.hh.

Referenced by setVirt().

◆ oVAddr

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

Definition at line 1013 of file table_walker.hh.

◆ parent

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

Definition at line 1012 of file table_walker.hh.

◆ req

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

Definition at line 1010 of file table_walker.hh.

Referenced by setVirt(), and Stage2Walk().

◆ tranType

MMU::ArmTranslationType gem5::ArmISA::TableWalker::Stage2Walk::tranType
private

Definition at line 1015 of file table_walker.hh.


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

Generated on Tue Jun 18 2024 16:24:17 for gem5 by doxygen 1.11.0