| /linux/include/linux/ |
| H A D | phylink.h | 14 struct phylink; 497 struct phylink *phylink; member 722 struct phylink *phylink_create(struct phylink_config *, 726 void phylink_destroy(struct phylink *); 727 bool phylink_expects_phy(struct phylink *pl); 729 int phylink_connect_phy(struct phylink *, struct phy_device *); 730 int phylink_of_phy_connect(struct phylink *, struct device_node *, u32 flags); 731 int phylink_fwnode_phy_connect(struct phylink *pl, 734 void phylink_disconnect_phy(struct phylink *); 735 int phylink_set_fixed_link(struct phylink *, [all …]
|
| H A D | pcs-rzn1-miic.h | 11 struct phylink;
|
| /linux/drivers/net/ethernet/tehuti/ |
| H A D | tn40_phy.c | 49 struct phylink *phylink; in tn40_phy_register() local 63 phylink = phylink_create(config, NULL, PHY_INTERFACE_MODE_XAUI, in tn40_phy_register() 65 if (IS_ERR(phylink)) in tn40_phy_register() 66 return PTR_ERR(phylink); in tn40_phy_register() 69 priv->phylink = phylink; in tn40_phy_register() 75 phylink_destroy(priv->phylink); in tn40_phy_unregister()
|
| H A D | tn40.h | 179 struct phylink *phylink; member
|
| /linux/Documentation/networking/ |
| H A D | sfp-phylink.rst | 4 phylink title 10 phylink is a mechanism to support hot-pluggable networking modules 14 phylink supports conventional phylib-based setups, fixed link setups 20 phylink has several modes of operation, which depend on the firmware 69 Rough guide to converting a network driver to sfp/phylink 73 phylib to the sfp/phylink support. Please send patches to improve 98 #include <linux/phylink.h> 104 struct phylink *phylink; 121 - phylink_start(priv->phylink) 123 - phylink_stop(priv->phylink) [all …]
|
| /linux/drivers/net/phy/ |
| H A D | phylink.c | 41 struct phylink { struct 515 static int phylink_validate_mac_and_pcs(struct phylink *pl, in phylink_validate_mac_and_pcs() 579 static void phylink_validate_one(struct phylink *pl, struct phy_device *phy, in phylink_validate_one() 609 static int phylink_validate_mask(struct phylink *pl, struct phy_device *phy, in phylink_validate_mask() 628 static int phylink_validate(struct phylink *pl, unsigned long *supported, in phylink_validate() 659 static int phylink_parse_fixedlink(struct phylink *pl, in phylink_parse_fixedlink() 773 static int phylink_parse_mode(struct phylink *pl, in phylink_parse_mode() 853 static void phylink_apply_manual_flow(struct phylink *pl, in phylink_apply_manual_flow() 958 static unsigned int phylink_inband_caps(struct phylink *pl, in phylink_inband_caps() 973 static void phylink_pcs_poll_stop(struct phylink *pl) in phylink_pcs_poll_stop() [all …]
|
| /linux/drivers/net/ethernet/wangxun/txgbe/ |
| H A D | txgbe_aml.c | 488 struct phylink *phylink; in txgbe_phylink_init_aml() local 513 phylink = phylink_create(config, NULL, phy_mode, &txgbe_mac_ops_aml); in txgbe_phylink_init_aml() 514 if (IS_ERR(phylink)) in txgbe_phylink_init_aml() 515 return PTR_ERR(phylink); in txgbe_phylink_init_aml() 517 err = phylink_set_fixed_link(phylink, &state); in txgbe_phylink_init_aml() 520 phylink_destroy(phylink); in txgbe_phylink_init_aml() 524 wx->phylink = phylink; in txgbe_phylink_init_aml()
|
| H A D | txgbe_main.c | 172 phylink_start(wx->phylink); in txgbe_up_complete() 178 phylink_start(wx->phylink); in txgbe_up_complete() 181 phylink_start(wx->phylink); in txgbe_up_complete() 294 phylink_stop(wx->phylink); in txgbe_down() 297 phylink_stop(wx->phylink); in txgbe_down() 302 phylink_stop(wx->phylink); in txgbe_down() 324 phylink_stop(wx->phylink); in txgbe_down_suspend()
|
| /linux/drivers/net/usb/ |
| H A D | asix_devices.c | 300 phylink_ethtool_get_pauseparam(priv->phylink, pause); in ax88772_ethtool_get_pauseparam() 309 return phylink_ethtool_set_pauseparam(priv->phylink, pause); in ax88772_ethtool_set_pauseparam() 354 phylink_start(priv->phylink); in ax88772_reset() 603 phylink_suspend(priv->phylink, false); in ax88772_suspend() 653 phylink_resume(priv->phylink); in ax88772_resume() 714 ret = phylink_connect_phy(priv->phylink, priv->phydev); in ax88772_init_phy() 735 phylink_disconnect_phy(priv->phylink); in ax88772_init_phy() 803 struct phylink *phylink; in ax88772_phylink_setup() local 820 phylink = phylink_create(&priv->phylink_config, dev->net->dev.fwnode, in ax88772_phylink_setup() 822 if (IS_ERR(phylink)) in ax88772_phylink_setup() [all …]
|
| H A D | lan78xx.c | 467 struct phylink *phylink; member 1820 return phylink_ethtool_get_eee(dev->phylink, edata); in lan78xx_get_eee() 1827 return phylink_ethtool_set_eee(dev->phylink, edata); in lan78xx_set_eee() 1858 return phylink_ethtool_ksettings_get(dev->phylink, cmd); in lan78xx_get_link_ksettings() 1866 return phylink_ethtool_ksettings_set(dev->phylink, cmd); in lan78xx_set_link_ksettings() 1874 phylink_ethtool_get_pauseparam(dev->phylink, pause); in lan78xx_get_pause() 1882 return phylink_ethtool_set_pauseparam(dev->phylink, pause); in lan78xx_set_pause() 2636 return phylink_set_fixed_link(dev->phylink, &state); in lan78xx_set_fixed_link() 2802 struct phylink *phylink; in lan78xx_phylink_setup() local 2839 phylink = phylink_create(pc, dev->net->dev.fwnode, in lan78xx_phylink_setup() [all …]
|
| /linux/drivers/net/ethernet/microchip/lan966x/ |
| H A D | lan966x_main.c | 186 err = phylink_fwnode_phy_connect(port->phylink, port->fwnode, 0); in lan966x_port_open() 192 phylink_start(port->phylink); in lan966x_port_open() 202 phylink_stop(port->phylink); in lan966x_port_stop() 203 phylink_disconnect_phy(port->phylink); in lan966x_port_stop() 761 if (port->phylink) { in lan966x_cleanup_ports() 765 phylink_destroy(port->phylink); in lan966x_cleanup_ports() 766 port->phylink = NULL; in lan966x_cleanup_ports() 796 struct phylink *phylink; in lan966x_probe_port() local 856 phylink = phylink_create(&port->phylink_config, in lan966x_probe_port() 860 if (IS_ERR(phylink)) { in lan966x_probe_port() [all …]
|
| /linux/drivers/net/ethernet/ |
| H A D | jme.c | 388 u32 phylink, bmsr; in jme_linkstat_from_phy() local 390 phylink = jme_mdio_read(jme->dev, jme->mii_if.phy_id, 17); in jme_linkstat_from_phy() 393 phylink |= PHY_LINK_AUTONEG_COMPLETE; in jme_linkstat_from_phy() 395 return phylink; in jme_linkstat_from_phy() 414 u32 phylink, cnt = JME_SPDRSV_TIMEOUT, bmcr; in jme_check_link() local 421 phylink = jme_linkstat_from_phy(jme); in jme_check_link() 423 phylink = jread32(jme, JME_PHY_LINK); in jme_check_link() 425 if (phylink & PHY_LINK_UP) { in jme_check_link() 426 if (!(phylink & PHY_LINK_AUTONEG_COMPLETE)) { in jme_check_link() 431 phylink = PHY_LINK_UP; in jme_check_link() [all …]
|
| /linux/Documentation/networking/device_drivers/ethernet/freescale/dpaa2/ |
| H A D | mac-phy-support.rst | 22 the help of phylink. 26 directly by the dpaa2-eth driver or by phylink. 34 | net_device | | phylink |--| +-----+ +-----+ +-----+ +-----+ | 66 phylink instance, the dpaa2-eth driver will not bind to the connected dpmac 71 phylink) and its attached net_device driver (dpaa2-eth, dpaa2-ethsw), 184 A phylink integration is necessary only when the partner DPMAC is not of
|
| /linux/drivers/net/ethernet/freescale/enetc/ |
| H A D | enetc_pf_common.c | 425 struct phylink *phylink; in enetc_phylink_create() local 462 phylink = phylink_create(&pf->phylink_config, of_fwnode_handle(node), in enetc_phylink_create() 464 if (IS_ERR(phylink)) { in enetc_phylink_create() 465 err = PTR_ERR(phylink); in enetc_phylink_create() 469 priv->phylink = phylink; in enetc_phylink_create() 477 phylink_destroy(priv->phylink); in enetc_phylink_destroy()
|
| /linux/drivers/net/ethernet/atheros/ |
| H A D | ag71xx.c | 371 struct phylink *phylink; member 451 return phylink_mii_ioctl(ag->phylink, ifr, cmd); in ag71xx_do_ioctl() 469 return phylink_ethtool_ksettings_get(ag->phylink, kset); in ag71xx_get_link_ksettings() 477 return phylink_ethtool_ksettings_set(ag->phylink, kset); in ag71xx_set_link_ksettings() 484 return phylink_ethtool_nway_reset(ag->phylink); in ag71xx_ethtool_nway_reset() 492 phylink_ethtool_get_pauseparam(ag->phylink, pause); in ag71xx_ethtool_get_pauseparam() 500 return phylink_ethtool_set_pauseparam(ag->phylink, pause); in ag71xx_ethtool_set_pauseparam() 1076 struct phylink *phylink; in ag71xx_phylink_setup() local 1109 phylink = phylink_create(&ag->phylink_config, ag->pdev->dev.fwnode, in ag71xx_phylink_setup() 1111 if (IS_ERR(phylink)) in ag71xx_phylink_setup() [all …]
|
| /linux/drivers/net/ethernet/wangxun/ngbe/ |
| H A D | ngbe_main.c | 55 phylink_stop(wx->phylink); in ngbe_down_suspend() 56 phylink_disconnect_phy(wx->phylink); in ngbe_down_suspend() 444 phylink_stop(wx->phylink); in ngbe_down() 471 phylink_start(wx->phylink); in ngbe_up_complete() 505 err = phylink_connect_phy(wx->phylink, wx->phydev); in ngbe_open() 523 phylink_disconnect_phy(wx->phylink); in ngbe_open() 561 phylink_disconnect_phy(wx->phylink); in ngbe_close() 888 phylink_destroy(wx->phylink); in ngbe_probe() 931 phylink_destroy(wx->phylink); in ngbe_remove()
|
| /linux/drivers/net/ethernet/freescale/dpaa/ |
| H A D | dpaa_ethtool.c | 62 return phylink_ethtool_ksettings_get(mac_dev->phylink, cmd); in dpaa_get_link_ksettings() 71 return phylink_ethtool_ksettings_set(mac_dev->phylink, cmd); in dpaa_set_link_ksettings() 99 return phylink_ethtool_nway_reset(mac_dev->phylink); in dpaa_nway_reset() 108 phylink_ethtool_get_pauseparam(mac_dev->phylink, epause); in dpaa_get_pauseparam() 117 return phylink_ethtool_set_pauseparam(mac_dev->phylink, epause); in dpaa_set_pauseparam()
|
| /linux/drivers/net/ethernet/stmicro/stmmac/ |
| H A D | stmmac_ethtool.c | 325 return phylink_ethtool_ksettings_get(priv->phylink, cmd); in stmmac_ethtool_get_link_ksettings() 334 return phylink_ethtool_ksettings_set(priv->phylink, cmd); in stmmac_ethtool_set_link_ksettings() 387 return phylink_ethtool_nway_reset(priv->phylink); in stmmac_nway_reset() 427 phylink_ethtool_get_pauseparam(priv->phylink, pause); in stmmac_get_pauseparam() 436 return phylink_ethtool_set_pauseparam(priv->phylink, pause); in stmmac_set_pauseparam() 551 int val = phylink_get_eee_err(priv->phylink); in stmmac_get_ethtool_stats() 726 return phylink_ethtool_get_wol(priv->phylink, wol); in stmmac_get_wol() 733 return phylink_ethtool_set_wol(priv->phylink, wol); in stmmac_set_wol() 741 return phylink_ethtool_get_eee(priv->phylink, edata); in stmmac_ethtool_op_get_eee() 749 return phylink_ethtool_set_eee(priv->phylink, edata); in stmmac_ethtool_op_set_eee()
|
| H A D | stmmac_main.c | 1309 if (!phylink_expects_phy(priv->phylink)) in stmmac_init_phy() 1349 ret = phylink_connect_phy(priv->phylink, phydev); in stmmac_init_phy() 1352 ret = phylink_fwnode_phy_connect(priv->phylink, fwnode, dev_flags); in stmmac_init_phy() 1366 if (!phylink_ethtool_get_eee(priv->phylink, &eee)) { in stmmac_init_phy() 1368 phylink_ethtool_set_eee(priv->phylink, &eee); in stmmac_init_phy() 1378 struct phylink *phylink; in stmmac_phylink_setup() local 1466 phylink = phylink_create(config, dev_fwnode(priv->device), in stmmac_phylink_setup() 1469 if (IS_ERR(phylink)) in stmmac_phylink_setup() 1470 return PTR_ERR(phylink); in stmmac_phylink_setup() 1472 priv->phylink = phylink; in stmmac_phylink_setup() [all …]
|
| /linux/drivers/net/ethernet/ti/ |
| H A D | am65-cpsw-nuss.h | 39 struct phylink *phylink; member
|
| /linux/drivers/net/ethernet/xilinx/ |
| H A D | xilinx_axienet_main.c | 1674 ret = phylink_of_phy_connect(lp->phylink, lp->dev->of_node, 0); in axienet_open() 1680 phylink_start(lp->phylink); in axienet_open() 1711 phylink_stop(lp->phylink); in axienet_open() 1712 phylink_disconnect_phy(lp->phylink); in axienet_open() 1742 phylink_stop(lp->phylink); in axienet_stop() 1743 phylink_disconnect_phy(lp->phylink); in axienet_stop() 1834 return phylink_mii_ioctl(lp->phylink, rq, cmd); in axienet_ioctl() 2061 phylink_ethtool_get_pauseparam(lp->phylink, epauseparm); in axienet_ethtools_get_pauseparam() 2082 return phylink_ethtool_set_pauseparam(lp->phylink, epauseparm); in axienet_ethtools_set_pauseparam() 2287 return phylink_ethtool_ksettings_get(lp->phylink, cmd); in axienet_ethtools_get_link_ksettings() [all …]
|
| /linux/drivers/net/ethernet/altera/ |
| H A D | altera_tse_main.c | 952 ret = phylink_of_phy_connect(priv->phylink, priv->device->of_node, 0); in tse_open() 957 phylink_start(priv->phylink); in tse_open() 988 phylink_stop(priv->phylink); in tse_shutdown() 989 phylink_disconnect_phy(priv->phylink); in tse_shutdown() 1416 priv->phylink = phylink_create(&priv->phylink_config, in altera_tse_probe() 1419 if (IS_ERR(priv->phylink)) { in altera_tse_probe() 1421 ret = PTR_ERR(priv->phylink); in altera_tse_probe() 1445 phylink_destroy(priv->phylink); in altera_tse_probe() 1466 phylink_destroy(priv->phylink); in altera_tse_remove()
|
| H A D | altera_tse_ethtool.c | 229 return phylink_ethtool_ksettings_set(priv->phylink, cmd); in tse_ethtool_set_link_ksettings() 237 return phylink_ethtool_ksettings_get(priv->phylink, cmd); in tse_ethtool_get_link_ksettings()
|
| /linux/drivers/net/ethernet/freescale/fs_enet/ |
| H A D | fs_enet.h | 144 struct phylink *phylink; member
|
| /linux/drivers/net/ethernet/marvell/ |
| H A D | mvneta.c | 538 struct phylink *phylink; member 3786 phylink_start(pp->phylink); in mvneta_start_dev() 3789 phylink_speed_up(pp->phylink); in mvneta_start_dev() 3803 phylink_speed_down(pp->phylink, false); in mvneta_stop_dev() 3805 phylink_stop(pp->phylink); in mvneta_stop_dev() 4354 int err = phylink_of_phy_connect(pp->phylink, pp->dn, 0); in mvneta_mdio_probe() 4359 phylink_ethtool_get_wol(pp->phylink, &wol); in mvneta_mdio_probe() 4371 phylink_disconnect_phy(pp->phylink); in mvneta_mdio_remove() 4650 return phylink_mii_ioctl(pp->phylink, ifr, cmd); in mvneta_ioctl() 4705 return phylink_ethtool_ksettings_set(pp->phylink, cmd); in mvneta_ethtool_set_link_ksettings() [all …]
|