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 <lumot...@gmail.com>

---
 drivers/input/touchscreen/ad7877.c | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/drivers/input/touchscreen/ad7877.c
b/drivers/input/touchscreen/ad7877.c
index 9c250ae..0381c78 100644
--- a/drivers/input/touchscreen/ad7877.c
+++ b/drivers/input/touchscreen/ad7877.c
@@ -385,9 +385,9 @@ static inline void ad7877_ts_event_release(struct
ad7877 *ts)
        input_sync(input_dev);
 }

-static void ad7877_timer(unsigned long handle)
+static void ad7877_timer(struct timer_list *t)
 {
-       struct ad7877 *ts = (void *)handle;
+       struct ad7877 *ts = from_timer(ts, t, timer);
        unsigned long flags;

        spin_lock_irqsave(&ts->lock, flags);
@@ -718,7 +718,7 @@ static int ad7877_probe(struct spi_device *spi)
        ts->spi = spi;
        ts->input = input_dev;

-       setup_timer(&ts->timer, ad7877_timer, (unsigned long) ts);
+       timer_setup(&ts->timer, ad7877_timer, 0);
        mutex_init(&ts->mutex);
        spin_lock_init(&ts->lock);

-- 
1.9.1

Reply via email to