diff options
Diffstat (limited to 'target/linux/lantiq/patches-2.6.39/520-register_buttons.patch')
-rw-r--r-- | target/linux/lantiq/patches-2.6.39/520-register_buttons.patch | 101 |
1 files changed, 0 insertions, 101 deletions
diff --git a/target/linux/lantiq/patches-2.6.39/520-register_buttons.patch b/target/linux/lantiq/patches-2.6.39/520-register_buttons.patch deleted file mode 100644 index 11097bab57..0000000000 --- a/target/linux/lantiq/patches-2.6.39/520-register_buttons.patch +++ /dev/null @@ -1,101 +0,0 @@ ---- a/arch/mips/lantiq/Makefile -+++ b/arch/mips/lantiq/Makefile -@@ -4,7 +4,7 @@ - # under the terms of the GNU General Public License version 2 as published - # by the Free Software Foundation. - --obj-y := irq.o setup.o clk.o prom.o devices.o -+obj-y := irq.o setup.o clk.o prom.o devices.o dev-gpio-buttons.o - - obj-$(CONFIG_EARLY_PRINTK) += early_printk.o - ---- /dev/null -+++ b/arch/mips/lantiq/dev-gpio-buttons.c -@@ -0,0 +1,58 @@ -+/* -+ * Lantiq GPIO button support -+ * -+ * Copyright (C) 2008-2009 Gabor Juhos <juhosg@openwrt.org> -+ * Copyright (C) 2008 Imre Kaloz <kaloz@openwrt.org> -+ * -+ * This program is free software; you can redistribute it and/or modify it -+ * under the terms of the GNU General Public License version 2 as published -+ * by the Free Software Foundation. -+ */ -+ -+#include "linux/init.h" -+#include "linux/slab.h" -+#include <linux/platform_device.h> -+ -+#include "dev-gpio-buttons.h" -+ -+void __init ltq_register_gpio_keys_polled(int id, -+ unsigned poll_interval, -+ unsigned nbuttons, -+ struct gpio_keys_button *buttons) -+{ -+ struct platform_device *pdev; -+ struct gpio_keys_platform_data pdata; -+ struct gpio_keys_button *p; -+ int err; -+ -+ p = kmalloc(nbuttons * sizeof(*p), GFP_KERNEL); -+ if (!p) -+ return; -+ -+ memcpy(p, buttons, nbuttons * sizeof(*p)); -+ -+ pdev = platform_device_alloc("gpio-keys-polled", id); -+ if (!pdev) -+ goto err_free_buttons; -+ -+ memset(&pdata, 0, sizeof(pdata)); -+ pdata.poll_interval = poll_interval; -+ pdata.nbuttons = nbuttons; -+ pdata.buttons = p; -+ -+ err = platform_device_add_data(pdev, &pdata, sizeof(pdata)); -+ if (err) -+ goto err_put_pdev; -+ -+ err = platform_device_add(pdev); -+ if (err) -+ goto err_put_pdev; -+ -+ return; -+ -+err_put_pdev: -+ platform_device_put(pdev); -+ -+err_free_buttons: -+ kfree(p); -+} ---- /dev/null -+++ b/arch/mips/lantiq/dev-gpio-buttons.h -@@ -0,0 +1,26 @@ -+/* -+ * Lantiq GPIO button support -+ * -+ * Copyright (C) 2008-2009 Gabor Juhos <juhosg@openwrt.org> -+ * Copyright (C) 2008 Imre Kaloz <kaloz@openwrt.org> -+ * -+ * This program is free software; you can redistribute it and/or modify it -+ * under the terms of the GNU General Public License version 2 as published -+ * by the Free Software Foundation. -+ */ -+ -+#ifndef _LANTIQ_DEV_GPIO_BUTTONS_H -+#define _LANTIQ_DEV_GPIO_BUTTONS_H -+ -+#include <linux/input.h> -+#include <linux/gpio_keys.h> -+ -+#define LTQ_KEYS_POLL_INTERVAL 20 /* msecs */ -+#define LTQ_KEYS_DEBOUNCE_INTERVAL (3 * LTQ_KEYS_POLL_INTERVAL) -+ -+void ltq_register_gpio_keys_polled(int id, -+ unsigned poll_interval, -+ unsigned nbuttons, -+ struct gpio_keys_button *buttons); -+ -+#endif /* _LANTIQ_DEV_GPIO_BUTTONS_H */ |