Browse Source

eukrea_mbimx27: add support for the keyboard

Signed-off-by: Eric Bénard <eric@eukrea.com>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
Eric Bénard 15 years ago
parent
commit
5203b99c14
1 changed files with 15 additions and 0 deletions
  1. 15 0
      arch/arm/mach-mx2/eukrea_mbimx27-baseboard.c

+ 15 - 0
arch/arm/mach-mx2/eukrea_mbimx27-baseboard.c

@@ -26,6 +26,7 @@
 #include <linux/spi/ads7846.h>
 #include <linux/backlight.h>
 #include <video/platform_lcd.h>
+#include <linux/input/matrix_keypad.h>
 
 #include <asm/mach/arch.h>
 
@@ -94,6 +95,18 @@ static int eukrea_mbimx27_pins[] = {
 	PD31_PF_CSPI1_MOSI,
 };
 
+static const uint32_t eukrea_mbimx27_keymap[] = {
+	KEY(0, 0, KEY_UP),
+	KEY(0, 1, KEY_DOWN),
+	KEY(1, 0, KEY_RIGHT),
+	KEY(1, 1, KEY_LEFT),
+};
+
+static struct matrix_keymap_data eukrea_mbimx27_keymap_data = {
+	.keymap         = eukrea_mbimx27_keymap,
+	.keymap_size    = ARRAY_SIZE(eukrea_mbimx27_keymap),
+};
+
 static struct gpio_led gpio_leds[] = {
 	{
 		.name			= "led1",
@@ -337,5 +350,7 @@ void __init eukrea_mbimx27_baseboard_init(void)
 	gpio_request(GPIO_PORTA | 25, "lcd_enable");
 	platform_device_register(&eukrea_mbimx27_lcd_powerdev);
 
+	mxc_register_device(&imx_kpp_device, &eukrea_mbimx27_keymap_data);
+
 	platform_add_devices(platform_devices, ARRAY_SIZE(platform_devices));
 }