intdev.cc (8914:8c3bd7bea667) intdev.cc (8922:17f037ad8918)
1/*
2 * Copyright (c) 2012 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

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

38 * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
39 *
40 * Authors: Gabe Black
41 */
42
43#include "dev/x86/intdev.hh"
44
45void
1/*
2 * Copyright (c) 2012 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

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

38 * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
39 *
40 * Authors: Gabe Black
41 */
42
43#include "dev/x86/intdev.hh"
44
45void
46X86ISA::IntDev::IntPort::sendMessage(ApicList apics, TriggerIntMessage message,
47 bool timing)
46X86ISA::IntDev::IntMasterPort::sendMessage(ApicList apics,
47 TriggerIntMessage message,
48 bool timing)
48{
49 ApicList::iterator apicIt;
50 for (apicIt = apics.begin(); apicIt != apics.end(); apicIt++) {
51 PacketPtr pkt = buildIntRequest(*apicIt, message);
52 if (timing) {
53 queue.schedSendTiming(pkt, curTick() + latency);
54 // The target handles cleaning up the packet in timing mode.
55 } else {

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

62 delete pkt;
63 }
64 }
65}
66
67void
68X86ISA::IntDev::init()
69{
49{
50 ApicList::iterator apicIt;
51 for (apicIt = apics.begin(); apicIt != apics.end(); apicIt++) {
52 PacketPtr pkt = buildIntRequest(*apicIt, message);
53 if (timing) {
54 queue.schedSendTiming(pkt, curTick() + latency);
55 // The target handles cleaning up the packet in timing mode.
56 } else {

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

63 delete pkt;
64 }
65 }
66}
67
68void
69X86ISA::IntDev::init()
70{
70 if (!intPort.isConnected()) {
71 if (!intMasterPort.isConnected()) {
71 panic("Int port not connected to anything!");
72 }
72 panic("Int port not connected to anything!");
73 }
73 intPort.sendRangeChange();
74}
75
76X86ISA::IntSourcePin *
77X86IntSourcePinParams::create()
78{
79 return new X86ISA::IntSourcePin(this);
80}
81
82X86ISA::IntSinkPin *
83X86IntSinkPinParams::create()
84{
85 return new X86ISA::IntSinkPin(this);
86}
87
88X86ISA::IntLine *
89X86IntLineParams::create()
90{
91 return new X86ISA::IntLine(this);
92}
74}
75
76X86ISA::IntSourcePin *
77X86IntSourcePinParams::create()
78{
79 return new X86ISA::IntSourcePin(this);
80}
81
82X86ISA::IntSinkPin *
83X86IntSinkPinParams::create()
84{
85 return new X86ISA::IntSinkPin(this);
86}
87
88X86ISA::IntLine *
89X86IntLineParams::create()
90{
91 return new X86ISA::IntLine(this);
92}