diff options
Diffstat (limited to 'src/mem/ruby/system/RubyPort.cc')
-rw-r--r-- | src/mem/ruby/system/RubyPort.cc | 25 |
1 files changed, 6 insertions, 19 deletions
diff --git a/src/mem/ruby/system/RubyPort.cc b/src/mem/ruby/system/RubyPort.cc index c829bf66e..c8580bb5c 100644 --- a/src/mem/ruby/system/RubyPort.cc +++ b/src/mem/ruby/system/RubyPort.cc @@ -196,7 +196,10 @@ RubyPort::M5Port::recvTimingReq(PacketPtr pkt) "Request for address 0x%#x is assumed to be a pio request\n", pkt->getAddr()); - return ruby_port->pio_port.sendNextCycle(pkt); + // send next cycle + ruby_port->pio_port.schedTimingReq(pkt, curTick() + + g_eventQueue_ptr->getClock()); + return true; } assert(Address(pkt->getAddr()).getOffset() + pkt->getSize() <= @@ -647,30 +650,14 @@ RubyPort::M5Port::hitCallback(PacketPtr pkt) // turn packet around to go back to requester if response expected if (needsResponse) { DPRINTF(RubyPort, "Sending packet back over port\n"); - sendNextCycle(pkt); + // send next cycle + schedTimingResp(pkt, curTick() + g_eventQueue_ptr->getClock()); } else { delete pkt; } DPRINTF(RubyPort, "Hit callback done!\n"); } -bool -RubyPort::M5Port::sendNextCycle(PacketPtr pkt, bool send_as_snoop) -{ - //minimum latency, must be > 0 - queue.schedSendTiming(pkt, curTick() + (1 * g_eventQueue_ptr->getClock()), - send_as_snoop); - return true; -} - -bool -RubyPort::PioPort::sendNextCycle(PacketPtr pkt) -{ - //minimum latency, must be > 0 - queue.schedSendTiming(pkt, curTick() + (1 * g_eventQueue_ptr->getClock())); - return true; -} - AddrRangeList RubyPort::M5Port::getAddrRanges() const { |