summaryrefslogtreecommitdiff
path: root/src/dev/mc146818.cc
diff options
context:
space:
mode:
Diffstat (limited to 'src/dev/mc146818.cc')
-rw-r--r--src/dev/mc146818.cc25
1 files changed, 4 insertions, 21 deletions
diff --git a/src/dev/mc146818.cc b/src/dev/mc146818.cc
index fd70b503b..16ed58e46 100644
--- a/src/dev/mc146818.cc
+++ b/src/dev/mc146818.cc
@@ -40,7 +40,6 @@
#include "base/trace.hh"
#include "dev/mc146818.hh"
#include "dev/rtcreg.h"
-#include "sim/sim_object.hh"
using namespace std;
@@ -106,12 +105,8 @@ MC146818::MC146818(EventManager *em, const string &n, const struct tm time,
MC146818::~MC146818()
{
- if (tickEvent.scheduled()) {
- deschedule(tickEvent);
- }
- if (event.scheduled()) {
- deschedule(event);
- }
+ deschedule(tickEvent);
+ deschedule(event);
}
void
@@ -208,20 +203,6 @@ MC146818::tickClock()
setTime(*gmtime(&calTime));
}
-unsigned int
-MC146818::drain(Event *de)
-{
- if (event.scheduled()) {
- rtcTimerInterruptTickOffset = event.when() - curTick;
- rtcClockTickOffset = event.when() - curTick;
- deschedule(event);
- }
- if (tickEvent.scheduled()) {
- deschedule(tickEvent);
- }
- return 0;
-}
-
void
MC146818::serialize(const string &base, ostream &os)
{
@@ -233,7 +214,9 @@ MC146818::serialize(const string &base, ostream &os)
// save the timer tick and rtc clock tick values to correctly reschedule
// them during unserialize
//
+ Tick rtcTimerInterruptTickOffset = event.when() - curTick;
SERIALIZE_SCALAR(rtcTimerInterruptTickOffset);
+ Tick rtcClockTickOffset = event.when() - curTick;
SERIALIZE_SCALAR(rtcClockTickOffset);
}