| From 6e5a4b3b9d1f814b27f1cab927ffaf2b0a61ea9f Mon Sep 17 00:00:00 2001 |
| From: stephen lu <lumotuwe@gmail.com> |
| Date: Mon, 23 Oct 2017 14:43:53 -0700 |
| Subject: [PATCH 0084/1795] Input: gpio-keys - convert timers to use |
| timer_setup() |
| |
| In preparation for unconditionally passing the struct timer_list pointer to |
| all timer callbacks, switch to using the new timer_setup() and from_timer() |
| to pass the timer pointer explicitly. |
| |
| Signed-off-by: Stephen Lu <lumotuwe@gmail.com> |
| Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com> |
| (cherry picked from commit 82565a120544b2bdfaf602d9f5e7b9ab9a342ae8) |
| Signed-off-by: Simon Horman <horms+renesas@verge.net.au> |
| Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be> |
| --- |
| drivers/input/keyboard/gpio_keys.c | 7 +++---- |
| 1 file changed, 3 insertions(+), 4 deletions(-) |
| |
| diff --git a/drivers/input/keyboard/gpio_keys.c b/drivers/input/keyboard/gpio_keys.c |
| index e9f0ebf3267a..87e613dc33b8 100644 |
| --- a/drivers/input/keyboard/gpio_keys.c |
| +++ b/drivers/input/keyboard/gpio_keys.c |
| @@ -419,9 +419,9 @@ static irqreturn_t gpio_keys_gpio_isr(int irq, void *dev_id) |
| return IRQ_HANDLED; |
| } |
| |
| -static void gpio_keys_irq_timer(unsigned long _data) |
| +static void gpio_keys_irq_timer(struct timer_list *t) |
| { |
| - struct gpio_button_data *bdata = (struct gpio_button_data *)_data; |
| + struct gpio_button_data *bdata = from_timer(bdata, t, release_timer); |
| struct input_dev *input = bdata->input; |
| unsigned long flags; |
| |
| @@ -582,8 +582,7 @@ static int gpio_keys_setup_key(struct platform_device *pdev, |
| } |
| |
| bdata->release_delay = button->debounce_interval; |
| - setup_timer(&bdata->release_timer, |
| - gpio_keys_irq_timer, (unsigned long)bdata); |
| + timer_setup(&bdata->release_timer, gpio_keys_irq_timer, 0); |
| |
| isr = gpio_keys_irq_isr; |
| irqflags = 0; |
| -- |
| 2.19.0 |
| |