summaryrefslogtreecommitdiff
path: root/src/arch/x86/interrupts.hh
diff options
context:
space:
mode:
Diffstat (limited to 'src/arch/x86/interrupts.hh')
-rw-r--r--src/arch/x86/interrupts.hh22
1 files changed, 2 insertions, 20 deletions
diff --git a/src/arch/x86/interrupts.hh b/src/arch/x86/interrupts.hh
index 26699b01e..bfd188961 100644
--- a/src/arch/x86/interrupts.hh
+++ b/src/arch/x86/interrupts.hh
@@ -92,26 +92,8 @@ class Interrupts : public BasicPioDevice, IntDevice
/*
* Timing related stuff.
*/
- class ApicTimerEvent : public Event
- {
- private:
- Interrupts *localApic;
- public:
- ApicTimerEvent(Interrupts *_localApic) :
- Event(), localApic(_localApic)
- {}
-
- void process()
- {
- assert(localApic);
- if (localApic->triggerTimerInterrupt()) {
- localApic->setReg(APIC_INITIAL_COUNT,
- localApic->readReg(APIC_INITIAL_COUNT));
- }
- }
- };
-
- ApicTimerEvent apicTimerEvent;
+ EventFunctionWrapper apicTimerEvent;
+ void processApicTimerEvent();
/*
* A set of variables to keep track of interrupts that don't go through