diff --git a/src/ec/it8587e/kbc.c b/src/ec/it8587e/kbc.c index 98e366b..7a3c935 100644 --- a/src/ec/it8587e/kbc.c +++ b/src/ec/it8587e/kbc.c @@ -28,12 +28,14 @@ static bool kbc_wait(struct Kbc * kbc, int timeout) { bool kbc_keyboard(struct Kbc * kbc, uint8_t data, int timeout) { if (!kbc_wait(kbc, timeout)) return false; + *(kbc->status) &= ~0x20; *(kbc->keyboard_out) = data; return true; } bool kbc_mouse(struct Kbc * kbc, uint8_t data, int timeout) { if (!kbc_wait(kbc, timeout)) return false; + *(kbc->status) |= 0x20; *(kbc->mouse_out) = data; return true; }