fixed serialization in tsunami_io and tsunami_uart and console

dev/console.cc:
dev/tsunami_io.cc:
dev/tsunami_uart.cc:
    fixed serialization

--HG--
extra : convert_revision : 1608a116b00007922fa382ddb0c10442a8724f8d
This commit is contained in:
Ali Saidi 2004-06-04 14:26:17 -04:00
parent 07448480fc
commit df45c7b404
3 changed files with 27 additions and 0 deletions

View file

@ -377,11 +377,15 @@ SimConsole::setPlatform(Platform *p)
void
SimConsole::serialize(ostream &os)
{
SERIALIZE_SCALAR(_status);
SERIALIZE_SCALAR(_enable);
}
void
SimConsole::unserialize(Checkpoint *cp, const std::string &section)
{
UNSERIALIZE_SCALAR(_status);
UNSERIALIZE_SCALAR(_enable);
}

View file

@ -380,6 +380,10 @@ TsunamiIO::serialize(std::ostream &os)
{
SERIALIZE_SCALAR(timerData);
SERIALIZE_SCALAR(uip);
SERIALIZE_SCALAR(mask1);
SERIALIZE_SCALAR(mask2);
SERIALIZE_SCALAR(mode1);
SERIALIZE_SCALAR(mode2);
SERIALIZE_SCALAR(picr);
SERIALIZE_SCALAR(picInterrupting);
Tick time0when = timer0.when();
@ -388,6 +392,7 @@ TsunamiIO::serialize(std::ostream &os)
SERIALIZE_SCALAR(time0when);
SERIALIZE_SCALAR(time2when);
SERIALIZE_SCALAR(rtcwhen);
SERIALIZE_SCALAR(RTCAddress);
}
@ -396,6 +401,10 @@ TsunamiIO::unserialize(Checkpoint *cp, const std::string &section)
{
UNSERIALIZE_SCALAR(timerData);
UNSERIALIZE_SCALAR(uip);
UNSERIALIZE_SCALAR(mask1);
UNSERIALIZE_SCALAR(mask2);
UNSERIALIZE_SCALAR(mode1);
UNSERIALIZE_SCALAR(mode2);
UNSERIALIZE_SCALAR(picr);
UNSERIALIZE_SCALAR(picInterrupting);
Tick time0when;
@ -407,6 +416,7 @@ TsunamiIO::unserialize(Checkpoint *cp, const std::string &section)
timer0.reschedule(time0when);
timer2.reschedule(time2when);
rtc.reschedule(rtcwhen);
UNSERIALIZE_SCALAR(RTCAddress);
}
BEGIN_DECLARE_SIM_OBJECT_PARAMS(TsunamiIO)

View file

@ -255,6 +255,14 @@ TsunamiUart::serialize(ostream &os)
SERIALIZE_SCALAR(next_char);
SERIALIZE_SCALAR(valid_char);
SERIALIZE_SCALAR(IER);
Tick intrwhen;
if (intrEvent.scheduled())
intrwhen = intrEvent.when();
else
intrwhen = 0;
SERIALIZE_SCALAR(intrwhen);
}
void
@ -264,6 +272,11 @@ TsunamiUart::unserialize(Checkpoint *cp, const std::string &section)
UNSERIALIZE_SCALAR(next_char);
UNSERIALIZE_SCALAR(valid_char);
UNSERIALIZE_SCALAR(IER);
Tick intrwhen;
UNSERIALIZE_SCALAR(intrwhen);
if (intrwhen != 0)
intrEvent.schedule(intrwhen);
}
BEGIN_DECLARE_SIM_OBJECT_PARAMS(TsunamiUart)