Go to the documentation of this file.
46 #ifndef __DEV_PCI_COPY_ENGINE_HH__
47 #define __DEV_PCI_COPY_ENGINE_HH__
54 #include "params/CopyEngine.hh"
99 {
panic(
"CopyEngineChannel has no I/O access\n");}
101 {
panic(
"CopyEngineChannel has no I/O access\n"); }
171 #endif //__DEV_PCI_COPY_ENGINE_HH__
void continueProcessing()
std::vector< CopyEngineChannel * > chan
Tick write(PacketPtr pkt) override
Pure virtual function that the device must implement.
virtual Tick write(PacketPtr pkt)
Tick read(PacketPtr pkt) override
Pure virtual function that the device must implement.
uint64_t completionDataReg
const PortID InvalidPortID
Basic support for object serialization.
void channelWrite(PacketPtr pkt, Addr daddr, int size)
uint64_t Tick
Tick count type.
void fetchDescriptor(Addr address)
DrainState drain() override
Draining is the process of clearing out the states of SimObjects.These are the SimObjects that are pa...
int16_t PortID
Port index/ID type, and a symbolic name for an invalid port id.
void channelRead(PacketPtr pkt, Addr daddr, int size)
A vector of scalar stats.
EventFunctionWrapper fetchCompleteEvent
EventFunctionWrapper addrCompleteEvent
EventFunctionWrapper readCompleteEvent
DrainState
Object drain/handover states.
void writeCopyBytesComplete()
Port & getPort(const std::string &if_name, PortID idx=InvalidPortID) override
Get a port with a given name and index.
virtual Tick read(PacketPtr pkt)
Stats::Vector copiesProcessed
CopyEngine::CopyEngineStats copyEngineStats
CopyEngineReg::DmaDesc * curDmaDesc
Interface for objects that might require draining before checkpointing.
void writeCompletionStatus()
void restartStateMachine()
Ports are used to interface objects to each other.
void readCopyBytesComplete()
void unserialize(CheckpointIn &cp) override
Unserialize an object.
void fetchNextAddr(Addr address)
CopyEngineChannel(CopyEngine *_ce, int cid)
CopyEngineReg::ChanRegs cr
uint64_t Addr
Address type This will probably be moved somewhere else in the near future.
virtual const std::string name() const
CopyEngine(const Params ¶ms)
void serialize(CheckpointOut &cp) const override
Serialize an object.
Stats::Vector bytesCopied
void writeStatusComplete()
A Packet is used to encapsulate a transfer between two objects in the memory system (e....
EventFunctionWrapper writeCompleteEvent
EventFunctionWrapper statusCompleteEvent
void serialize(CheckpointOut &cp) const override
Serialize an object.
CopyEngineStats(Stats::Group *parent, const uint8_t &channel_count)
std::ostream CheckpointOut
void drainResume() override
Resume execution after a successful drain.
const Params & params() const
virtual ~CopyEngineChannel()
void unserialize(CheckpointIn &cp) override
Unserialize an object.
std::string csprintf(const char *format, const Args &...args)
PCI device, base implementation is only config space.
#define panic(...)
This implements a cprintf based panic() function.
Generated on Tue Mar 23 2021 19:41:26 for gem5 by doxygen 1.8.17