Blackfin EMAC driver: Fix Ethernet communication bug (dupliated and lost packets)
Fix Ethernet communication bug(dupliated and lost packets) in RMII PHY mode- dont call mac_disable and mac_enable during 10/100 REFCLK changes - mac_enable screws up the DMA descriptor chain Signed-off-by: Michael Hennerich <michael.hennerich@analog.com> Signed-off-by: Bryan Wu <bryan.wu@analog.com> Signed-off-by: Jeff Garzik <jeff@garzik.org>
This commit is contained in:
parent
a06da75469
commit
2ea10b1a54
@ -371,7 +371,6 @@ static void bf537_adjust_link(struct net_device *dev)
|
|||||||
if (phydev->speed != lp->old_speed) {
|
if (phydev->speed != lp->old_speed) {
|
||||||
#if defined(CONFIG_BFIN_MAC_RMII)
|
#if defined(CONFIG_BFIN_MAC_RMII)
|
||||||
u32 opmode = bfin_read_EMAC_OPMODE();
|
u32 opmode = bfin_read_EMAC_OPMODE();
|
||||||
bf537mac_disable();
|
|
||||||
switch (phydev->speed) {
|
switch (phydev->speed) {
|
||||||
case 10:
|
case 10:
|
||||||
opmode |= RMII_10;
|
opmode |= RMII_10;
|
||||||
@ -386,7 +385,6 @@ static void bf537_adjust_link(struct net_device *dev)
|
|||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
bfin_write_EMAC_OPMODE(opmode);
|
bfin_write_EMAC_OPMODE(opmode);
|
||||||
bf537mac_enable();
|
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
new_state = 1;
|
new_state = 1;
|
||||||
|
Loading…
Reference in New Issue
Block a user