Skip to content

Commit

Permalink
en8811h: fix 1G speed and print the autoneg speed
Browse files Browse the repository at this point in the history
  • Loading branch information
frank-w committed Apr 3, 2024
1 parent d9d75ef commit 73dc71d
Showing 1 changed file with 7 additions and 4 deletions.
11 changes: 7 additions & 4 deletions drivers/net/phy/air_en8811h.c
Original file line number Diff line number Diff line change
Expand Up @@ -574,14 +574,14 @@ static int en8811h_startup(struct phy_device *phydev)
ret = en8811h_get_autonego(phydev, &an);
if ((AUTONEG_ENABLE == an) && (0 == ret))
{
printf("AN mode...SPEED 1000/100!\n");
printf("AN mode...\n");
lpagb = phy_read(phydev, MDIO_DEVAD_NONE, MII_STAT1000);
if (lpagb < 0 )
return lpagb;
advgb = phy_read(phydev, MDIO_DEVAD_NONE, MII_CTRL1000);
if (adv < 0 )
return adv;
common_adv_gb = (lpagb & (advgb << 2));
if (advgb < 0 )
return advgb;
common_adv_gb = (lpagb | (advgb << 2));

lpa = phy_read(phydev, MDIO_DEVAD_NONE, MII_LPA);
if (lpa < 0 )
Expand All @@ -595,18 +595,21 @@ static int en8811h_startup(struct phy_device *phydev)
phydev->duplex = DUPLEX_HALF;
if (common_adv_gb & (LPA_1000FULL | LPA_1000HALF))
{
printf("AN mode...SPEED 1000!\n");
phydev->speed = SPEED_1000;
if (common_adv_gb & LPA_1000FULL)
phydev->duplex = DUPLEX_FULL;
}
else if (common_adv & (LPA_100FULL | LPA_100HALF))
{
printf("AN mode...SPEED 100!\n");
phydev->speed = SPEED_100;
if (common_adv & LPA_100FULL)
phydev->duplex = DUPLEX_FULL;
}
else
{
printf("AN mode...SPEED 10!\n");
if (common_adv & LPA_10FULL)
phydev->duplex = DUPLEX_FULL;
}
Expand Down

0 comments on commit 73dc71d

Please sign in to comment.