aboutsummaryrefslogtreecommitdiffstats
path: root/recipes-kernel/linux/linux-yocto-3.17/poodle/locomo_kbd_tweak-r2.patch
diff options
context:
space:
mode:
Diffstat (limited to 'recipes-kernel/linux/linux-yocto-3.17/poodle/locomo_kbd_tweak-r2.patch')
-rw-r--r--recipes-kernel/linux/linux-yocto-3.17/poodle/locomo_kbd_tweak-r2.patch84
1 files changed, 84 insertions, 0 deletions
diff --git a/recipes-kernel/linux/linux-yocto-3.17/poodle/locomo_kbd_tweak-r2.patch b/recipes-kernel/linux/linux-yocto-3.17/poodle/locomo_kbd_tweak-r2.patch
new file mode 100644
index 0000000..441e3dc
--- /dev/null
+++ b/recipes-kernel/linux/linux-yocto-3.17/poodle/locomo_kbd_tweak-r2.patch
@@ -0,0 +1,84 @@
+From c9a909cedb442a1a3d020f0c10683298dcc2246c Mon Sep 17 00:00:00 2001
+From: Andrea Adami <andrea.adami@gmail.com>
+Date: Sat, 21 Apr 2012 23:48:57 +0200
+Subject: [PATCH] locomokbd: apply tweaks for Zaurus
+
+from http://www.rpsys.net/openzaurus/patches/
+
+Signed-off-by: Richard Purdie <rpurdie@rpsys.net>
+Signed-off-by: Andrea Adami <andrea.adami@gmail.com>
+
+Upstream-Status: Inappropriate [embedded specific]
+[Patch needed for initramfs w/out keymaps like kexecboot]
+---
+ drivers/input/keyboard/locomokbd.c | 44 ++++++++++++++++++++++----------------
+ 1 file changed, 25 insertions(+), 19 deletions(-)
+
+diff --git a/drivers/input/keyboard/locomokbd.c b/drivers/input/keyboard/locomokbd.c
+index c94d610..2b978c8 100644
+--- a/drivers/input/keyboard/locomokbd.c
++++ b/drivers/input/keyboard/locomokbd.c
+@@ -39,27 +39,33 @@ MODULE_AUTHOR("John Lenz <lenz@cs.wisc.edu>");
+ MODULE_DESCRIPTION("LoCoMo keyboard driver");
+ MODULE_LICENSE("GPL");
+
+-#define LOCOMOKBD_NUMKEYS 128
+-
+-#define KEY_ACTIVITY KEY_F16
+-#define KEY_CONTACT KEY_F18
+-#define KEY_CENTER KEY_F15
++#define LOCOMOKBD_NUMKEYS 128
++
++#define LOCOMO_KEY_CALENDER KEY_LEFTCTRL
++#define LOCOMO_KEY_ADDRESS KEY_LEFTALT /* Needed for SysRQ */
++#define LOCOMO_KEY_HOME KEY_SYSRQ /* Needed for SysRQ */
++#define LOCOMO_KEY_MENU KEY_F12
++#define LOCOMO_KEY_MAIL KEY_F10
++#define LOCOMO_KEY_OK KEY_F11 /* Don't hardwire to KEY_RETURN */
++#define LOCOMO_KEY_CANCEL KEY_POWER
++#define LOCOMO_KEY_CENTER KEY_F5 /* Don't hardwire to KEY_RETURN */
++#define LOCOMO_KEY_FN KEY_F9
+
+ static const unsigned char
+ locomokbd_keycode[LOCOMOKBD_NUMKEYS] = {
+- 0, KEY_ESC, KEY_ACTIVITY, 0, 0, 0, 0, 0, 0, 0, /* 0 - 9 */
+- 0, 0, 0, 0, 0, 0, 0, KEY_MENU, KEY_HOME, KEY_CONTACT, /* 10 - 19 */
+- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, /* 20 - 29 */
+- 0, 0, 0, KEY_CENTER, 0, KEY_MAIL, 0, 0, 0, 0, /* 30 - 39 */
+- 0, 0, 0, 0, 0, 0, 0, 0, 0, KEY_RIGHT, /* 40 - 49 */
+- KEY_UP, KEY_LEFT, 0, 0, KEY_P, 0, KEY_O, KEY_I, KEY_Y, KEY_T, /* 50 - 59 */
+- KEY_E, KEY_W, 0, 0, 0, 0, KEY_DOWN, KEY_ENTER, 0, 0, /* 60 - 69 */
+- KEY_BACKSPACE, 0, KEY_L, KEY_U, KEY_H, KEY_R, KEY_D, KEY_Q, 0, 0, /* 70 - 79 */
+- 0, 0, 0, 0, 0, 0, KEY_ENTER, KEY_RIGHTSHIFT, KEY_K, KEY_J, /* 80 - 89 */
+- KEY_G, KEY_F, KEY_X, KEY_S, 0, 0, 0, 0, 0, 0, /* 90 - 99 */
+- 0, 0, KEY_DOT, 0, KEY_COMMA, KEY_N, KEY_B, KEY_C, KEY_Z, KEY_A, /* 100 - 109 */
+- KEY_LEFTSHIFT, KEY_TAB, KEY_LEFTCTRL, 0, 0, 0, 0, 0, 0, 0, /* 110 - 119 */
+- KEY_M, KEY_SPACE, KEY_V, KEY_APOSTROPHE, KEY_SLASH, 0, 0, 0 /* 120 - 128 */
++ 0, LOCOMO_KEY_CANCEL, LOCOMO_KEY_CALENDER, LOCOMO_KEY_HOME, 0, 0, 0, 0, 0, 0, /* 0 - 9 */
++ 0, 0, 0, 0, 0, 0, 0, LOCOMO_KEY_MENU, 0, LOCOMO_KEY_ADDRESS, /* 10 - 19 */
++ 0, 0, 0, 0, 0, LOCOMO_KEY_MAIL, 0, 0, 0, 0, /* 20 - 29 */
++ 0, 0, 0, LOCOMO_KEY_CENTER, 0, LOCOMO_KEY_MAIL, 0, 0, 0, 0, /* 30 - 39 */
++ 0, 0, 0, 0, 0, 0, 0, 0, 0, KEY_RIGHT, /* 40 - 49 */
++ KEY_UP, KEY_LEFT, 0, 0, KEY_P, 0, KEY_O, KEY_I, KEY_Y, KEY_T, /* 50 - 59 */
++ KEY_E, KEY_W, 0, 0, 0, 0, KEY_DOWN, LOCOMO_KEY_OK, 0, 0, /* 60 - 69 */
++ KEY_BACKSPACE, 0, KEY_L, KEY_U, KEY_H, KEY_R, KEY_D, KEY_Q, 0, 0, /* 70 - 79 */
++ 0, 0, 0, 0, 0, 0, KEY_ENTER, KEY_RIGHTSHIFT, KEY_K, KEY_J, /* 80 - 89 */
++ KEY_G, KEY_F, KEY_X, KEY_S, 0, 0, 0, 0, 0, 0, /* 90 - 99 */
++ 0, 0, KEY_DOT, 0, KEY_COMMA, KEY_N, KEY_B, KEY_C, KEY_Z, KEY_A, /* 100 - 109 */
++ KEY_LEFTSHIFT, KEY_TAB, LOCOMO_KEY_FN, 0, 0, 0, 0, 0, 0, 0, /* 110 - 119 */
++ KEY_M, KEY_SPACE, KEY_V, KEY_APOSTROPHE, KEY_SLASH, 0, 0, 0 /* 120 - 128 */
+ };
+
+ #define KB_ROWS 16
+@@ -68,7 +74,7 @@ locomokbd_keycode[LOCOMOKBD_NUMKEYS] = {
+ #define SCANCODE(c,r) ( ((c)<<4) + (r) + 1 )
+
+ #define KB_DELAY 8
+-#define SCAN_INTERVAL (HZ/10)
++#define SCAN_INTERVAL (HZ/20)
+
+ struct locomokbd {
+ unsigned char keycode[LOCOMOKBD_NUMKEYS];
+--
+1.8.1.5
+