mirror of
https://github.com/armbian/build.git
synced 2025-08-09 12:46:58 +02:00
42 lines
1.1 KiB
Diff
42 lines
1.1 KiB
Diff
diff --git a/drivers/tty/vt/keyboard.c b/drivers/tty/vt/keyboard.c
|
|
index f4166263bb3a..a248429194bb 100644
|
|
--- a/drivers/tty/vt/keyboard.c
|
|
+++ b/drivers/tty/vt/keyboard.c
|
|
@@ -28,6 +28,7 @@
|
|
* 21-08-02: Converted to input API, major cleanup. (Vojtech Pavlik)
|
|
*/
|
|
|
|
+#include <linux/bootsplash.h>
|
|
#define pr_fmt(fmt) KBUILD_MODNAME ": " fmt
|
|
|
|
#include <linux/consolemap.h>
|
|
@@ -1353,6 +1355,28 @@ static void kbd_keycode(unsigned int keycode, int down, int hw_raw)
|
|
}
|
|
#endif
|
|
|
|
+ /* Trap keys when bootsplash is shown */
|
|
+ if (bootsplash_would_render_now()) {
|
|
+ /* Deactivate bootsplash on ESC or Alt+Fxx VT switch */
|
|
+ if (keycode >= KEY_F1 && keycode <= KEY_F12) {
|
|
+ bootsplash_disable();
|
|
+
|
|
+ /*
|
|
+ * No return here since we want to actually
|
|
+ * perform the VT switch.
|
|
+ */
|
|
+ } else {
|
|
+ if (keycode == KEY_ESC)
|
|
+ bootsplash_disable();
|
|
+
|
|
+ /*
|
|
+ * Just drop any other keys.
|
|
+ * Their effect would be hidden by the splash.
|
|
+ */
|
|
+ return;
|
|
+ }
|
|
+ }
|
|
+
|
|
if (kbd->kbdmode == VC_MEDIUMRAW) {
|
|
/*
|
|
* This is extended medium raw mode, with keys above 127
|