|
gem5 v23.0.0.1
|
Interface to the local simulated system. More...
#include <dist_etherlink.hh>
Public Member Functions | |
| LocalIface (const std::string &name, TxLink *tx, RxLink *rx, DistIface *m) | |
| bool | recvPacket (EthPacketPtr pkt) |
| void | sendDone () |
| bool | isBusy () |
Public Member Functions inherited from gem5::EtherInt | |
| EtherInt (const std::string &name, int idx=InvalidPortID) | |
| virtual | ~EtherInt () |
| const std::string & | name () const |
| Return port name (for DPRINTF). | |
| void | bind (Port &peer) override |
| Attach to a peer port. | |
| void | unbind () override |
| Dettach from a peer port. | |
| void | setPeer (EtherInt *p) |
| EtherInt * | getPeer () |
| void | recvDone () |
| virtual void | sendDone ()=0 |
| bool | sendPacket (EthPacketPtr packet) |
| virtual bool | recvPacket (EthPacketPtr packet)=0 |
| bool | askBusy () |
| virtual bool | isBusy () |
Public Member Functions inherited from gem5::Port | |
| virtual | ~Port () |
| Virtual destructor due to inheritance. | |
| Port & | getPeer () |
| Return a reference to this port's peer. | |
| const std::string | name () const |
| Return port name (for DPRINTF). | |
| PortID | getId () const |
| Get the port id. | |
| virtual void | bind (Port &peer) |
| Attach to a peer port. | |
| virtual void | unbind () |
| Dettach from a peer port. | |
| bool | isConnected () const |
| Is this port currently connected to a peer? | |
| void | takeOverFrom (Port *old) |
| A utility function to make it easier to swap out ports. | |
Private Attributes | |
| TxLink * | txLink |
Additional Inherited Members | |
Protected Member Functions inherited from gem5::Port | |
| void | reportUnbound () const |
| Port (const std::string &_name, PortID _id) | |
| Abstract base class for ports. | |
Protected Attributes inherited from gem5::EtherInt | |
| std::string | portName |
| EtherInt * | peer |
Protected Attributes inherited from gem5::Port | |
| const PortID | id |
| A numeric identifier to distinguish ports in a vector, and set to InvalidPortID in case this port is not part of a vector. | |
| Port * | _peer |
| A pointer to this port's peer. | |
| bool | _connected |
| Whether this port is currently connected to a peer port. | |
Interface to the local simulated system.
Definition at line 188 of file dist_etherlink.hh.
| gem5::DistEtherLink::LocalIface::LocalIface | ( | const std::string & | name, |
| TxLink * | tx, | ||
| RxLink * | rx, | ||
| DistIface * | m | ||
| ) |
Definition at line 245 of file dist_etherlink.cc.
References gem5::ArmISA::m, gem5::DistEtherLink::TxLink::setDistInt(), gem5::DistEtherLink::RxLink::setDistInt(), and gem5::DistEtherLink::Link::setLocalInt().
|
inlinevirtual |
Reimplemented from gem5::EtherInt.
Definition at line 199 of file dist_etherlink.hh.
References gem5::DistEtherLink::Link::busy(), and txLink.
|
inlinevirtual |
Implements gem5::EtherInt.
Definition at line 197 of file dist_etherlink.hh.
References gem5::DistEtherLink::TxLink::transmit(), and txLink.
|
inlinevirtual |
Implements gem5::EtherInt.
Definition at line 198 of file dist_etherlink.hh.
References gem5::EtherInt::peer, and gem5::EtherInt::sendDone().
Referenced by gem5::DistEtherLink::TxLink::txDone().
|
private |
Definition at line 191 of file dist_etherlink.hh.
Referenced by isBusy(), and recvPacket().