summaryrefslogtreecommitdiff
path: root/src/dev/x86/i82094aa.hh
diff options
context:
space:
mode:
authorGabe Black <gblack@eecs.umich.edu>2009-04-26 02:06:21 -0700
committerGabe Black <gblack@eecs.umich.edu>2009-04-26 02:06:21 -0700
commitc5e2cf841d2502479a8f00c20ab70ab9ae325d69 (patch)
treecddec849e22944583155adb0400511c1773346e3 /src/dev/x86/i82094aa.hh
parent8d84f81e7041bd26320b0795800100f2aa298965 (diff)
downloadgem5-c5e2cf841d2502479a8f00c20ab70ab9ae325d69.tar.xz
X86: Record the initial APIC ID which identifies an APIC in M5.
The ID as exposed to software can be changed. Tracking those changes in M5 would be cumbersome, especially since there's no guarantee the IDs will remain unique.
Diffstat (limited to 'src/dev/x86/i82094aa.hh')
-rw-r--r--src/dev/x86/i82094aa.hh6
1 files changed, 4 insertions, 2 deletions
diff --git a/src/dev/x86/i82094aa.hh b/src/dev/x86/i82094aa.hh
index 598e218f8..7501259c1 100644
--- a/src/dev/x86/i82094aa.hh
+++ b/src/dev/x86/i82094aa.hh
@@ -68,6 +68,7 @@ class I82094AA : public PioDevice, public IntDev
I8259 * extIntPic;
uint8_t regSel;
+ uint8_t initialApicId;
uint8_t id;
uint8_t arbId;
@@ -103,8 +104,9 @@ class I82094AA : public PioDevice, public IntDev
void getIntAddrRange(AddrRangeList &range_list)
{
range_list.clear();
- range_list.push_back(RangeEx(x86InterruptAddress(id, 0),
- x86InterruptAddress(id, 0) + PhysAddrAPICRangeSize));
+ range_list.push_back(RangeEx(x86InterruptAddress(initialApicId, 0),
+ x86InterruptAddress(initialApicId, 0) +
+ PhysAddrAPICRangeSize));
}
void writeReg(uint8_t offset, uint32_t value);