summaryrefslogtreecommitdiff
path: root/src/dev/ps2/touchkit.hh
diff options
context:
space:
mode:
authorAndreas Sandberg <andreas.sandberg@arm.com>2018-04-09 20:07:52 +0100
committerAndreas Sandberg <andreas.sandberg@arm.com>2018-04-17 11:16:26 +0000
commit8f94eeac0c2cd35f883944e5d552a428027a0d70 (patch)
tree2050149cbdcf34eff829e806655c08b7ac5775bc /src/dev/ps2/touchkit.hh
parentc85d51e6d62a9591bd5b99dcb0146aae5dbee43f (diff)
downloadgem5-8f94eeac0c2cd35f883944e5d552a428027a0d70.tar.xz
ps2: Unify device data buffering
All PS/2 device currently implement various ad-hoc mechanisms to handle multi-byte commands. This is error-prone and makes it hard to implement new devices. Create a buffering mechanism in the base class to avoid this. Change-Id: If5638b0ab68decea8de7631ecead0a9ebad1547b Signed-off-by: Andreas Sandberg <andreas.sandberg@arm.com> Reviewed-by: Giacomo Travaglini <giacomo.travaglini@arm.com> Reviewed-on: https://gem5-review.googlesource.com/9765 Reviewed-by: Gabe Black <gabeblack@google.com>
Diffstat (limited to 'src/dev/ps2/touchkit.hh')
-rw-r--r--src/dev/ps2/touchkit.hh9
1 files changed, 1 insertions, 8 deletions
diff --git a/src/dev/ps2/touchkit.hh b/src/dev/ps2/touchkit.hh
index 4541f3f29..fa1bc52a4 100644
--- a/src/dev/ps2/touchkit.hh
+++ b/src/dev/ps2/touchkit.hh
@@ -57,7 +57,7 @@ class PS2TouchKit : public PS2Device, public VncMouse
void unserialize(CheckpointIn &cp) override;
protected: // PS2Device
- void recv(uint8_t data) override;
+ bool recv(const std::vector<uint8_t> &data) override;
public: // VncMouse
void mouseAt(uint16_t x, uint16_t y, uint8_t buttons) override;
@@ -67,13 +67,6 @@ class PS2TouchKit : public PS2Device, public VncMouse
VncInput *const vnc;
/**
- * If the controller should ignore the next N data bytes and
- * acknowledge them. This occurs when the driver is attempting to
- * setup some feature we don't care about.
- */
- int ackNext;
-
- /**
* Has the driver been initialized in TouchKit mode? The model
* suppresses touch event generation until this is true.
*/