Add hotkeys available in almost all ThinkPads manufactured in the last five years (more than one million machines given the ammount of batteries recalled) to input.h, and make thinkpad-acpi use those instead of issuing KEY_UNKNOWN. KEY_FN_PAGEDOWN is not ever reported by the ThinkPad firmware due to random bogon-induced stupidity at IBM some years ago, but it is provided because it doesn't make sense to define KEY_FN_PAGEUP and not define KEY_FN_PAGEDOWN at the same time. Signed-off-by: Henrique de Moraes Holschuh <hmh@xxxxxxxxxx> Cc: dtor@xxxxxxx Cc: linux-input@xxxxxxxxxxxxxxxxxxxxxxxx --- drivers/misc/thinkpad_acpi.c | 2 +- include/linux/input.h | 5 +++++ 2 files changed, 6 insertions(+), 1 deletions(-) diff --git a/drivers/misc/thinkpad_acpi.c b/drivers/misc/thinkpad_acpi.c index 5690247..79a243a 100644 --- a/drivers/misc/thinkpad_acpi.c +++ b/drivers/misc/thinkpad_acpi.c @@ -712,7 +712,7 @@ static u16 hotkey_event_map[16] = { KEY_FN_F1, KEY_FN_F2, KEY_FN_F3, KEY_FN_F4, KEY_FN_F5, KEY_FN_F6, KEY_FN_F7, KEY_FN_F8, KEY_FN_F9, KEY_FN_F10, KEY_FN_F11, KEY_FN_F12, /* backspace/ins/del/home */ - KEY_RESERVED, KEY_RESERVED, KEY_RESERVED, KEY_RESERVED + KEY_FN_BACKSPACE, KEY_FN_INSERT, KEY_FN_DELETE, KEY_FN_HOME }; static struct attribute_set *hotkey_dev_attributes = NULL; diff --git a/include/linux/input.h b/include/linux/input.h index bde65c8..cd0b13e 100644 --- a/include/linux/input.h +++ b/include/linux/input.h @@ -533,6 +533,11 @@ struct input_absinfo { #define KEY_FN_F 0x1e2 #define KEY_FN_S 0x1e3 #define KEY_FN_B 0x1e4 +#define KEY_FN_BACKSPACE 0x1e5 +#define KEY_FN_INSERT 0x1e6 +#define KEY_FN_DELETE 0x1e7 +#define KEY_FN_HOME 0x1e8 +#define KEY_FN_END 0x1e9 #define KEY_BRL_DOT1 0x1f1 #define KEY_BRL_DOT2 0x1f2 -- 1.5.1.6 - To unsubscribe from this list: send the line "unsubscribe linux-acpi" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html