summaryrefslogtreecommitdiff
path: root/src/dev/x86/i8042.hh
diff options
context:
space:
mode:
authorJoel Hestness <hestness@cs.utexas.edu>2011-02-06 22:14:18 -0800
committerJoel Hestness <hestness@cs.utexas.edu>2011-02-06 22:14:18 -0800
commit62e05ed78a0f24982e4066adb45dc220c9e200ea (patch)
tree078e21ca8e2743ca0918837a8128c9170700e05e /src/dev/x86/i8042.hh
parent911ccef6c05fff4832245414baa7b2a67955c35a (diff)
downloadgem5-62e05ed78a0f24982e4066adb45dc220c9e200ea.tar.xz
x86: Add checkpointing capability to devices
Add checkpointing capability to the Intel 8254 timer, CMOS, I8042, PS2 Keyboard and Mouse, I82094AA, I8237, I8254, I8259, and speaker devices
Diffstat (limited to 'src/dev/x86/i8042.hh')
-rw-r--r--src/dev/x86/i8042.hh11
1 files changed, 11 insertions, 0 deletions
diff --git a/src/dev/x86/i8042.hh b/src/dev/x86/i8042.hh
index 7aa59e9a7..b14d254ca 100644
--- a/src/dev/x86/i8042.hh
+++ b/src/dev/x86/i8042.hh
@@ -116,6 +116,10 @@ class PS2Mouse : public PS2Device
{}
bool processData(uint8_t data);
+
+ void serialize(const std::string &base, std::ostream &os);
+ void unserialize(const std::string &base, Checkpoint *cp,
+ const std::string &section);
};
class PS2Keyboard : public PS2Device
@@ -146,6 +150,10 @@ class PS2Keyboard : public PS2Device
public:
bool processData(uint8_t data);
+
+ void serialize(const std::string &base, std::ostream &os);
+ void unserialize(const std::string &base, Checkpoint *cp,
+ const std::string &section);
};
class I8042 : public BasicPioDevice
@@ -252,6 +260,9 @@ class I8042 : public BasicPioDevice
Tick read(PacketPtr pkt);
Tick write(PacketPtr pkt);
+
+ virtual void serialize(std::ostream &os);
+ virtual void unserialize(Checkpoint *cp, const std::string &section);
};
} // namespace X86ISA