i82094aa.hh (5657:7539092b28ac) i82094aa.hh (5827:ac2c268bf4f1)
1/*
2 * Copyright (c) 2008 The Regents of The University of Michigan
3 * All rights reserved.
4 *
5 * Redistribution and use in source and binary forms, with or without
6 * modification, are permitted provided that the following conditions are
7 * met: redistributions of source code must retain the above copyright
8 * notice, this list of conditions and the following disclaimer;

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

72 uint8_t arbId;
73
74 static const uint8_t TableSize = 24;
75 // This implementation is based on version 0x11, but 0x14 avoids having
76 // to deal with the arbitration and APIC bus guck.
77 static const uint8_t APICVersion = 0x14;
78
79 RedirTableEntry redirTable[TableSize];
1/*
2 * Copyright (c) 2008 The Regents of The University of Michigan
3 * All rights reserved.
4 *
5 * Redistribution and use in source and binary forms, with or without
6 * modification, are permitted provided that the following conditions are
7 * met: redistributions of source code must retain the above copyright
8 * notice, this list of conditions and the following disclaimer;

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

72 uint8_t arbId;
73
74 static const uint8_t TableSize = 24;
75 // This implementation is based on version 0x11, but 0x14 avoids having
76 // to deal with the arbitration and APIC bus guck.
77 static const uint8_t APICVersion = 0x14;
78
79 RedirTableEntry redirTable[TableSize];
80 bool pinStates[TableSize];
80
81 public:
82 typedef I82094AAParams Params;
83
84 const Params *
85 params() const
86 {
87 return dynamic_cast<const Params *>(_params);
88 }
89
90 I82094AA(Params *p);
91
81
82 public:
83 typedef I82094AAParams Params;
84
85 const Params *
86 params() const
87 {
88 return dynamic_cast<const Params *>(_params);
89 }
90
91 I82094AA(Params *p);
92
92 void
93 setExtIntPic(I8259 * pic)
94 {
95 extIntPic = pic;
96 }
97
98 Tick read(PacketPtr pkt);
99 Tick write(PacketPtr pkt);
100
101 void addressRanges(AddrRangeList &range_list)
102 {
103 range_list.clear();
104 range_list.push_back(RangeEx(pioAddr, pioAddr + 4));
105 range_list.push_back(RangeEx(pioAddr + 16, pioAddr + 20));

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

118 Port *getPort(const std::string &if_name, int idx = -1)
119 {
120 if (if_name == "int_port")
121 return intPort;
122 return PioDevice::getPort(if_name, idx);
123 }
124
125 void signalInterrupt(int line);
93 Tick read(PacketPtr pkt);
94 Tick write(PacketPtr pkt);
95
96 void addressRanges(AddrRangeList &range_list)
97 {
98 range_list.clear();
99 range_list.push_back(RangeEx(pioAddr, pioAddr + 4));
100 range_list.push_back(RangeEx(pioAddr + 16, pioAddr + 20));

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

113 Port *getPort(const std::string &if_name, int idx = -1)
114 {
115 if (if_name == "int_port")
116 return intPort;
117 return PioDevice::getPort(if_name, idx);
118 }
119
120 void signalInterrupt(int line);
121 void raiseInterruptPin(int number);
122 void lowerInterruptPin(int number);
126};
127
128}; // namespace X86ISA
129
130#endif //__DEV_X86_SOUTH_BRIDGE_I8254_HH__
123};
124
125}; // namespace X86ISA
126
127#endif //__DEV_X86_SOUTH_BRIDGE_I8254_HH__