diff options
author | Yoshihiro Shimoda <yoshihiro.shimoda.uh@renesas.com> | 2011-07-05 20:33:51 +0000 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2011-07-05 23:41:17 -0700 |
commit | 91a5615203355bb34e0b9e68e94f27f24719a74c (patch) | |
tree | cfafdf3c89ee8e40a3da28de6ed88c89e1876faa | |
parent | 712ae51afd55b20c04c5383d02ba5d10233313b1 (diff) | |
download | linux-stable-91a5615203355bb34e0b9e68e94f27f24719a74c.tar.gz linux-stable-91a5615203355bb34e0b9e68e94f27f24719a74c.tar.bz2 linux-stable-91a5615203355bb34e0b9e68e94f27f24719a74c.zip |
net: sh_eth: fix cannot work half-duplex mode
When link was down, the bit of DM in ECMR was always set.
So, we could not use half-duplex mode on the controller.
Signed-off-by: Yoshihiro Shimoda <yoshihiro.shimoda.uh@renesas.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
-rw-r--r-- | drivers/net/sh_eth.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/drivers/net/sh_eth.c b/drivers/net/sh_eth.c index 8a72a979ee71..35bbc2718c13 100644 --- a/drivers/net/sh_eth.c +++ b/drivers/net/sh_eth.c @@ -1184,8 +1184,8 @@ static void sh_eth_adjust_link(struct net_device *ndev) mdp->cd->set_rate(ndev); } if (mdp->link == PHY_DOWN) { - sh_eth_write(ndev, (sh_eth_read(ndev, ECMR) & ~ECMR_TXF) - | ECMR_DM, ECMR); + sh_eth_write(ndev, + (sh_eth_read(ndev, ECMR) & ~ECMR_TXF), ECMR); new_state = 1; mdp->link = phydev->link; } |