summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/dev/x86/i82094aa.cc9
-rw-r--r--src/dev/x86/i82094aa.hh2
-rw-r--r--src/dev/x86/intdev.cc2
-rw-r--r--src/dev/x86/intdev.hh1
4 files changed, 12 insertions, 2 deletions
diff --git a/src/dev/x86/i82094aa.cc b/src/dev/x86/i82094aa.cc
index 44fa29154..ffc631210 100644
--- a/src/dev/x86/i82094aa.cc
+++ b/src/dev/x86/i82094aa.cc
@@ -88,6 +88,15 @@ X86ISA::I82094AA::getIntAddrRange() const
}
Tick
+X86ISA::I82094AA::recvResponse(PacketPtr pkt)
+{
+ // Packet instantiated calling sendMessage() in signalInterrupt()
+ delete pkt->req;
+ delete pkt;
+ return 0;
+}
+
+Tick
X86ISA::I82094AA::read(PacketPtr pkt)
{
assert(pkt->getSize() == 4);
diff --git a/src/dev/x86/i82094aa.hh b/src/dev/x86/i82094aa.hh
index afa597e65..d047a49da 100644
--- a/src/dev/x86/i82094aa.hh
+++ b/src/dev/x86/i82094aa.hh
@@ -105,6 +105,8 @@ class I82094AA : public BasicPioDevice, public IntDevice
BaseMasterPort &getMasterPort(const std::string &if_name,
PortID idx = InvalidPortID);
+ Tick recvResponse(PacketPtr pkt) M5_ATTR_OVERRIDE;
+
void signalInterrupt(int line);
void raiseInterruptPin(int number);
void lowerInterruptPin(int number);
diff --git a/src/dev/x86/intdev.cc b/src/dev/x86/intdev.cc
index 883073302..a35f76b5f 100644
--- a/src/dev/x86/intdev.cc
+++ b/src/dev/x86/intdev.cc
@@ -59,8 +59,6 @@ X86ISA::IntDevice::IntMasterPort::sendMessage(ApicList apics,
assert(pkt->isResponse());
// also ignore the latency in handling the response
recvResponse(pkt);
- delete pkt->req;
- delete pkt;
}
}
}
diff --git a/src/dev/x86/intdev.hh b/src/dev/x86/intdev.hh
index d63e64010..65ad8727d 100644
--- a/src/dev/x86/intdev.hh
+++ b/src/dev/x86/intdev.hh
@@ -150,6 +150,7 @@ class IntDevice
virtual Tick
recvResponse(PacketPtr pkt)
{
+ panic("recvResponse not implemented.\n");
return 0;
}