diff options
Diffstat (limited to 'src/dev')
-rw-r--r-- | src/dev/x86/i82094aa.cc | 9 | ||||
-rw-r--r-- | src/dev/x86/i82094aa.hh | 2 | ||||
-rw-r--r-- | src/dev/x86/intdev.cc | 2 | ||||
-rw-r--r-- | src/dev/x86/intdev.hh | 1 |
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; } |