blob: 33605840ad333a9b1a7de5ebd0046cbcd44d6326 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
|
From 14090113f9e0fd67e46de33dad609c1406373ff0 Mon Sep 17 00:00:00 2001
From: Nicholas Chin <nic.c3.14@gmail.com>
Date: Wed, 19 Apr 2023 13:59:38 -0600
Subject: [PATCH] Fix PS/2 scancode set inconsistency
GRUB seems to be expecting set 2 scancodes when built as a coreboot
payload, but PS/2 controllers outputting using set 1 will lead to an
unusable keyboard. Disable the coreboot specific logic which hard codes
the translated set 2 keyboard configuration and let GRUB handle
keyboard init the same way as i386-pc, which did not have this issue.
---
grub-core/term/at_keyboard.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/grub-core/term/at_keyboard.c b/grub-core/term/at_keyboard.c
index 597111077..bb251e222 100644
--- a/grub-core/term/at_keyboard.c
+++ b/grub-core/term/at_keyboard.c
@@ -87,7 +87,7 @@ grub_keyboard_controller_write (grub_uint8_t c)
grub_outb (c, KEYBOARD_REG_DATA);
}
-#if defined (GRUB_MACHINE_MIPS_LOONGSON) || defined (GRUB_MACHINE_QEMU) || defined (GRUB_MACHINE_COREBOOT) || defined (GRUB_MACHINE_MIPS_QEMU_MIPS)
+#if defined (GRUB_MACHINE_MIPS_LOONGSON) || defined (GRUB_MACHINE_QEMU) || defined (GRUB_MACHINE_MIPS_QEMU_MIPS)
#define USE_SCANCODE_SET 1
#else
#define USE_SCANCODE_SET 0
@@ -260,7 +260,7 @@ grub_keyboard_controller_init (void)
#if defined (GRUB_MACHINE_MIPS_LOONGSON) || defined (GRUB_MACHINE_MIPS_QEMU_MIPS)
grub_keyboard_controller_orig = 0;
grub_keyboard_orig_set = 2;
-#elif defined (GRUB_MACHINE_QEMU) || defined (GRUB_MACHINE_COREBOOT)
+#elif defined (GRUB_MACHINE_QEMU)
/* *BSD relies on those settings. */
grub_keyboard_controller_orig = KEYBOARD_AT_TRANSLATE;
grub_keyboard_orig_set = 2;
--
2.40.0
|