diff --git a/OvmfPkg/VirtioInputDxe/VirtioInput.h b/OvmfPkg/VirtioInputDxe/VirtioInput.h index 6cd81f9da5..28a2e07fd2 100644 --- a/OvmfPkg/VirtioInputDxe/VirtioInput.h +++ b/OvmfPkg/VirtioInputDxe/VirtioInput.h @@ -115,7 +115,8 @@ typedef struct { CR (a, VIRTIO_INPUT_DEV, AbsolutePointer, VIRTIO_INPUT_SIG) // Bellow candidates to be included as Linux header -#define KEY_PRESSED 1 +#define KEY_RELEASED 0 +#define KEY_PRESSED 1 // // VirtioInput.c diff --git a/OvmfPkg/VirtioInputDxe/VirtioKeyboard.c b/OvmfPkg/VirtioInputDxe/VirtioKeyboard.c index 361710494f..afbd1eba17 100644 --- a/OvmfPkg/VirtioInputDxe/VirtioKeyboard.c +++ b/OvmfPkg/VirtioInputDxe/VirtioKeyboard.c @@ -191,7 +191,7 @@ VirtioKeyboardHandleEvent ( IN VIRTIO_INPUT_EVENT *Event ) { - if (Event->Value == KEY_PRESSED) { + if (Event->Value != KEY_RELEASED) { // Key pressed event received Dev->KeyActive[(UINT8)Event->Code] = TRUE;