This series adds an input driver core and ports some input driver over to it. Currently the input drivers are written as console drivers. The problem with this is that we can only generate a character when a key is pressed, but we can't ask for the current state of a key. One very common usecase for buttons in a bootloader is to ask if the user is holding a button while booting to go into a recovery mode or boot from alternative sources. We should support this usecase and with this input core we can. A nice side effect is that the input driver get simpler since the input core handles stuff like key repetition and fifos for the keys. Sascha ---------------------------------------------------------------- Sascha Hauer (15): poller: Fix async poller keymap: Fix braces keymap: remove exotic and nonprintable keys keymap: Add keypad keys keymap: Add apostrophe, backslash and home keymap: Add keymap for keys with shift pressed input: Add input core input: usb keyboard: convert to input framework input: imx-keypad: Use dev_* functions input: move matrix_keypad_build_keymap() to C file input: imx-keypad: convert to input framework input: Add device tree parsing support for matrix keymap input: imx-keypad: Add device tree support input: gpio-keys: Use KEY_* keycodes input: gpio-keys: convert to input framework arch/arm/boards/archosg9/board.c | 5 +- arch/arm/boards/at91sam9261ek/init.c | 7 +- arch/arm/boards/at91sam9m10g45ek/init.c | 15 +- arch/arm/boards/usb-a926x/init.c | 9 +- arch/arm/mach-imx/include/mach/devices.h | 2 +- common/poller.c | 26 ++- drivers/input/Kconfig | 9 + drivers/input/Makefile | 2 + drivers/input/gpio_keys.c | 71 ++------ drivers/input/imx_keypad.c | 92 ++++------ drivers/input/input.c | 202 +++++++++++++++++++++ drivers/input/keymap.c | 173 ++++++++++-------- drivers/input/matrix-keymap.c | 89 ++++++++++ drivers/input/usb_kbd.c | 296 ++++++------------------------- include/input/input.h | 34 ++++ include/input/keyboard.h | 1 + include/input/matrix_keypad.h | 35 ++++ include/matrix_keypad.h | 59 ------ include/poller.h | 4 + 19 files changed, 628 insertions(+), 503 deletions(-) create mode 100644 drivers/input/input.c create mode 100644 drivers/input/matrix-keymap.c create mode 100644 include/input/input.h create mode 100644 include/input/matrix_keypad.h delete mode 100644 include/matrix_keypad.h _______________________________________________ barebox mailing list barebox@xxxxxxxxxxxxxxxxxxx http://lists.infradead.org/mailman/listinfo/barebox