[PATCH v3] input: usb keyboard: fix CTRL+ combinations

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Signed-off-by: Peter Mamonov <pmamonov@xxxxxxxxx>
Signed-off-by: Sam Ravnborg <sam@xxxxxxxxxxxx>
Signed-off-by: Trent Piepho <tpiepho@xxxxxxxxxxxxxx>
---
 drivers/input/input.c | 6 +++++-
 1 file changed, 5 insertions(+), 1 deletion(-)

diff --git a/drivers/input/input.c b/drivers/input/input.c
index ad7400f..31a9c22 100644
--- a/drivers/input/input.c
+++ b/drivers/input/input.c
@@ -18,6 +18,7 @@
 #include <linux/bitmap.h>
 #include <input/keyboard.h>
 #include <dt-bindings/input/linux-event-codes.h>
+#include <readkey.h>
 
 static LIST_HEAD(input_consumers);
 
@@ -164,7 +165,10 @@ static void input_console_notify(struct input_notifier *in,
 	if (ic->modstate[4] || ic->modstate[5])
 		modstate |= 1 << 2;
 
-	if (modstate & (1 << 0))
+	if (modstate & (1 << 1)) {
+		ascii = keycode_bb_keys[ev->code];
+		ascii = ascii >= 'a' ? CTL_CH(ascii) : 0;
+	} else if (modstate & (1 << 0))
 		ascii = keycode_bb_shift_keys[ev->code];
 	else
 		ascii = keycode_bb_keys[ev->code];
-- 
2.1.4


_______________________________________________
barebox mailing list
barebox@xxxxxxxxxxxxxxxxxxx
http://lists.infradead.org/mailman/listinfo/barebox



[Index of Archives]     [Linux Embedded]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [XFree86]

  Powered by Linux