summaryrefslogtreecommitdiff
path: root/src/mem/mport.cc
diff options
context:
space:
mode:
Diffstat (limited to 'src/mem/mport.cc')
-rw-r--r--src/mem/mport.cc17
1 files changed, 13 insertions, 4 deletions
diff --git a/src/mem/mport.cc b/src/mem/mport.cc
index 2c57030b1..9af394d27 100644
--- a/src/mem/mport.cc
+++ b/src/mem/mport.cc
@@ -43,17 +43,26 @@
#include "mem/mport.hh"
Tick
-MessagePort::recvAtomic(PacketPtr pkt)
+MessageSlavePort::recvAtomic(PacketPtr pkt)
{
if (pkt->cmd == MemCmd::MessageReq) {
return recvMessage(pkt);
- } else if (pkt->cmd == MemCmd::MessageResp) {
+ } else {
+ panic("%s received unexpected atomic command %s from %s.\n",
+ name(), pkt->cmd.toString(), getMasterPort().name());
+ }
+}
+
+Tick
+MessageMasterPort::recvAtomic(PacketPtr pkt)
+{
+ if (pkt->cmd == MemCmd::MessageResp) {
// normally we would never see responses in recvAtomic, but
// since the timing port uses recvAtomic to implement
- // recvTiming we have to deal with both cases
+ // recvTiming we have to deal with them here
return recvResponse(pkt);
} else {
panic("%s received unexpected atomic command %s from %s.\n",
- name(), pkt->cmd.toString(), getPeer()->name());
+ name(), pkt->cmd.toString(), getSlavePort().name());
}
}