mirror of
https://github.com/torvalds/linux.git
synced 2024-11-11 06:31:49 +00:00
dmaengine: mv_xor: 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-17-allen.lkml@gmail.com Signed-off-by: Vinod Koul <vkoul@kernel.org>
This commit is contained in:
parent
8125968550
commit
34ca9a53ea
@ -336,9 +336,9 @@ static void mv_chan_slot_cleanup(struct mv_xor_chan *mv_chan)
|
||||
mv_chan->dmachan.completed_cookie = cookie;
|
||||
}
|
||||
|
||||
static void mv_xor_tasklet(unsigned long data)
|
||||
static void mv_xor_tasklet(struct tasklet_struct *t)
|
||||
{
|
||||
struct mv_xor_chan *chan = (struct mv_xor_chan *) data;
|
||||
struct mv_xor_chan *chan = from_tasklet(chan, t, irq_tasklet);
|
||||
|
||||
spin_lock(&chan->lock);
|
||||
mv_chan_slot_cleanup(chan);
|
||||
@ -1097,8 +1097,7 @@ mv_xor_channel_add(struct mv_xor_device *xordev,
|
||||
|
||||
mv_chan->mmr_base = xordev->xor_base;
|
||||
mv_chan->mmr_high_base = xordev->xor_high_base;
|
||||
tasklet_init(&mv_chan->irq_tasklet, mv_xor_tasklet, (unsigned long)
|
||||
mv_chan);
|
||||
tasklet_setup(&mv_chan->irq_tasklet, mv_xor_tasklet);
|
||||
|
||||
/* clear errors before enabling interrupts */
|
||||
mv_chan_clear_err_status(mv_chan);
|
||||
|
@ -553,9 +553,10 @@ int mv_xor_v2_get_pending_params(struct mv_xor_v2_device *xor_dev,
|
||||
/*
|
||||
* handle the descriptors after HW process
|
||||
*/
|
||||
static void mv_xor_v2_tasklet(unsigned long data)
|
||||
static void mv_xor_v2_tasklet(struct tasklet_struct *t)
|
||||
{
|
||||
struct mv_xor_v2_device *xor_dev = (struct mv_xor_v2_device *) data;
|
||||
struct mv_xor_v2_device *xor_dev = from_tasklet(xor_dev, t,
|
||||
irq_tasklet);
|
||||
int pending_ptr, num_of_pending, i;
|
||||
struct mv_xor_v2_sw_desc *next_pending_sw_desc = NULL;
|
||||
|
||||
@ -780,8 +781,7 @@ static int mv_xor_v2_probe(struct platform_device *pdev)
|
||||
if (ret)
|
||||
goto free_msi_irqs;
|
||||
|
||||
tasklet_init(&xor_dev->irq_tasklet, mv_xor_v2_tasklet,
|
||||
(unsigned long) xor_dev);
|
||||
tasklet_setup(&xor_dev->irq_tasklet, mv_xor_v2_tasklet);
|
||||
|
||||
xor_dev->desc_size = mv_xor_v2_set_desc_size(xor_dev);
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user