Go to the documentation of this file.
38 #ifndef __ARCH_X86_PAGE_TABLE_WALKER_HH__
39 #define __ARCH_X86_PAGE_TABLE_WALKER_HH__
48 #include "params/X86PagetableWalker.hh"
120 const RequestPtr &_req,
bool _isFunctional =
false) :
129 bool _isTiming =
false);
216 #endif // __ARCH_X86_PAGE_TABLE_WALKER_HH__
int16_t PortID
Port index/ID type, and a symbolic name for an invalid port id.
WalkerPort(const std::string &_name, Walker *_walker)
BaseMMU::Translation * translation
bool recvTimingResp(PacketPtr pkt)
Port & getPort(const std::string &if_name, PortID idx=InvalidPortID) override
Get a port with a given name and index.
std::vector< PacketPtr > writes
Fault startFunctional(Addr &addr, unsigned &logBytes)
Fault start(ThreadContext *_tc, BaseMMU::Translation *translation, const RequestPtr &req, BaseMMU::Mode mode)
WalkerState(Walker *_walker, BaseMMU::Translation *_translation, const RequestPtr &_req, bool _isFunctional=false)
std::list< WalkerState * > currStates
const PortID InvalidPortID
void setupWalk(Addr vaddr)
bool recvPacket(PacketPtr pkt)
A RequestPort is a specialisation of a Port, which implements the default protocol for the three diff...
ThreadContext is the external interface to all thread state for anything outside of the CPU.
virtual std::string name() const
std::shared_ptr< FaultBase > Fault
const Params & params() const
A Packet is used to encapsulate a transfer between two objects in the memory system (e....
X86PagetableWalkerParams Params
bool sendTiming(WalkerState *sendingState, PacketPtr pkt)
std::shared_ptr< Request > RequestPtr
WalkerSenderState(WalkerState *_senderWalk)
A virtual base opaque structure used to hold state associated with the packet (e.g....
uint64_t Addr
Address type This will probably be moved somewhere else in the near future.
The ClockedObject class extends the SimObject with a clock and accessor functions to relate ticks to ...
Walker(const Params ¶ms)
void recvReqRetry()
Called by the peer if sendTimingReq was called on this peer (causing recvTimingReq to be called on th...
Fault startFunctional(ThreadContext *_tc, Addr &addr, unsigned &logBytes, BaseMMU::Mode mode)
Ports are used to interface objects to each other.
unsigned numInflight() const
EventFunctionWrapper startWalkWrapperEvent
Event used to call startWalkWrapper.
Fault stepWalk(PacketPtr &write)
Reference material can be found at the JEDEC website: UFS standard http://www.jedec....
Fault pageFault(bool present)
void initState(ThreadContext *_tc, BaseMMU::Mode _mode, bool _isTiming=false)
bool recvTimingResp(PacketPtr pkt)
Receive a timing response from the peer.
Generated on Sun Jul 30 2023 01:56:47 for gem5 by doxygen 1.8.17