interrupts.cc (14293:e8bb3f77458a) interrupts.cc (14295:16025a55b380)
1/*
2 * Copyright (c) 2012-2013 ARM Limited
3 * All rights reserved
4 *
5 * The license below extends only to copyright in the software and shall
6 * not be construed as granting a license to any other intellectual
7 * property including but not limited to intellectual property relating
8 * to a hardware implementation of the functionality of the software

--- 317 unchanged lines hidden (view full) ---

326 offset);
327 break;
328 }
329 pkt->makeAtomicResponse();
330 return pioDelay;
331}
332
333
1/*
2 * Copyright (c) 2012-2013 ARM Limited
3 * All rights reserved
4 *
5 * The license below extends only to copyright in the software and shall
6 * not be construed as granting a license to any other intellectual
7 * property including but not limited to intellectual property relating
8 * to a hardware implementation of the functionality of the software

--- 317 unchanged lines hidden (view full) ---

326 offset);
327 break;
328 }
329 pkt->makeAtomicResponse();
330 return pioDelay;
331}
332
333
334Tick
334bool
335X86ISA::Interrupts::recvResponse(PacketPtr pkt)
336{
337 assert(!pkt->isError());
338 assert(pkt->cmd == MemCmd::MessageResp);
339 if (--pendingIPIs == 0) {
340 InterruptCommandRegLow low = regs[APIC_INTERRUPT_COMMAND_LOW];
341 // Record that the ICR is now idle.
342 low.deliveryStatus = 0;
343 regs[APIC_INTERRUPT_COMMAND_LOW] = low;
344 }
345 DPRINTF(LocalApic, "ICR is now idle.\n");
335X86ISA::Interrupts::recvResponse(PacketPtr pkt)
336{
337 assert(!pkt->isError());
338 assert(pkt->cmd == MemCmd::MessageResp);
339 if (--pendingIPIs == 0) {
340 InterruptCommandRegLow low = regs[APIC_INTERRUPT_COMMAND_LOW];
341 // Record that the ICR is now idle.
342 low.deliveryStatus = 0;
343 regs[APIC_INTERRUPT_COMMAND_LOW] = low;
344 }
345 DPRINTF(LocalApic, "ICR is now idle.\n");
346 return 0;
346 return true;
347}
348
349
350AddrRangeList
351X86ISA::Interrupts::getAddrRanges() const
352{
353 assert(cpu);
354 AddrRangeList ranges;

--- 432 unchanged lines hidden ---
347}
348
349
350AddrRangeList
351X86ISA::Interrupts::getAddrRanges() const
352{
353 assert(cpu);
354 AddrRangeList ranges;

--- 432 unchanged lines hidden ---