Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

dmaengine: mmp: convert tasklets to use new tasklet_setup() API

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 <romain.perier@gmail.com>
Signed-off-by: Allen Pais <allen.lkml@gmail.com>
Link: https://lore.kernel.org/r/20200831103542.305571-15-allen.lkml@gmail.com
Signed-off-by: Vinod Koul <vkoul@kernel.org>

authored by

Allen Pais and committed by
Vinod Koul
77a4f4f7 80ef8869

+6 -6
+3 -3
drivers/dma/mmp_pdma.c
··· 873 873 * Do call back 874 874 * Start pending list 875 875 */ 876 - static void dma_do_tasklet(unsigned long data) 876 + static void dma_do_tasklet(struct tasklet_struct *t) 877 877 { 878 - struct mmp_pdma_chan *chan = (struct mmp_pdma_chan *)data; 878 + struct mmp_pdma_chan *chan = from_tasklet(chan, t, tasklet); 879 879 struct mmp_pdma_desc_sw *desc, *_desc; 880 880 LIST_HEAD(chain_cleanup); 881 881 unsigned long flags; ··· 993 993 spin_lock_init(&chan->desc_lock); 994 994 chan->dev = pdev->dev; 995 995 chan->chan.device = &pdev->device; 996 - tasklet_init(&chan->tasklet, dma_do_tasklet, (unsigned long)chan); 996 + tasklet_setup(&chan->tasklet, dma_do_tasklet); 997 997 INIT_LIST_HEAD(&chan->chain_pending); 998 998 INIT_LIST_HEAD(&chan->chain_running); 999 999
+3 -3
drivers/dma/mmp_tdma.c
··· 346 346 return IRQ_NONE; 347 347 } 348 348 349 - static void dma_do_tasklet(unsigned long data) 349 + static void dma_do_tasklet(struct tasklet_struct *t) 350 350 { 351 - struct mmp_tdma_chan *tdmac = (struct mmp_tdma_chan *)data; 351 + struct mmp_tdma_chan *tdmac = from_tasklet(tdmac, t, tasklet); 352 352 353 353 dmaengine_desc_get_callback_invoke(&tdmac->desc, NULL); 354 354 } ··· 586 586 tdmac->pool = pool; 587 587 tdmac->status = DMA_COMPLETE; 588 588 tdev->tdmac[tdmac->idx] = tdmac; 589 - tasklet_init(&tdmac->tasklet, dma_do_tasklet, (unsigned long)tdmac); 589 + tasklet_setup(&tdmac->tasklet, dma_do_tasklet); 590 590 591 591 /* add the channel to tdma_chan list */ 592 592 list_add_tail(&tdmac->chan.device_node,