diff --git a/drivers/net/spider_net.c b/drivers/net/spider_net.c index c5d2cb834c09..e4a9bdd8d77c 100644 --- a/drivers/net/spider_net.c +++ b/drivers/net/spider_net.c @@ -1909,26 +1909,26 @@ static void spider_net_link_phy(unsigned long data) pr_info("%s: link is down trying to bring it up\n", card->netdev->name); - switch (phy->medium) { - case GMII_COPPER: + switch (card->medium) { + case BCM54XX_COPPER: /* enable fiber with autonegotiation first */ if (phy->def->ops->enable_fiber) phy->def->ops->enable_fiber(phy, 1); - phy->medium = GMII_FIBER; + card->medium = BCM54XX_FIBER; break; - case GMII_FIBER: + case BCM54XX_FIBER: /* fiber didn't come up, try to disable fiber autoneg */ if (phy->def->ops->enable_fiber) phy->def->ops->enable_fiber(phy, 0); - phy->medium = GMII_UNKNOWN; + card->medium = BCM54XX_UNKNOWN; break; - case GMII_UNKNOWN: + case BCM54XX_UNKNOWN: /* copper, fiber with and without failed, * retry from beginning */ spider_net_setup_aneg(card); - phy->medium = GMII_COPPER; + card->medium = BCM54XX_COPPER; break; } diff --git a/drivers/net/spider_net.h b/drivers/net/spider_net.h index e072a7cb66f5..f7d1310ff473 100644 --- a/drivers/net/spider_net.h +++ b/drivers/net/spider_net.h @@ -444,6 +444,8 @@ struct spider_net_card { struct pci_dev *pdev; struct mii_phy phy; + int medium; + void __iomem *regs; struct spider_net_descr_chain tx_chain;