Lines Matching refs:mdio

29 int mdio45_probe(struct mdio_if_info *mdio, int prtad)  in mdio45_probe()  argument
37 stat2 = mdio->mdio_read(mdio->dev, prtad, mmd, MDIO_STAT2); in mdio45_probe()
43 devs1 = mdio->mdio_read(mdio->dev, prtad, mmd, MDIO_DEVS1); in mdio45_probe()
44 devs2 = mdio->mdio_read(mdio->dev, prtad, mmd, MDIO_DEVS2); in mdio45_probe()
48 mdio->prtad = prtad; in mdio45_probe()
49 mdio->mmds = devs1 | (devs2 << 16); in mdio45_probe()
69 int mdio_set_flag(const struct mdio_if_info *mdio, in mdio_set_flag() argument
73 int old_val = mdio->mdio_read(mdio->dev, prtad, devad, addr); in mdio_set_flag()
84 return mdio->mdio_write(mdio->dev, prtad, devad, addr, new_val); in mdio_set_flag()
97 int mdio45_links_ok(const struct mdio_if_info *mdio, u32 mmd_mask) in mdio45_links_ok() argument
103 reg = mdio->mdio_read(mdio->dev, mdio->prtad, in mdio45_links_ok()
113 mdio->mdio_read(mdio->dev, mdio->prtad, in mdio45_links_ok()
117 mdio->mdio_read(mdio->dev, mdio->prtad, in mdio45_links_ok()
121 reg = mdio->mdio_read(mdio->dev, mdio->prtad, in mdio45_links_ok()
140 int mdio45_nway_restart(const struct mdio_if_info *mdio) in mdio45_nway_restart() argument
142 if (!(mdio->mmds & MDIO_DEVS_AN)) in mdio45_nway_restart()
145 mdio_set_flag(mdio, mdio->prtad, MDIO_MMD_AN, MDIO_CTRL1, in mdio45_nway_restart()
151 static u32 mdio45_get_an(const struct mdio_if_info *mdio, u16 addr) in mdio45_get_an() argument
156 reg = mdio->mdio_read(mdio->dev, mdio->prtad, MDIO_MMD_AN, addr); in mdio45_get_an()
186 void mdio45_ethtool_gset_npage(const struct mdio_if_info *mdio, in mdio45_ethtool_gset_npage() argument
197 ecmd->phy_address = mdio->prtad; in mdio45_ethtool_gset_npage()
199 mdio->mode_support & (MDIO_SUPPORTS_C45 | MDIO_SUPPORTS_C22); in mdio45_ethtool_gset_npage()
201 reg = mdio->mdio_read(mdio->dev, mdio->prtad, MDIO_MMD_PMAPMD, in mdio45_ethtool_gset_npage()
210 reg = mdio->mdio_read(mdio->dev, mdio->prtad, MDIO_MMD_PMAPMD, in mdio45_ethtool_gset_npage()
237 reg = mdio->mdio_read(mdio->dev, mdio->prtad, MDIO_MMD_PMAPMD, in mdio45_ethtool_gset_npage()
245 reg = mdio->mdio_read(mdio->dev, mdio->prtad, MDIO_MMD_PMAPMD, in mdio45_ethtool_gset_npage()
260 if (mdio->mmds & MDIO_DEVS_AN) { in mdio45_ethtool_gset_npage()
262 reg = mdio->mdio_read(mdio->dev, mdio->prtad, MDIO_MMD_AN, in mdio45_ethtool_gset_npage()
268 mdio45_get_an(mdio, MDIO_AN_ADVERTISE) | in mdio45_ethtool_gset_npage()
279 int an_stat = mdio->mdio_read(mdio->dev, mdio->prtad, in mdio45_ethtool_gset_npage()
286 mdio45_get_an(mdio, MDIO_AN_LPA) | npage_lpa; in mdio45_ethtool_gset_npage()
314 reg = mdio->mdio_read(mdio->dev, mdio->prtad, MDIO_MMD_PMAPMD, in mdio45_ethtool_gset_npage()
327 switch (mdio->mdio_read(mdio->dev, mdio->prtad, MDIO_MMD_PMAPMD, in mdio45_ethtool_gset_npage()
352 int mdio_mii_ioctl(const struct mdio_if_info *mdio, in mdio_mii_ioctl() argument
361 if (mdio->prtad == MDIO_PRTAD_NONE) in mdio_mii_ioctl()
363 mii_data->phy_id = mdio->prtad; in mdio_mii_ioctl()
374 if ((mdio->mode_support & MDIO_SUPPORTS_C45) && in mdio_mii_ioctl()
378 } else if ((mdio->mode_support & MDIO_SUPPORTS_C22) && in mdio_mii_ioctl()
383 } else if ((mdio->mode_support & MDIO_EMULATE_C22) && in mdio_mii_ioctl()
384 mdio->prtad != MDIO_PRTAD_NONE && in mdio_mii_ioctl()
385 mii_data->phy_id == mdio->prtad) { in mdio_mii_ioctl()
387 prtad = mdio->prtad; in mdio_mii_ioctl()
393 devad = __ffs(mdio->mmds); in mdio_mii_ioctl()
397 if (!(mdio->mmds & MDIO_DEVS_AN)) in mdio_mii_ioctl()
413 int rc = mdio->mdio_read(mdio->dev, prtad, devad, addr); in mdio_mii_ioctl()
419 return mdio->mdio_write(mdio->dev, prtad, devad, addr, in mdio_mii_ioctl()