Go to the documentation of this file.
58 #ifndef __MEM_EXTERNAL_SLAVE_HH__
59 #define __MEM_EXTERNAL_SLAVE_HH__
62 #include "params/ExternalSlave.hh"
102 const std::string &port_data) = 0;
140 void init()
override;
145 #endif //__MEM_EXTERNAL_SLAVE_HH__
int16_t PortID
Port index/ID type, and a symbolic name for an invalid port id.
static void registerHandler(const std::string &handler_name, Handler *handler)
Register a handler which can provide ports with port_type == handler_name.
std::string portName
Name of the bound port.
std::string portType
Key to select a port handler.
std::string portData
Handler-specific port configuration.
Derive from this class to create an external port interface.
const PortID InvalidPortID
Port & getPort(const std::string &if_name, PortID idx=InvalidPortID) override
Port interface.
ExternalPort(const std::string &name_, ExternalSlave &owner_)
void init() override
init() is called after all C++ SimObjects have been created and all ports are connected.
virtual std::string name() const
const Params & params() const
ExternalPort * externalPort
The peer port for the gem5 port "port".
Abstract superclass for simulation objects.
static std::map< std::string, Handler * > portHandlers
Registered handlers.
A ResponsePort is a specialization of a port.
Ports are used to interface objects to each other.
ExternalSlave(const ExternalSlaveParams ¶ms)
AddrRangeList getAddrRanges() const
Any or all of recv...
AddrRangeList addrRanges
The Range of addresses supported by the devices on the external side of this port.
virtual ExternalPort * getExternalPort(const std::string &name, ExternalSlave &owner, const std::string &port_data)=0
Create or find an external port which can be bound.
Reference material can be found at the JEDEC website: UFS standard http://www.jedec....
Generated on Sun Jul 30 2023 01:56:58 for gem5 by doxygen 1.8.17