summaryrefslogtreecommitdiff
path: root/cleopatre
diff options
context:
space:
mode:
authorNicolas Schodet2011-11-03 14:48:16 +0100
committerNicolas Schodet2011-12-20 15:49:33 +0100
commit2f435d808c0f6f1ae10dd7f0cf6288a4f50ae5b5 (patch)
tree4fd9e7121d1caf8d996a0fbcf55fa3357472ac25 /cleopatre
parent81c981a130ab16c3cf99b9f619f9d7e9d02fc1bf (diff)
cleo/linux/drivers/net/arm/synop3504: reset descriptors on link up, refs #2701
When interface is brought down, phy is stopped which will make the link down in the next phy timer run. Descriptors can not be cleared when link comes down because descriptors memory is freed yet.
Diffstat (limited to 'cleopatre')
-rw-r--r--cleopatre/linux-2.6.25.10-spc300/drivers/net/arm/synop3504.c8
1 files changed, 4 insertions, 4 deletions
diff --git a/cleopatre/linux-2.6.25.10-spc300/drivers/net/arm/synop3504.c b/cleopatre/linux-2.6.25.10-spc300/drivers/net/arm/synop3504.c
index 5b25c6bce2..0a78bf30e2 100644
--- a/cleopatre/linux-2.6.25.10-spc300/drivers/net/arm/synop3504.c
+++ b/cleopatre/linux-2.6.25.10-spc300/drivers/net/arm/synop3504.c
@@ -1243,6 +1243,10 @@ static void synop3504_on_link_up(struct net_device *dev)
struct net_priv *priv = (struct net_priv *)dev->priv;
Synopsys *synop = &priv->synop;
+ //Reset descriptors
+ synop3504_txdesc_reset(dev);
+ synop3504_rxdesc_reset(dev);
+
//Start TX and RX DMA
SynopsysStartTx(synop);
SynopsysStartRx(synop);
@@ -1276,10 +1280,6 @@ static void synop3504_on_link_down(struct net_device *dev)
SynopsysStopRx(synop);
SynopsysStopTx(synop);
- //Reset descriptors
- synop3504_txdesc_reset(dev);
- synop3504_rxdesc_reset(dev);
-
}// synop3504_on_link_down