aboutsummaryrefslogtreecommitdiffstats
path: root/packages/linux/linux-ezx-2.6.23/patches/a780-kbd.patch
diff options
context:
space:
mode:
Diffstat (limited to 'packages/linux/linux-ezx-2.6.23/patches/a780-kbd.patch')
-rw-r--r--packages/linux/linux-ezx-2.6.23/patches/a780-kbd.patch90
1 files changed, 0 insertions, 90 deletions
diff --git a/packages/linux/linux-ezx-2.6.23/patches/a780-kbd.patch b/packages/linux/linux-ezx-2.6.23/patches/a780-kbd.patch
deleted file mode 100644
index df60384b9c..0000000000
--- a/packages/linux/linux-ezx-2.6.23/patches/a780-kbd.patch
+++ /dev/null
@@ -1,90 +0,0 @@
-Index: linux-2.6.23/arch/arm/mach-pxa/ezx-a780.c
-===================================================================
---- linux-2.6.23.orig/arch/arm/mach-pxa/ezx-a780.c 2007-10-23 19:36:54.000000000 +0200
-+++ linux-2.6.23/arch/arm/mach-pxa/ezx-a780.c 2007-10-23 19:37:43.000000000 +0200
-@@ -17,6 +17,7 @@
- #include <linux/mmc/host.h>
- #include <linux/irq.h>
- #include <linux/log2.h>
-+#include <linux/input.h>
-
- #include <asm/mach-types.h>
- #include <asm/mach/arch.h>
-@@ -25,11 +26,13 @@
- #include <asm/arch/ezx.h>
- #include <asm/arch/ezx-pcap.h>
- #include <asm/arch/mmc.h>
-+#include <asm/arch/kbd.h>
-
- #include "generic.h"
-
- extern void ezx_lcd_power(int, struct fb_var_screeninfo *);
- extern void ezx_backlight_power(int);
-+extern void __init pxa_set_kbd_info(struct pxakbd_platform_data *);
-
- #ifdef CONFIG_EZX_PCAP
- extern int ezx_pcap_mmcsd_power(int);
-@@ -236,6 +239,55 @@
- .resource = a780_emu_resources,
- };
-
-+static unsigned char a780_keycode[] = {
-+ /* row 0 */
-+ KEY_PHONE, KEY_MENU, KEY_CANCEL, KEY_PAGEUP, KEY_UP,
-+ /* row 1 */
-+ KEY_KP1, KEY_KP2, KEY_KP3, KEY_ENTER, KEY_KPENTER, /*center joypad */
-+ /* row 2 */
-+ KEY_KP4, KEY_KP5, KEY_KP6, KEY_RECORD, KEY_LEFT,
-+ /* row 3 */
-+ KEY_KP7, KEY_KP8, KEY_KP9, KEY_HOME, KEY_RIGHT,
-+ /* row 4 */
-+ KEY_KPASTERISK, KEY_KP0, KEY_KPDOT, KEY_PAGEDOWN, KEY_DOWN,
-+};
-+
-+static unsigned char a780_direct_keycode[] = {
-+ KEY_CAMERA,
-+};
-+
-+static int a780_kbd_init(void)
-+{
-+ pxa_gpio_mode(93 | GPIO_ALT_FN_1_IN); /* KP_DKIN<0>, voice_rec */
-+ pxa_gpio_mode(97 | GPIO_ALT_FN_3_IN); /* KP_MKIN<3> */
-+ pxa_gpio_mode(98 | GPIO_ALT_FN_3_IN); /* KP_MKIN<4> */
-+ pxa_gpio_mode(100 | GPIO_ALT_FN_1_IN); /* KP_MKIN<0> */
-+ pxa_gpio_mode(101 | GPIO_ALT_FN_1_IN); /* KP_MKIN<1> */
-+ pxa_gpio_mode(102 | GPIO_ALT_FN_1_IN); /* KP_MKIN<2> */
-+ pxa_gpio_mode(103 | GPIO_ALT_FN_2_OUT); /* KP_MKOUT<0> */
-+ pxa_gpio_mode(104 | GPIO_ALT_FN_2_OUT); /* KP_MKOUT<1> */
-+ pxa_gpio_mode(105 | GPIO_ALT_FN_2_OUT); /* KP_MKOUT<2> */
-+ pxa_gpio_mode(106 | GPIO_ALT_FN_2_OUT); /* KP_MKOUT<3> */
-+ pxa_gpio_mode(107 | GPIO_ALT_FN_2_OUT); /* KP_MKOUT<4> */
-+ PKWR = 0xec400;
-+ PGSR3 |= 0xf80;
-+ return 0;
-+}
-+
-+static struct pxakbd_platform_data a780_kbd_platform_data = {
-+ .init = &a780_kbd_init,
-+ .scan_interval = HZ/40,
-+ .matrix = {
-+ .keycode = a780_keycode,
-+ .cols = 5,
-+ .rows = 5,
-+ },
-+ .direct = {
-+ .keycode = a780_direct_keycode,
-+ .num = 1,
-+ },
-+};
-+
- static struct platform_device *devices[] __initdata = {
- &a780_pcap_device,
- &a780_emu_device,
-@@ -256,6 +308,7 @@
-
- set_pxa_fb_info(&a780_fb_info);
- pxa_set_mci_info(&a780_mci_platform_data);
-+ pxa_set_kbd_info(&a780_kbd_platform_data);
-
- /* clear EMU MUX1/MUX2 (low) to close the audio path to EMU */
- pxa_gpio_mode(GPIO_EMU_MUX1|GPIO_OUT);