diff options
Diffstat (limited to 'target/linux/atheros/patches-3.3/210-reset_button.patch')
-rw-r--r-- | target/linux/atheros/patches-3.3/210-reset_button.patch | 72 |
1 files changed, 0 insertions, 72 deletions
diff --git a/target/linux/atheros/patches-3.3/210-reset_button.patch b/target/linux/atheros/patches-3.3/210-reset_button.patch deleted file mode 100644 index c1471903c4..0000000000 --- a/target/linux/atheros/patches-3.3/210-reset_button.patch +++ /dev/null @@ -1,72 +0,0 @@ ---- a/arch/mips/ar231x/Makefile -+++ b/arch/mips/ar231x/Makefile -@@ -8,7 +8,7 @@ - # Copyright (C) 2006-2009 Felix Fietkau <nbd@openwrt.org> - # - --obj-y += board.o prom.o devices.o -+obj-y += board.o prom.o devices.o reset.o - - obj-$(CONFIG_EARLY_PRINTK) += early_printk.o - ---- /dev/null -+++ b/arch/mips/ar231x/reset.c -@@ -0,0 +1,58 @@ -+#include <linux/init.h> -+#include <linux/slab.h> -+#include <linux/platform_device.h> -+#include <linux/gpio_keys.h> -+#include <linux/input.h> -+#include <ar231x_platform.h> -+#include <ar231x.h> -+#include "devices.h" -+ -+static int __init -+ar231x_init_reset(void) -+{ -+ struct platform_device *pdev; -+ struct gpio_keys_platform_data pdata; -+ struct gpio_keys_button *p; -+ int err; -+ -+ if (ar231x_board.config->resetConfigGpio == 0xffff) -+ return -ENODEV; -+ -+ p = kzalloc(sizeof(*p), GFP_KERNEL); -+ if (!p) -+ goto err; -+ -+ p->desc = "reset"; -+ p->type = EV_KEY; -+ p->code = KEY_RESTART; -+ p->debounce_interval = 60; -+ p->gpio = ar231x_board.config->resetConfigGpio; -+ -+ memset(&pdata, 0, sizeof(pdata)); -+ pdata.poll_interval = 20; -+ pdata.buttons = p; -+ pdata.nbuttons = 1; -+ -+ pdev = platform_device_alloc("gpio-keys-polled", 0); -+ if (!pdev) -+ goto err_free; -+ -+ 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 0; -+ -+err_put_pdev: -+ platform_device_put(pdev); -+err_free: -+ kfree(p); -+err: -+ return -ENOMEM; -+} -+ -+module_init(ar231x_init_reset); |