Commit 15735c9d authored by Kees Cook's avatar Kees Cook Committed by David S. Miller

drivers/net: natsemi: Convert timers to use timer_setup()

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: "David S. Miller" <davem@davemloft.net>
Cc: Allen Pais <allen.lkml@gmail.com>
Cc: Eric Dumazet <edumazet@google.com>
Cc: Philippe Reynes <tremyfr@gmail.com>
Cc: Wei Yongjun <weiyongjun1@huawei.com>
Cc: netdev@vger.kernel.org
Signed-off-by: default avatarKees Cook <keescook@chromium.org>
Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
parent 0365b047
...@@ -610,7 +610,7 @@ static int netdev_open(struct net_device *dev); ...@@ -610,7 +610,7 @@ static int netdev_open(struct net_device *dev);
static void do_cable_magic(struct net_device *dev); static void do_cable_magic(struct net_device *dev);
static void undo_cable_magic(struct net_device *dev); static void undo_cable_magic(struct net_device *dev);
static void check_link(struct net_device *dev); static void check_link(struct net_device *dev);
static void netdev_timer(unsigned long data); static void netdev_timer(struct timer_list *t);
static void dump_ring(struct net_device *dev); static void dump_ring(struct net_device *dev);
static void ns_tx_timeout(struct net_device *dev); static void ns_tx_timeout(struct net_device *dev);
static int alloc_ring(struct net_device *dev); static int alloc_ring(struct net_device *dev);
...@@ -1571,7 +1571,7 @@ static int netdev_open(struct net_device *dev) ...@@ -1571,7 +1571,7 @@ static int netdev_open(struct net_device *dev)
dev->name, (int)readl(ioaddr + ChipCmd)); dev->name, (int)readl(ioaddr + ChipCmd));
/* Set the timer to check for link beat. */ /* Set the timer to check for link beat. */
setup_timer(&np->timer, netdev_timer, (unsigned long)dev); timer_setup(&np->timer, netdev_timer, 0);
np->timer.expires = round_jiffies(jiffies + NATSEMI_TIMER_FREQ); np->timer.expires = round_jiffies(jiffies + NATSEMI_TIMER_FREQ);
add_timer(&np->timer); add_timer(&np->timer);
...@@ -1787,10 +1787,10 @@ static void init_registers(struct net_device *dev) ...@@ -1787,10 +1787,10 @@ static void init_registers(struct net_device *dev)
* this check via dspcfg_workaround sysfs option. * this check via dspcfg_workaround sysfs option.
* 3) check of death of the RX path due to OOM * 3) check of death of the RX path due to OOM
*/ */
static void netdev_timer(unsigned long data) static void netdev_timer(struct timer_list *t)
{ {
struct net_device *dev = (struct net_device *)data; struct netdev_private *np = from_timer(np, t, timer);
struct netdev_private *np = netdev_priv(dev); struct net_device *dev = np->dev;
void __iomem * ioaddr = ns_ioaddr(dev); void __iomem * ioaddr = ns_ioaddr(dev);
int next_tick = NATSEMI_TIMER_FREQ; int next_tick = NATSEMI_TIMER_FREQ;
const int irq = np->pci_dev->irq; const int irq = np->pci_dev->irq;
......
...@@ -1600,10 +1600,10 @@ static void ns83820_tx_timeout(struct net_device *ndev) ...@@ -1600,10 +1600,10 @@ static void ns83820_tx_timeout(struct net_device *ndev)
spin_unlock_irqrestore(&dev->tx_lock, flags); spin_unlock_irqrestore(&dev->tx_lock, flags);
} }
static void ns83820_tx_watch(unsigned long data) static void ns83820_tx_watch(struct timer_list *t)
{ {
struct net_device *ndev = (void *)data; struct ns83820 *dev = from_timer(dev, t, tx_watchdog);
struct ns83820 *dev = PRIV(ndev); struct net_device *ndev = dev->ndev;
#if defined(DEBUG) #if defined(DEBUG)
printk("ns83820_tx_watch: %u %u %d\n", printk("ns83820_tx_watch: %u %u %d\n",
...@@ -1652,7 +1652,7 @@ static int ns83820_open(struct net_device *ndev) ...@@ -1652,7 +1652,7 @@ static int ns83820_open(struct net_device *ndev)
writel(0, dev->base + TXDP_HI); writel(0, dev->base + TXDP_HI);
writel(desc, dev->base + TXDP); writel(desc, dev->base + TXDP);
setup_timer(&dev->tx_watchdog, ns83820_tx_watch, (unsigned long)ndev); timer_setup(&dev->tx_watchdog, ns83820_tx_watch, 0);
mod_timer(&dev->tx_watchdog, jiffies + 2*HZ); mod_timer(&dev->tx_watchdog, jiffies + 2*HZ);
netif_start_queue(ndev); /* FIXME: wait for phy to come up */ netif_start_queue(ndev); /* FIXME: wait for phy to come up */
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment