summaryrefslogtreecommitdiff
path: root/linux/opensimpad-2.4.25-vrs2-pxa1-jpm1
diff options
context:
space:
mode:
authorHolger Freyther <zecke@selfish.org>2004-07-17 18:28:15 +0000
committerHolger Freyther <zecke@selfish.org>2004-07-17 18:28:15 +0000
commit0270f15e772092cc2a3bb6161757c8338527089c (patch)
treeaf03a4d348251790b0cfb92a1b9cbb060eb23a46 /linux/opensimpad-2.4.25-vrs2-pxa1-jpm1
parentf14e6d0a2dc162ac22e6d3c7911baed5d5d8ee2f (diff)
Merge bk://openembedded@openembedded.bkbits.net/packages
into handhelds.org:/home/ich/programming/oe/oe-packages-exported 2004/07/17 20:27:36+02:00 handhelds.org!zecke SIMpad rediff simpad-switches-input2 so that it applies against simpad-switches-input.diff this way it is applyable again BKrev: 40f96fbfzvj1ql4HGiUqrpITCIPVRQ
Diffstat (limited to 'linux/opensimpad-2.4.25-vrs2-pxa1-jpm1')
-rw-r--r--linux/opensimpad-2.4.25-vrs2-pxa1-jpm1/simpad-switches-input2.diff52
1 files changed, 52 insertions, 0 deletions
diff --git a/linux/opensimpad-2.4.25-vrs2-pxa1-jpm1/simpad-switches-input2.diff b/linux/opensimpad-2.4.25-vrs2-pxa1-jpm1/simpad-switches-input2.diff
index e69de29bb2..9531cf1b43 100644
--- a/linux/opensimpad-2.4.25-vrs2-pxa1-jpm1/simpad-switches-input2.diff
+++ b/linux/opensimpad-2.4.25-vrs2-pxa1-jpm1/simpad-switches-input2.diff
@@ -0,0 +1,52 @@
+
+#
+# Patch managed by http://www.holgerschurig.de/patcher.html
+#
+
+--- drivers/misc/switches-core.c~Fooo
++++ drivers/misc/switches-core.c
+@@ -66,7 +66,32 @@
+ int
+ dummy_k_translate(unsigned char scancode, unsigned char *keycode, char raw_mode)
+ {
+- *keycode = scancode;
++ if (scancode == KEY_UP)
++ *keycode = 144;
++ else if (scancode == KEY_LEFT)
++ *keycode = 146;
++ else if (scancode == KEY_RIGHT)
++ *keycode = 151;
++ else if (scancode == KEY_DOWN)
++ *keycode = 161;
++ else if (scancode == 144)
++ *keycode = KEY_UP;
++ else if (scancode == 146)
++ *keycode = KEY_LEFT;
++ else if (scancode == 151)
++ *keycode = KEY_RIGHT;
++ else if (scancode == 161)
++ *keycode = KEY_DOWN;
++ else if (scancode == KEY_KP8)
++ *keycode = KEY_UP;
++ else if (scancode == KEY_KP4)
++ *keycode = KEY_LEFT;
++ else if (scancode == KEY_KP6)
++ *keycode = KEY_RIGHT;
++ else if (scancode == KEY_KP2)
++ *keycode = KEY_DOWN;
++ else
++ *keycode = scancode;
+ return 1;
+ }
+
+@@ -174,8 +199,9 @@
+ if (machine_is_simpad()) {
+ if (SWITCHES_COUNT(mask) > 0)
+ {
++// printk("st %04lx, ev: %04lx\n",mask->states[0],mask->events[0]);
+ if (mask->events[0] & SIMPAD_KEY_SUSPEND)
+- input_report_key(&idev, KEY_POWER, (mask->states[0] & SIMPAD_KEY_SUSPEND) ? 1 : 0);
++ input_report_key(&idev, KEY_POWER, (mask->states[0] & SIMPAD_KEY_SUSPEND) ? 0 : 1);
+ if (mask->events[0] & SIMPAD_KEY_ENTER)
+ input_report_key(&idev, KEY_ENTER, (mask->states[0] & SIMPAD_KEY_ENTER) ? 1 : 0);
+ if (mask->events[0] & SIMPAD_KEY_UP)