From: Andreas Sandberg Date: Mon, 9 Apr 2018 22:16:13 +0000 (+0000) Subject: ps2: Implement the keyboard reset command X-Git-Tag: v19.0.0.0~2162 X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=7789e9aa75ba82a0bc52dc8b2b44fa9b16234173;p=gem5.git ps2: Implement the keyboard reset command Linux tries to reset the PS/2 keyboard at boot. Change-Id: I727fbf6138b654885d82d85be9d964ee3d3365ef Signed-off-by: Andreas Sandberg Reviewed-by: Giacomo Travaglini Reviewed-on: https://gem5-review.googlesource.com/9766 Reviewed-by: Gabe Black Maintainer: Gabe Black --- diff --git a/src/dev/ps2/keyboard.cc b/src/dev/ps2/keyboard.cc index 1f8b54411..c9bc21986 100644 --- a/src/dev/ps2/keyboard.cc +++ b/src/dev/ps2/keyboard.cc @@ -127,6 +127,12 @@ PS2Keyboard::recv(const std::vector &data) enabled = false; sendAck(); return true; + case Reset: + DPRINTF(PS2, "Resetting keyboard.\n"); + sendAck(); + enabled = true; + send(Ps2::SelfTestPass); + return true; case AllKeysToTypematic: panic("Setting all keys to typemantic unimplemented.\n"); case AllKeysToMakeRelease: @@ -144,8 +150,6 @@ PS2Keyboard::recv(const std::vector &data) panic("Setting key to make only unimplemented.\n"); case Resend: panic("Keyboard resend unimplemented.\n"); - case Reset: - panic("Keyboard reset unimplemented.\n"); default: panic("Unknown keyboard command %#02x.\n", data[0]); }