summaryrefslogtreecommitdiff
path: root/arch/blackfin
diff options
context:
space:
mode:
authorSteven Miao <realmz6@gmail.com>2012-06-07 15:06:45 +0800
committerBob Liu <lliubbo@gmail.com>2012-07-24 13:39:50 +0800
commitbbca5c6d9e7d0b0cdecd70766b7f4698462a53e0 (patch)
tree2f0ae7bda7a814fe50f39965c255466bc678853e /arch/blackfin
parent6b6c37bf9d9295228b63a06b34fea91a02317bce (diff)
downloadlinux-3.10-bbca5c6d9e7d0b0cdecd70766b7f4698462a53e0.tar.gz
linux-3.10-bbca5c6d9e7d0b0cdecd70766b7f4698462a53e0.tar.bz2
linux-3.10-bbca5c6d9e7d0b0cdecd70766b7f4698462a53e0.zip
gpiokeys: add gpio keyboard platform device
Signed-off-by: Steven Miao <realmz6@gmail.com> Signed-off-by: Bob Liu <lliubbo@gmail.com>
Diffstat (limited to 'arch/blackfin')
-rw-r--r--arch/blackfin/mach-bf609/boards/ezkit.c22
1 files changed, 22 insertions, 0 deletions
diff --git a/arch/blackfin/mach-bf609/boards/ezkit.c b/arch/blackfin/mach-bf609/boards/ezkit.c
index b078d5a4d82..14b73b55a48 100644
--- a/arch/blackfin/mach-bf609/boards/ezkit.c
+++ b/arch/blackfin/mach-bf609/boards/ezkit.c
@@ -1098,6 +1098,28 @@ static const struct ad7877_platform_data bfin_ad7877_ts_info = {
};
#endif
+#if defined(CONFIG_KEYBOARD_GPIO) || defined(CONFIG_KEYBOARD_GPIO_MODULE)
+#include <linux/input.h>
+#include <linux/gpio_keys.h>
+
+static struct gpio_keys_button bfin_gpio_keys_table[] = {
+ {BTN_0, GPIO_PB10, 1, "gpio-keys: BTN0"},
+ {BTN_1, GPIO_PE1, 1, "gpio-keys: BTN1"},
+};
+
+static struct gpio_keys_platform_data bfin_gpio_keys_data = {
+ .buttons = bfin_gpio_keys_table,
+ .nbuttons = ARRAY_SIZE(bfin_gpio_keys_table),
+};
+
+static struct platform_device bfin_device_gpiokeys = {
+ .name = "gpio-keys",
+ .dev = {
+ .platform_data = &bfin_gpio_keys_data,
+ },
+};
+#endif
+
static struct spi_board_info bfin_spi_board_info[] __initdata = {
#if defined(CONFIG_MTD_M25P80) \
|| defined(CONFIG_MTD_M25P80_MODULE)