Lines Matching +full:x +full:- +full:gene

1 // SPDX-License-Identifier: GPL-2.0-or-later
3 * Applied Micro X-Gene SoC Ethernet v2 Driver
14 struct xge_pdata *pdata = bus->priv; in xge_mdio_write()
26 } while ((done & MII_MGMT_BUSY) && wait--); in xge_mdio_write()
29 dev_err(&bus->dev, "MII_MGMT write failed\n"); in xge_mdio_write()
30 return -ETIMEDOUT; in xge_mdio_write()
38 struct xge_pdata *pdata = bus->priv; in xge_mdio_read()
50 } while ((done & MII_MGMT_BUSY) && wait--); in xge_mdio_read()
53 dev_err(&bus->dev, "MII_MGMT read failed\n"); in xge_mdio_read()
54 return -ETIMEDOUT; in xge_mdio_read()
66 struct phy_device *phydev = ndev->phydev; in xge_adjust_link()
68 if (phydev->link) { in xge_adjust_link()
69 if (pdata->phy_speed != phydev->speed) { in xge_adjust_link()
70 pdata->phy_speed = phydev->speed; in xge_adjust_link()
76 if (pdata->phy_speed != SPEED_UNKNOWN) { in xge_adjust_link()
77 pdata->phy_speed = SPEED_UNKNOWN; in xge_adjust_link()
87 struct mii_bus *mdio_bus = pdata->mdio_bus; in xge_mdio_remove()
89 if (ndev->phydev) in xge_mdio_remove()
90 phy_disconnect(ndev->phydev); in xge_mdio_remove()
92 if (mdio_bus->state == MDIOBUS_REGISTERED) in xge_mdio_remove()
101 struct device *dev = &pdata->pdev->dev; in xge_mdio_config()
108 return -ENOMEM; in xge_mdio_config()
110 mdio_bus->name = "APM X-Gene Ethernet (v2) MDIO Bus"; in xge_mdio_config()
111 mdio_bus->read = xge_mdio_read; in xge_mdio_config()
112 mdio_bus->write = xge_mdio_write; in xge_mdio_config()
113 mdio_bus->priv = pdata; in xge_mdio_config()
114 mdio_bus->parent = dev; in xge_mdio_config()
115 snprintf(mdio_bus->id, MII_BUS_ID_SIZE, "%s-mii", dev_name(dev)); in xge_mdio_config()
116 pdata->mdio_bus = mdio_bus; in xge_mdio_config()
118 mdio_bus->phy_mask = 0x1; in xge_mdio_config()
126 ret = -ENODEV; in xge_mdio_config()
131 pdata->resources.phy_mode); in xge_mdio_config()
145 pdata->phy_speed = SPEED_UNKNOWN; in xge_mdio_config()