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

net: seeq: 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: Russell King <linux@armlinux.org.uk>
Cc: linux-arm-kernel@lists.infradead.org
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 0822c5d9
...@@ -170,9 +170,11 @@ ether3_setbuffer(struct net_device *dev, buffer_rw_t read, int start) ...@@ -170,9 +170,11 @@ ether3_setbuffer(struct net_device *dev, buffer_rw_t read, int start)
/* /*
* Switch LED off... * Switch LED off...
*/ */
static void ether3_ledoff(unsigned long data) static void ether3_ledoff(struct timer_list *t)
{ {
struct net_device *dev = (struct net_device *)data; struct dev_priv *private = from_timer(priv, t, timer);
struct net_device *dev = private->dev;
ether3_outw(priv(dev)->regs.config2 |= CFG2_CTRLO, REG_CONFIG2); ether3_outw(priv(dev)->regs.config2 |= CFG2_CTRLO, REG_CONFIG2);
} }
...@@ -183,8 +185,6 @@ static inline void ether3_ledon(struct net_device *dev) ...@@ -183,8 +185,6 @@ static inline void ether3_ledon(struct net_device *dev)
{ {
del_timer(&priv(dev)->timer); del_timer(&priv(dev)->timer);
priv(dev)->timer.expires = jiffies + HZ / 50; /* leave on for 1/50th second */ priv(dev)->timer.expires = jiffies + HZ / 50; /* leave on for 1/50th second */
priv(dev)->timer.data = (unsigned long)dev;
priv(dev)->timer.function = ether3_ledoff;
add_timer(&priv(dev)->timer); add_timer(&priv(dev)->timer);
if (priv(dev)->regs.config2 & CFG2_CTRLO) if (priv(dev)->regs.config2 & CFG2_CTRLO)
ether3_outw(priv(dev)->regs.config2 &= ~CFG2_CTRLO, REG_CONFIG2); ether3_outw(priv(dev)->regs.config2 &= ~CFG2_CTRLO, REG_CONFIG2);
...@@ -783,7 +783,8 @@ ether3_probe(struct expansion_card *ec, const struct ecard_id *id) ...@@ -783,7 +783,8 @@ ether3_probe(struct expansion_card *ec, const struct ecard_id *id)
ether3_addr(dev->dev_addr, ec); ether3_addr(dev->dev_addr, ec);
init_timer(&priv(dev)->timer); priv(dev)->dev = dev;
timer_setup(&priv(dev)->timer, ether3_ledoff, 0);
/* Reset card... /* Reset card...
*/ */
......
...@@ -165,6 +165,7 @@ struct dev_priv { ...@@ -165,6 +165,7 @@ struct dev_priv {
unsigned char tx_tail; /* buffer nr of transmitting packet */ unsigned char tx_tail; /* buffer nr of transmitting packet */
unsigned int rx_head; /* address to fetch next packet from */ unsigned int rx_head; /* address to fetch next packet from */
struct timer_list timer; struct timer_list timer;
net_device *dev;
int broken; /* 0 = ok, 1 = something went wrong */ int broken; /* 0 = ok, 1 = something went wrong */
}; };
......
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