Commit 3a9bb5fa authored by Tim Hockin's avatar Tim Hockin Committed by Jeff Garzik

drivers/net/natsemi.c: stop tx/rx and reinit_ring on a PHY reset

parent 767b8bf8
...@@ -131,6 +131,7 @@ ...@@ -131,6 +131,7 @@
* lengthen EEPROM timeout, and always warn about timeouts * lengthen EEPROM timeout, and always warn about timeouts
(Manfred Spraul) (Manfred Spraul)
* comments update (Manfred) * comments update (Manfred)
* do the right thing on a phy-reset (Manfred and Tim)
TODO: TODO:
* big endian support with CFG:BEM instead of cpu_to_le32 * big endian support with CFG:BEM instead of cpu_to_le32
...@@ -683,6 +684,7 @@ static void do_cable_magic(struct net_device *dev); ...@@ -683,6 +684,7 @@ 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(unsigned long data);
static void dump_ring(struct net_device *dev);
static void tx_timeout(struct net_device *dev); static void tx_timeout(struct net_device *dev);
static int alloc_ring(struct net_device *dev); static int alloc_ring(struct net_device *dev);
static void refill_rx(struct net_device *dev); static void refill_rx(struct net_device *dev);
...@@ -1355,6 +1357,9 @@ static void netdev_timer(unsigned long data) ...@@ -1355,6 +1357,9 @@ static void netdev_timer(unsigned long data)
"re-initializing\n", dev->name); "re-initializing\n", dev->name);
disable_irq(dev->irq); disable_irq(dev->irq);
spin_lock_irq(&np->lock); spin_lock_irq(&np->lock);
natsemi_stop_rxtx(dev);
dump_ring(dev);
reinit_ring(dev);
init_registers(dev); init_registers(dev);
spin_unlock_irq(&np->lock); spin_unlock_irq(&np->lock);
enable_irq(dev->irq); enable_irq(dev->irq);
......
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