In preparation for unconditionally passing the
struct tasklet_struct pointer to all tasklet
callbacks, switch to using the new tasklet_setup()
and from_tasklet() to pass the tasklet pointer explicitly.

Signed-off-by: Romain Perier <[email protected]>
Signed-off-by: Allen Pais <[email protected]>
---
 drivers/media/platform/marvell-ccic/mcam-core.c | 7 +++----
 1 file changed, 3 insertions(+), 4 deletions(-)

diff --git a/drivers/media/platform/marvell-ccic/mcam-core.c 
b/drivers/media/platform/marvell-ccic/mcam-core.c
index 3d4242b8182b..7c4e3498d6bb 100644
--- a/drivers/media/platform/marvell-ccic/mcam-core.c
+++ b/drivers/media/platform/marvell-ccic/mcam-core.c
@@ -438,9 +438,9 @@ static void mcam_ctlr_dma_vmalloc(struct mcam_camera *cam)
 /*
  * Copy data out to user space in the vmalloc case
  */
-static void mcam_frame_tasklet(unsigned long data)
+static void mcam_frame_tasklet(struct tasklet_struct *t)
 {
-       struct mcam_camera *cam = (struct mcam_camera *) data;
+       struct mcam_camera *cam = from_tasklet(cam, t, s_tasklet);
        int i;
        unsigned long flags;
        struct mcam_vb_buffer *buf;
@@ -1323,8 +1323,7 @@ static int mcam_setup_vb2(struct mcam_camera *cam)
                break;
        case B_vmalloc:
 #ifdef MCAM_MODE_VMALLOC
-               tasklet_init(&cam->s_tasklet, mcam_frame_tasklet,
-                               (unsigned long) cam);
+               tasklet_setup(&cam->s_tasklet, mcam_frame_tasklet);
                vq->ops = &mcam_vb2_ops;
                vq->mem_ops = &vb2_vmalloc_memops;
                cam->dma_setup = mcam_ctlr_dma_vmalloc;
-- 
2.17.1

Reply via email to