Signed-off-by: Peter Mamonov <pmamonov@xxxxxxxxx> Signed-off-by: Sam Ravnborg <sam@xxxxxxxxxxxx> --- drivers/input/input.c | 4 +++- drivers/input/keymap.c | 4 ++++ include/input/keyboard.h | 1 + 3 files changed, 8 insertions(+), 1 deletion(-) diff --git a/drivers/input/input.c b/drivers/input/input.c index ad7400f..1c6891c 100644 --- a/drivers/input/input.c +++ b/drivers/input/input.c @@ -164,7 +164,9 @@ 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_ctrl_keys[ev->code]; + else if (modstate & (1 << 0)) ascii = keycode_bb_shift_keys[ev->code]; else ascii = keycode_bb_keys[ev->code]; diff --git a/drivers/input/keymap.c b/drivers/input/keymap.c index 79ca461..7e443d1 100644 --- a/drivers/input/keymap.c +++ b/drivers/input/keymap.c @@ -167,3 +167,7 @@ uint8_t keycode_bb_shift_keys[NR_KEYS] = { [KEY_KPEQUAL] = '=', [KEY_KPCOMMA] = ',', }; + +uint8_t keycode_bb_ctrl_keys[NR_KEYS] = { + [KEY_C] = CTL_CH('c'), +}; diff --git a/include/input/keyboard.h b/include/input/keyboard.h index d1f5bf5..8ccdf31 100644 --- a/include/input/keyboard.h +++ b/include/input/keyboard.h @@ -7,5 +7,6 @@ extern uint8_t keycode_bb_keys[NR_KEYS]; extern uint8_t keycode_bb_shift_keys[NR_KEYS]; +extern uint8_t keycode_bb_ctrl_keys[NR_KEYS]; #endif -- 2.1.4 _______________________________________________ barebox mailing list barebox@xxxxxxxxxxxxxxxxxxx http://lists.infradead.org/mailman/listinfo/barebox