net: phy: bcm7xxx: properly clear AFE_RX_LP_COUNTER
authorFlorian Fainelli <f.fainelli@gmail.com>
Mon, 24 Mar 2014 23:36:49 +0000 (16:36 -0700)
committerDavid S. Miller <davem@davemloft.net>
Wed, 26 Mar 2014 20:19:24 +0000 (16:19 -0400)
The AFE_RX_LP_COUNTER kept the last 3 bits set, which would not properly
clear the EEE LPI mode errors bits. Make sure that those bits are set to
0 to ensure the PHY timing is always good even during EEE wake-up.

Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/phy/bcm7xxx.c

index 5991168bcbef3c77a4a1c08cbbe2646cda98325d..526b94cea56980633c1d78caabac13004211766f 100644 (file)
@@ -135,7 +135,7 @@ static int bcm7xxx_28nm_afe_config_init(struct phy_device *phydev)
        phy_write_misc(phydev, AFE_RXCONFIG_1, 0x9a3f);
 
        /* write AFE_RX_LP_COUNTER */
-       phy_write_misc(phydev, AFE_RX_LP_COUNTER, 0x7fc7);
+       phy_write_misc(phydev, AFE_RX_LP_COUNTER, 0x7fc0);
 
        /* write AFE_HPF_TRIM_OTHERS */
        phy_write_misc(phydev, AFE_HPF_TRIM_OTHERS, 0x000b);