提交 91a56152 编写于 作者: Y Yoshihiro Shimoda 提交者: David S. Miller

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: NYoshihiro Shimoda <yoshihiro.shimoda.uh@renesas.com>
Signed-off-by: NDavid S. Miller <davem@davemloft.net>
上级 712ae51a
...@@ -1184,8 +1184,8 @@ static void sh_eth_adjust_link(struct net_device *ndev) ...@@ -1184,8 +1184,8 @@ static void sh_eth_adjust_link(struct net_device *ndev)
mdp->cd->set_rate(ndev); mdp->cd->set_rate(ndev);
} }
if (mdp->link == PHY_DOWN) { if (mdp->link == PHY_DOWN) {
sh_eth_write(ndev, (sh_eth_read(ndev, ECMR) & ~ECMR_TXF) sh_eth_write(ndev,
| ECMR_DM, ECMR); (sh_eth_read(ndev, ECMR) & ~ECMR_TXF), ECMR);
new_state = 1; new_state = 1;
mdp->link = phydev->link; mdp->link = phydev->link;
} }
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册