]> git.proxmox.com Git - mirror_ubuntu-bionic-kernel.git/commitdiff
media: radio: Convert timers to use timer_setup()
authorKees Cook <keescook@chromium.org>
Tue, 24 Oct 2017 15:23:03 +0000 (11:23 -0400)
committerMauro Carvalho Chehab <mchehab@s-opensource.com>
Tue, 31 Oct 2017 11:25:17 +0000 (07:25 -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: Hans Verkuil <hverkuil@xs4all.nl>
Cc: Mauro Carvalho Chehab <mchehab@kernel.org>
Cc: "David S. Miller" <davem@davemloft.net>
Cc: Johannes Berg <johannes.berg@intel.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/radio/radio-cadet.c
drivers/media/radio/wl128x/fmdrv_common.c

index 6888b7db449d2e4d56ab5f1a84898301b6c815e3..7575e5370a49fc4aa34fd21984f5a7b4508d12ed 100644 (file)
@@ -281,9 +281,9 @@ static bool cadet_has_rds_data(struct cadet *dev)
 }
 
 
-static void cadet_handler(unsigned long data)
+static void cadet_handler(struct timer_list *t)
 {
-       struct cadet *dev = (void *)data;
+       struct cadet *dev = from_timer(dev, t, readtimer);
 
        /* Service the RDS fifo */
        if (mutex_trylock(&dev->lock)) {
@@ -309,7 +309,6 @@ static void cadet_handler(unsigned long data)
        /*
         * Clean up and exit
         */
-       setup_timer(&dev->readtimer, cadet_handler, data);
        dev->readtimer.expires = jiffies + msecs_to_jiffies(50);
        add_timer(&dev->readtimer);
 }
@@ -318,7 +317,7 @@ static void cadet_start_rds(struct cadet *dev)
 {
        dev->rdsstat = 1;
        outb(0x80, dev->io);        /* Select RDS fifo */
-       setup_timer(&dev->readtimer, cadet_handler, (unsigned long)dev);
+       timer_setup(&dev->readtimer, cadet_handler, 0);
        dev->readtimer.expires = jiffies + msecs_to_jiffies(50);
        add_timer(&dev->readtimer);
 }
index ab3428bf63feeb42e6ccb02498c4493cadad15fb..800d69c3f80b8677fb3e609198beb1a3ba251cee 100644 (file)
@@ -543,13 +543,13 @@ static inline void fm_irq_common_cmd_resp_helper(struct fmdev *fmdev, u8 stage)
  * interrupt process. Therefore reset stage index to re-enable default
  * interrupts. So that next interrupt will be processed as usual.
  */
-static void int_timeout_handler(unsigned long data)
+static void int_timeout_handler(struct timer_list *t)
 {
        struct fmdev *fmdev;
        struct fm_irq *fmirq;
 
        fmdbg("irq: timeout,trying to re-enable fm interrupts\n");
-       fmdev = (struct fmdev *)data;
+       fmdev = from_timer(fmdev, t, irq_info.timer);
        fmirq = &fmdev->irq_info;
        fmirq->retry++;
 
@@ -1550,8 +1550,7 @@ int fmc_prepare(struct fmdev *fmdev)
        atomic_set(&fmdev->tx_cnt, 1);
        fmdev->resp_comp = NULL;
 
-       setup_timer(&fmdev->irq_info.timer, &int_timeout_handler,
-                   (unsigned long)fmdev);
+       timer_setup(&fmdev->irq_info.timer, int_timeout_handler, 0);
        /*TODO: add FM_STIC_EVENT later */
        fmdev->irq_info.mask = FM_MAL_EVENT;