]> asedeno.scripts.mit.edu Git - linux.git/commitdiff
media: tc358743: Convert timers to use timer_setup()
authorKees Cook <keescook@chromium.org>
Mon, 16 Oct 2017 23:10:27 +0000 (19:10 -0400)
committerMauro Carvalho Chehab <mchehab@s-opensource.com>
Tue, 31 Oct 2017 10:39:24 +0000 (06:39 -0400)
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.

Cc: Mats Randgaard <matrandg@cisco.com>
Signed-off-by: Kees Cook <keescook@chromium.org>
Signed-off-by: Hans Verkuil <hans.verkuil@cisco.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@s-opensource.com>
drivers/media/i2c/tc358743.c

index d3cf016ad0a00436a803b3fde3978c71e1060781..2b8181469b937ab6b54c475613ed41db1bc645bc 100644 (file)
@@ -1481,9 +1481,9 @@ static irqreturn_t tc358743_irq_handler(int irq, void *dev_id)
        return handled ? IRQ_HANDLED : IRQ_NONE;
 }
 
-static void tc358743_irq_poll_timer(unsigned long arg)
+static void tc358743_irq_poll_timer(struct timer_list *t)
 {
-       struct tc358743_state *state = (struct tc358743_state *)arg;
+       struct tc358743_state *state = from_timer(state, t, timer);
        unsigned int msecs;
 
        schedule_work(&state->work_i2c_poll);
@@ -2153,8 +2153,7 @@ static int tc358743_probe(struct i2c_client *client,
        } else {
                INIT_WORK(&state->work_i2c_poll,
                          tc358743_work_i2c_poll);
-               setup_timer(&state->timer, tc358743_irq_poll_timer,
-                           (unsigned long)state);
+               timer_setup(&state->timer, tc358743_irq_poll_timer, 0);
                state->timer.expires = jiffies +
                                       msecs_to_jiffies(POLL_INTERVAL_MS);
                add_timer(&state->timer);