|
@@ -27,7 +27,6 @@
|
|
|
#include <linux/mtd/physmap.h>
|
|
|
#include <linux/i2c.h>
|
|
|
#include <linux/i2c/pca953x.h>
|
|
|
-#include <linux/gpio_keys.h>
|
|
|
#include <linux/input.h>
|
|
|
#include <linux/gpio.h>
|
|
|
#include <linux/delay.h>
|
|
@@ -130,19 +129,12 @@ static struct gpio_keys_button visstrim_gpio_keys[] = {
|
|
|
}
|
|
|
};
|
|
|
|
|
|
-static struct gpio_keys_platform_data visstrim_gpio_keys_platform_data = {
|
|
|
+static const struct gpio_keys_platform_data
|
|
|
+ visstrim_gpio_keys_platform_data __initconst = {
|
|
|
.buttons = visstrim_gpio_keys,
|
|
|
.nbuttons = ARRAY_SIZE(visstrim_gpio_keys),
|
|
|
};
|
|
|
|
|
|
-static struct platform_device visstrim_gpio_keys_device = {
|
|
|
- .name = "gpio-keys",
|
|
|
- .id = -1,
|
|
|
- .dev = {
|
|
|
- .platform_data = &visstrim_gpio_keys_platform_data,
|
|
|
- },
|
|
|
-};
|
|
|
-
|
|
|
/* Visstrim_SM10 has a microSD slot connected to sdhc1 */
|
|
|
static int visstrim_m10_sdhc1_init(struct device *dev,
|
|
|
irq_handler_t detect_irq, void *data)
|
|
@@ -186,7 +178,6 @@ static struct platform_device visstrim_m10_nor_mtd_device = {
|
|
|
};
|
|
|
|
|
|
static struct platform_device *platform_devices[] __initdata = {
|
|
|
- &visstrim_gpio_keys_device,
|
|
|
&visstrim_m10_nor_mtd_device,
|
|
|
};
|
|
|
|
|
@@ -255,6 +246,7 @@ static void __init visstrim_m10_board_init(void)
|
|
|
imx27_add_mxc_mmc(0, &visstrim_m10_sdhc_pdata);
|
|
|
imx27_add_mxc_ehci_otg(&visstrim_m10_usbotg_pdata);
|
|
|
imx27_add_fec(NULL);
|
|
|
+ imx_add_gpio_keys(&visstrim_gpio_keys_platform_data);
|
|
|
platform_add_devices(platform_devices, ARRAY_SIZE(platform_devices));
|
|
|
}
|
|
|
|