mirror of
https://github.com/Fishwaldo/u-boot.git
synced 2025-03-21 14:41:31 +00:00
tsec: fix link detection for the RTL8211B PHY
RTL8211B sets link state register after autonegotiation complete, so with bootdelay=0 RTL8211B will report lack of the link. To fix this, we should wait for aneg to complete, even if the link is currently down. Signed-off-by: Anton Vorontsov <avorontsov@ru.mvista.com> Signed-off-by: Kim Phillips <kim.phillips@freescale.com>
This commit is contained in:
parent
7fa9cbb00d
commit
c7604783b2
1 changed files with 3 additions and 2 deletions
|
@ -583,10 +583,11 @@ uint mii_parse_RTL8211B_sr(uint mii_reg, struct tsec_private * priv)
|
|||
uint speed;
|
||||
|
||||
mii_reg = read_phy_reg(priv, MIIM_RTL8211B_PHY_STATUS);
|
||||
if ((mii_reg & MIIM_RTL8211B_PHYSTAT_LINK) &&
|
||||
!(mii_reg & MIIM_RTL8211B_PHYSTAT_SPDDONE)) {
|
||||
if (!(mii_reg & MIIM_RTL8211B_PHYSTAT_SPDDONE)) {
|
||||
int i = 0;
|
||||
|
||||
/* in case of timeout ->link is cleared */
|
||||
priv->link = 1;
|
||||
puts("Waiting for PHY realtime link");
|
||||
while (!(mii_reg & MIIM_RTL8211B_PHYSTAT_SPDDONE)) {
|
||||
/* Timeout reached ? */
|
||||
|
|
Loading…
Add table
Reference in a new issue