提交 f655adef 编写于 作者: K Kim Phillips 提交者: Wolfgang Denk

net: uec_phy: handle 88e1111 rev.B2 erratum 5.6

erratum 5.6 states the autoneg completion bit is functional only if the
autoneg bit is asserted.

This fixes any secondarily-issued networking commands on non-gigabit
links on the mpc8360 mds board.
Signed-off-by: NKim Phillips <kim.phillips@freescale.com>
上级 093e14c5
......@@ -574,6 +574,7 @@ void marvell_phy_interface_mode (struct eth_device *dev,
{
uec_private_t *uec = (uec_private_t *) dev->priv;
struct uec_mii_info *mii_info;
u16 status;
if (!uec->mii_info) {
printf ("%s: the PHY not intialized\n", __FUNCTION__);
......@@ -609,6 +610,13 @@ void marvell_phy_interface_mode (struct eth_device *dev,
phy_write (mii_info, 0x00, 0x8100);
udelay (1000000);
}
/* handle 88e1111 rev.B2 erratum 5.6 */
if (mii_info->autoneg) {
status = phy_read (mii_info, PHY_BMCR);
phy_write (mii_info, PHY_BMCR, status | PHY_BMCR_AUTON);
}
/* now the B2 will correctly report autoneg completion status */
}
void change_phy_interface_mode (struct eth_device *dev, enet_interface_e mode)
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册