[PATCH 2/5] serial: efi: improve input handling

Michael Olbrich m.olbrich at pengutronix.de
Mon Jan 23 09:02:15 PST 2017


0x08 is the scan-code for 'backspace' not 'delete'.
0x17 indicates the start of an escape sequence, such as "[3~" for
'delete'.

Signed-off-by: Michael Olbrich <m.olbrich at pengutronix.de>
---
 drivers/serial/efi-stdio.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/drivers/serial/efi-stdio.c b/drivers/serial/efi-stdio.c
index bf14c5e24aa5..5ab917386e60 100644
--- a/drivers/serial/efi-stdio.c
+++ b/drivers/serial/efi-stdio.c
@@ -99,9 +99,10 @@ static struct efi_ctrlkey ctrlkeys[] = {
 	{ 0x05, BB_KEY_HOME },
 	{ 0x06, BB_KEY_END },
 	{ 0x07, BB_KEY_INSERT },
-	{ 0x08, BB_KEY_DEL },
+	{ 0x08, BB_KEY_DEL7 },
 	{ 0x09, BB_KEY_PAGEUP },
 	{ 0x0a, BB_KEY_PAGEDOWN },
+	{ 0x17, 27 /* escape key */ },
 };
 
 static int efi_read_key(struct efi_console_priv *priv, bool wait)
-- 
2.11.0




More information about the barebox mailing list