OSDN Git Service

net: natsemi: convert tasklets to use new tasklet_setup() API
authorAllen Pais <apais@linux.microsoft.com>
Mon, 14 Sep 2020 07:29:34 +0000 (12:59 +0530)
committerDavid S. Miller <davem@davemloft.net>
Mon, 14 Sep 2020 20:02:37 +0000 (13:02 -0700)
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 <apais@linux.microsoft.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/ethernet/natsemi/ns83820.c

index d171b51..f59f96f 100644 (file)
@@ -923,10 +923,10 @@ out:
        spin_unlock_irqrestore(&info->lock, flags);
 }
 
-static void rx_action(unsigned long _dev)
+static void rx_action(struct tasklet_struct *t)
 {
-       struct net_device *ndev = (void *)_dev;
-       struct ns83820 *dev = PRIV(ndev);
+       struct ns83820 *dev = from_tasklet(dev, t, rx_tasklet);
+       struct net_device *ndev = dev->ndev;
        rx_irq(ndev);
        writel(ihr, dev->base + IHR);
 
@@ -1924,7 +1924,7 @@ static int ns83820_init_one(struct pci_dev *pci_dev,
        SET_NETDEV_DEV(ndev, &pci_dev->dev);
 
        INIT_WORK(&dev->tq_refill, queue_refill);
-       tasklet_init(&dev->rx_tasklet, rx_action, (unsigned long)ndev);
+       tasklet_setup(&dev->rx_tasklet, rx_action);
 
        err = pci_enable_device(pci_dev);
        if (err) {