Skip to content

Commit

Permalink
net: phy: bcm7xxx: utilize PHY revision in config_init
Browse files Browse the repository at this point in the history
Now that the GENET and SF2 drivers have been updated to communicate us
what is the revision of the BCM7xxx integrated PHY, utilize that
information in the config_init() callback to call into the appropriate
workaround function based on our revision.

While at it, we also print the revision and patch level to help debug
new chips.

Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
  • Loading branch information
Florian Fainelli authored and David S. Miller committed Sep 19, 2014
1 parent aa9aef7 commit d8ebfed
Showing 1 changed file with 15 additions and 6 deletions.
21 changes: 15 additions & 6 deletions drivers/net/phy/bcm7xxx.c
Original file line number Diff line number Diff line change
Expand Up @@ -196,13 +196,22 @@ static int bcm7xxx_eee_enable(struct phy_device *phydev)

static int bcm7xxx_28nm_config_init(struct phy_device *phydev)
{
int ret;

ret = bcm7445_config_init(phydev);
if (ret)
return ret;
u8 rev = PHY_BRCM_7XXX_REV(phydev->dev_flags);
u8 patch = PHY_BRCM_7XXX_PATCH(phydev->dev_flags);
int ret = 0;

dev_info(&phydev->dev, "PHY revision: 0x%02x, patch: %d\n", rev, patch);

switch (rev) {
case 0xa0:
case 0xb0:
ret = bcm7445_config_init(phydev);
break;
default:
ret = bcm7xxx_28nm_afe_config_init(phydev);
break;
}

ret = bcm7xxx_28nm_afe_config_init(phydev);
if (ret)
return ret;

Expand Down

0 comments on commit d8ebfed

Please sign in to comment.