summaryrefslogtreecommitdiff
path: root/src/cpu
diff options
context:
space:
mode:
authorAndreas Hansson <andreas.hansson@arm.com>2013-02-19 05:56:06 -0500
committerAndreas Hansson <andreas.hansson@arm.com>2013-02-19 05:56:06 -0500
commit5c7ebee434a0328802c01b38c19845c50ae75cab (patch)
treefff45deda9f6abdf58a4ba9b103e4b1a8d9460af /src/cpu
parent86a4d092691bdcdc7b60f7cacd7d5b5c54d9a1ca (diff)
downloadgem5-5c7ebee434a0328802c01b38c19845c50ae75cab.tar.xz
x86: Move APIC clock divider to Python
This patch moves the 16x APIC clock divider to the Python code to avoid the post-instantiation modifications to the clock. The x86 APIC was the only object setting the clock after creation time and this required some custom functionality and configuration. With this patch, the clock multiplier is moved to the Python code and the objects are instantiated with the appropriate clock.
Diffstat (limited to 'src/cpu')
-rw-r--r--src/cpu/BaseCPU.py5
1 files changed, 3 insertions, 2 deletions
diff --git a/src/cpu/BaseCPU.py b/src/cpu/BaseCPU.py
index 4fc2ebf1b..5e1a0a961 100644
--- a/src/cpu/BaseCPU.py
+++ b/src/cpu/BaseCPU.py
@@ -221,8 +221,9 @@ class BaseCPU(MemObject):
elif buildEnv['TARGET_ISA'] == 'alpha':
self.interrupts = AlphaInterrupts()
elif buildEnv['TARGET_ISA'] == 'x86':
- _localApic = X86LocalApic(pio_addr=0x2000000000000000)
- self.interrupts = _localApic
+ self.interrupts = X86LocalApic(clock = Parent.clock * 16,
+ pio_addr=0x2000000000000000)
+ _localApic = self.interrupts
elif buildEnv['TARGET_ISA'] == 'mips':
self.interrupts = MipsInterrupts()
elif buildEnv['TARGET_ISA'] == 'arm':