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

drivers/net: 8390: 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: netdev@vger.kernel.org
Signed-off-by: default avatarKees Cook <keescook@chromium.org>
Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
parent 74b6551b
...@@ -85,7 +85,7 @@ static struct net_device_stats *get_stats(struct net_device *dev); ...@@ -85,7 +85,7 @@ static struct net_device_stats *get_stats(struct net_device *dev);
static void set_multicast_list(struct net_device *dev); static void set_multicast_list(struct net_device *dev);
static void axnet_tx_timeout(struct net_device *dev); static void axnet_tx_timeout(struct net_device *dev);
static irqreturn_t ei_irq_wrapper(int irq, void *dev_id); static irqreturn_t ei_irq_wrapper(int irq, void *dev_id);
static void ei_watchdog(u_long arg); static void ei_watchdog(struct timer_list *t);
static void axnet_reset_8390(struct net_device *dev); static void axnet_reset_8390(struct net_device *dev);
static int mdio_read(unsigned int addr, int phy_id, int loc); static int mdio_read(unsigned int addr, int phy_id, int loc);
...@@ -483,7 +483,7 @@ static int axnet_open(struct net_device *dev) ...@@ -483,7 +483,7 @@ static int axnet_open(struct net_device *dev)
link->open++; link->open++;
info->link_status = 0x00; info->link_status = 0x00;
setup_timer(&info->watchdog, ei_watchdog, (u_long)dev); timer_setup(&info->watchdog, ei_watchdog, 0);
mod_timer(&info->watchdog, jiffies + HZ); mod_timer(&info->watchdog, jiffies + HZ);
return ax_open(dev); return ax_open(dev);
...@@ -547,10 +547,10 @@ static irqreturn_t ei_irq_wrapper(int irq, void *dev_id) ...@@ -547,10 +547,10 @@ static irqreturn_t ei_irq_wrapper(int irq, void *dev_id)
return ax_interrupt(irq, dev_id); return ax_interrupt(irq, dev_id);
} }
static void ei_watchdog(u_long arg) static void ei_watchdog(struct timer_list *t)
{ {
struct net_device *dev = (struct net_device *)(arg); struct axnet_dev *info = from_timer(info, t, watchdog);
struct axnet_dev *info = PRIV(dev); struct net_device *dev = info->p_dev->priv;
unsigned int nic_base = dev->base_addr; unsigned int nic_base = dev->base_addr;
unsigned int mii_addr = nic_base + AXNET_MII_EEP; unsigned int mii_addr = nic_base + AXNET_MII_EEP;
u_short link; u_short link;
......
...@@ -99,7 +99,7 @@ static int pcnet_open(struct net_device *dev); ...@@ -99,7 +99,7 @@ static int pcnet_open(struct net_device *dev);
static int pcnet_close(struct net_device *dev); static int pcnet_close(struct net_device *dev);
static int ei_ioctl(struct net_device *dev, struct ifreq *rq, int cmd); static int ei_ioctl(struct net_device *dev, struct ifreq *rq, int cmd);
static irqreturn_t ei_irq_wrapper(int irq, void *dev_id); static irqreturn_t ei_irq_wrapper(int irq, void *dev_id);
static void ei_watchdog(u_long arg); static void ei_watchdog(struct timer_list *t);
static void pcnet_reset_8390(struct net_device *dev); static void pcnet_reset_8390(struct net_device *dev);
static int set_config(struct net_device *dev, struct ifmap *map); static int set_config(struct net_device *dev, struct ifmap *map);
static int setup_shmem_window(struct pcmcia_device *link, int start_pg, static int setup_shmem_window(struct pcmcia_device *link, int start_pg,
...@@ -917,7 +917,7 @@ static int pcnet_open(struct net_device *dev) ...@@ -917,7 +917,7 @@ static int pcnet_open(struct net_device *dev)
info->phy_id = info->eth_phy; info->phy_id = info->eth_phy;
info->link_status = 0x00; info->link_status = 0x00;
setup_timer(&info->watchdog, ei_watchdog, (u_long)dev); timer_setup(&info->watchdog, ei_watchdog, 0);
mod_timer(&info->watchdog, jiffies + HZ); mod_timer(&info->watchdog, jiffies + HZ);
return ei_open(dev); return ei_open(dev);
...@@ -1006,10 +1006,10 @@ static irqreturn_t ei_irq_wrapper(int irq, void *dev_id) ...@@ -1006,10 +1006,10 @@ static irqreturn_t ei_irq_wrapper(int irq, void *dev_id)
return ret; return ret;
} }
static void ei_watchdog(u_long arg) static void ei_watchdog(struct timer_list *t)
{ {
struct net_device *dev = (struct net_device *)arg; struct pcnet_dev *info = from_timer(info, t, watchdog);
struct pcnet_dev *info = PRIV(dev); struct net_device *dev = info->p_dev->priv;
unsigned int nic_base = dev->base_addr; unsigned int nic_base = dev->base_addr;
unsigned int mii_addr = nic_base + DLINK_GPIO; unsigned int mii_addr = nic_base + DLINK_GPIO;
u_short link; u_short link;
......
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