Lines Matching full:mdio
3 * Lynx PCS MDIO helpers
6 #include <linux/mdio.h>
25 struct mdio_device *mdio; member
112 phylink_mii_c22_pcs_get_state(lynx->mdio, neg_mode, state); in lynx_pcs_get_state()
115 lynx_pcs_get_state_2500basex(lynx->mdio, state); in lynx_pcs_get_state()
118 lynx_pcs_get_state_usxgmii(lynx->mdio, state); in lynx_pcs_get_state()
121 phylink_mii_c45_pcs_get_state(lynx->mdio, state); in lynx_pcs_get_state()
127 dev_dbg(&lynx->mdio->dev, in lynx_pcs_get_state()
201 return lynx_pcs_config_giga(lynx->mdio, ifmode, advertising, in lynx_pcs_config()
205 dev_err(&lynx->mdio->dev, in lynx_pcs_config()
211 return lynx_pcs_config_usxgmii(lynx->mdio, advertising, in lynx_pcs_config()
227 phylink_mii_c22_pcs_an_restart(lynx->mdio); in lynx_pcs_an_restart()
314 lynx_pcs_link_up_sgmii(lynx->mdio, neg_mode, speed, duplex); in lynx_pcs_link_up()
317 lynx_pcs_link_up_2500basex(lynx->mdio, neg_mode, speed, duplex); in lynx_pcs_link_up()
346 static struct phylink_pcs *lynx_pcs_create(struct mdio_device *mdio) in lynx_pcs_create() argument
355 mdio_device_get(mdio); in lynx_pcs_create()
356 lynx->mdio = mdio; in lynx_pcs_create()
368 struct mdio_device *mdio; in lynx_pcs_create_mdiodev() local
371 mdio = mdio_device_create(bus, addr); in lynx_pcs_create_mdiodev()
372 if (IS_ERR(mdio)) in lynx_pcs_create_mdiodev()
373 return ERR_CAST(mdio); in lynx_pcs_create_mdiodev()
375 pcs = lynx_pcs_create(mdio); in lynx_pcs_create_mdiodev()
378 * successful. If lynx_create() fails, this will free the mdio in lynx_pcs_create_mdiodev()
381 * lynx_destroy() to automatically free the mdio device. in lynx_pcs_create_mdiodev()
383 mdio_device_put(mdio); in lynx_pcs_create_mdiodev()
401 struct mdio_device *mdio; in lynx_pcs_create_fwnode() local
407 mdio = fwnode_mdio_find_device(node); in lynx_pcs_create_fwnode()
408 if (!mdio) in lynx_pcs_create_fwnode()
411 pcs = lynx_pcs_create(mdio); in lynx_pcs_create_fwnode()
414 * successful. If lynx_create() fails, this will free the mdio in lynx_pcs_create_fwnode()
417 * lynx_destroy() to automatically free the mdio device. in lynx_pcs_create_fwnode()
419 mdio_device_put(mdio); in lynx_pcs_create_fwnode()
429 mdio_device_put(lynx->mdio); in lynx_pcs_destroy()