/gem5/src/mem/protocol/ |
H A D | timing.cc | 50 TimingRequestProtocol::sendReq(TimingResponseProtocol *peer, PacketPtr pkt) argument 53 return peer->recvTimingReq(pkt); 58 TimingResponseProtocol *peer, PacketPtr pkt) const 61 return peer->tryTiming(pkt); 66 TimingResponseProtocol *peer, PacketPtr pkt) 69 return peer->recvTimingSnoopResp(pkt); 73 TimingRequestProtocol::sendRetryResp(TimingResponseProtocol *peer) argument 75 peer->recvRespRetry(); 81 TimingResponseProtocol::sendResp(TimingRequestProtocol *peer, PacketPtr pkt) argument 84 return peer 57 trySend( TimingResponseProtocol *peer, PacketPtr pkt) const argument 65 sendSnoopResp( TimingResponseProtocol *peer, PacketPtr pkt) argument 88 sendSnoopReq( TimingRequestProtocol *peer, PacketPtr pkt) argument 96 sendRetryReq(TimingRequestProtocol *peer) argument 102 sendRetrySnoopResp(TimingRequestProtocol *peer) argument [all...] |
H A D | functional.cc | 51 FunctionalResponseProtocol *peer, PacketPtr pkt) const 54 return peer->recvFunctional(pkt); 61 FunctionalRequestProtocol *peer, PacketPtr pkt) const 64 return peer->recvFunctionalSnoop(pkt); 50 send( FunctionalResponseProtocol *peer, PacketPtr pkt) const argument 60 sendSnoop( FunctionalRequestProtocol *peer, PacketPtr pkt) const argument
|
H A D | atomic.cc | 52 AtomicRequestProtocol::send(AtomicResponseProtocol *peer, PacketPtr pkt) argument 55 return peer->recvAtomic(pkt); 59 AtomicRequestProtocol::sendBackdoor(AtomicResponseProtocol *peer, argument 63 return peer->recvAtomicBackdoor(pkt, backdoor); 69 AtomicResponseProtocol::sendSnoop(AtomicRequestProtocol *peer, PacketPtr pkt) argument 72 return peer->recvAtomicSnoop(pkt);
|
H A D | timing.hh | 58 * Attempt to send a timing request to the peer by calling 64 * @param peer Peer to send packet to. 69 bool sendReq(TimingResponseProtocol *peer, PacketPtr pkt); 72 * Check if the peer can handle a timing request. 78 * @param peer Peer to send packet to. 83 bool trySend(TimingResponseProtocol *peer, PacketPtr pkt) const; 86 * Attempt to send a timing snoop response packet to it's peer 94 bool sendSnoopResp(TimingResponseProtocol *peer, PacketPtr pkt); 97 * Send a retry to the peer that previously attempted a 100 void sendRetryResp(TimingResponseProtocol *peer); [all...] |
H A D | atomic.hh | 63 * @param peer Peer to send packet to. 68 Tick send(AtomicResponseProtocol *peer, PacketPtr pkt); 74 * @param peer Peer to send packet to. 81 Tick sendBackdoor(AtomicResponseProtocol *peer, PacketPtr pkt, 85 * Receive an atomic snoop request packet from our peer. 100 * @param peer Peer to send packet to. 105 Tick sendSnoop(AtomicRequestProtocol *peer, PacketPtr pkt); 108 * Receive an atomic request packet from the peer. 113 * Receive an atomic request packet from the peer, and optionally
|
H A D | functional.hh | 64 void send(FunctionalResponseProtocol *peer, PacketPtr pkt) const; 67 * Receive a functional snoop request packet from the peer. 84 void sendSnoop(FunctionalRequestProtocol *peer, PacketPtr pkt) const; 87 * Receive a functional request packet from the peer.
|
/gem5/src/dev/net/ |
H A D | etherint.cc | 37 EtherInt::bind(Port &peer) argument 39 EtherInt *p = dynamic_cast<EtherInt *>(&peer); 42 name(), peer.name()); 51 peer = nullptr; 58 if (peer && peer != p) 59 panic("You cannot change the peer once it is set.\n" 60 "Current peer=%s Desired peer=%s", peer [all...] |
H A D | etherint.hh | 53 EtherInt *peer; member in class:EtherInt 57 : Port(name, idx), portName(name), peer(NULL) {} 63 void bind(Port &peer) override; 67 EtherInt* getPeer() { return peer; } 69 void recvDone() { peer->sendDone(); } 73 { return peer ? peer->recvPacket(packet) : true; } 76 bool askBusy() {return peer->isBusy(); }
|
H A D | etherlink.hh | 136 void sendDone() { peer->sendDone(); }
|
H A D | dist_etherlink.hh | 132 * peer gem5 processes. 171 * Register our dist interface to talk to the peer gem5 processes. 193 void sendDone() { peer->sendDone(); } 200 * Interface to talk to the peer gem5 processes.
|
/gem5/src/dev/ |
H A D | intpin.cc | 35 IntSinkPinBase::bind(Port &peer) argument 37 source = dynamic_cast<IntSourcePinBase *>(&peer); 39 "incompatible port %s.", name(), peer.name()); 40 Port::bind(peer); 51 IntSourcePinBase::bind(Port &peer) argument 53 sink = dynamic_cast<IntSinkPinBase *>(&peer); 55 "incompatible port %s.", name(), peer.name()); 56 Port::bind(peer);
|
H A D | intpin.hh | 72 void bind(Port &peer) override; 106 void bind(Port &peer) override;
|
/gem5/src/sim/ |
H A D | port.hh | 77 * A pointer to this port's peer. 83 * Whether this port is currently connected to a peer port. 102 /** Return a reference to this port's peer. */ 111 /** Attach to a peer port. */ 113 bind(Port &peer) argument 115 _peer = &peer; 119 /** Dettach from a peer port. */ 127 /** Is this port currently connected to a peer? */ 137 Port &peer = old->getPeer(); local 138 assert(peer [all...] |
H A D | cxx_manager.cc | 357 /* It would be more efficient to split the peer list and 358 * save the values for peer binding later but that would 494 const std::string &peer = *peer_i; local 499 parsePort(peer, slave_object_name, slave_port_name,
|
/gem5/src/systemc/ |
H A D | sc_port_wrapper.hh | 76 bind(::Port& peer) override 79 if (auto* beer = dynamic_cast<ScPortWrapper<IF>*>(&peer)) { 82 dynamic_cast<ScInterfaceWrapper<IF>*>(&peer)) { 86 name(), peer.name()); 88 Port::bind(peer); 116 bind(::Port& peer) override 118 // fatal error if peer is neither ScPortWrapper nor ScExportWrapper 119 fatal_if(!dynamic_cast<ScPortWrapper<IF>*>(&peer) && 120 !dynamic_cast<ScExportWrapper<IF>*>(&peer), 122 name(), peer [all...] |
H A D | tlm_port_wrapper.hh | 66 bind(::Port &peer) override 68 auto *target = dynamic_cast<TargetWrapper *>(&peer); 70 "incompatible port %s.", name(), peer.name()); 73 Port::bind(peer); 102 bind(::Port &peer) override 106 Port::bind(peer);
|
/gem5/src/mem/ruby/network/ |
H A D | dummy_port.hh | 41 bind(Port &peer) override
|
/gem5/src/mem/ |
H A D | port.cc | 67 MasterPort::bind(Port &peer) argument 69 auto *slave_port = dynamic_cast<SlavePort *>(&peer); 72 name(), peer.name()); 76 Port::bind(peer);
|
H A D | port.hh | 95 void bind(Port &peer) override; 212 * Called to receive an address range change from the peer slave 251 * basic functionality of sending packets to its master peer, it also 276 * Find out if the peer master port is snooping or not. 278 * @return true if the peer master port is snooping 306 void bind(Port &peer) override {}
|
/gem5/src/python/m5/util/ |
H A D | dot_writer.py | 120 if port.peer: 124 if p.peer: 132 peer = port.peer 133 full_peer_path = re.sub('\.', '_', peer.simobj.path()) 134 full_peer_port_name = full_peer_path + "_" + peer.name 136 # Each edge is encountered twice, once for each peer. We only want one 137 # edge, so we'll arbitrarily chose which peer "wins" based on their names. 145 peer.is_source) ]
|
/gem5/src/python/m5/ |
H A D | params.py | 1864 self.peer = None # not associated with another port yet 1873 # peer and 1 if we do. 1874 return int(self.peer != None) 1876 # for config.ini, print peer's name (not ours) 1878 return str(self.peer) 1882 return {'role' : self.role, 'peer' : str(self.peer), 1888 return self.peer.simobj 1900 if self.peer and not proxy.isproxy(self.peer) [all...] |
/gem5/configs/example/ |
H A D | read_config.py | 272 peer, peer_port, whole_index, index = m.groups() 278 return (peer, self.objects_by_name[peer], peer_port, index) 293 for index, peer in zip(range(0, len(peers)), peers): 296 PortConnection.from_string(peer))) 518 """Get the 'peer' element of any node with 'peer' and 'role' 523 if port_name in obj and 'peer' in obj[port_name] and \ 525 peers = to_list(obj[port_name]['peer'])
|