/linux-6.6.21/include/linux/ |
D | phylink.h | 12 struct phylink; 493 struct phylink *phylink; member 650 struct phylink *phylink_create(struct phylink_config *, 654 void phylink_destroy(struct phylink *); 655 bool phylink_expects_phy(struct phylink *pl); 657 int phylink_connect_phy(struct phylink *, struct phy_device *); 658 int phylink_of_phy_connect(struct phylink *, struct device_node *, u32 flags); 659 int phylink_fwnode_phy_connect(struct phylink *pl, 662 void phylink_disconnect_phy(struct phylink *); 664 void phylink_mac_change(struct phylink *, bool up); [all …]
|
D | pcs-rzn1-miic.h | 11 struct phylink;
|
/linux-6.6.21/Documentation/networking/ |
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-6.6.21/drivers/net/phy/ |
D | phylink.c | 46 struct phylink { struct 656 static int phylink_validate_mac_and_pcs(struct phylink *pl, in phylink_validate_mac_and_pcs() 707 static int phylink_validate_mask(struct phylink *pl, unsigned long *supported, in phylink_validate_mask() 736 static int phylink_validate(struct phylink *pl, unsigned long *supported, in phylink_validate() 750 static int phylink_parse_fixedlink(struct phylink *pl, in phylink_parse_fixedlink() 862 static int phylink_parse_mode(struct phylink *pl, in phylink_parse_mode() 994 static void phylink_apply_manual_flow(struct phylink *pl, in phylink_apply_manual_flow() 1075 static void phylink_pcs_poll_stop(struct phylink *pl) in phylink_pcs_poll_stop() 1081 static void phylink_pcs_poll_start(struct phylink *pl) in phylink_pcs_poll_start() 1087 static void phylink_mac_config(struct phylink *pl, in phylink_mac_config() [all …]
|
/linux-6.6.21/drivers/net/ethernet/microchip/sparx5/ |
D | sparx5_netdev.c | 104 err = phylink_of_phy_connect(port->phylink, port->of_node, 0); in sparx5_port_open() 110 phylink_start(port->phylink); in sparx5_port_open() 128 phylink_stop(port->phylink); in sparx5_port_open() 129 phylink_disconnect_phy(port->phylink); in sparx5_port_open() 142 phylink_stop(port->phylink); in sparx5_port_stop() 143 phylink_disconnect_phy(port->phylink); in sparx5_port_stop() 314 if (port && port->phylink) { in sparx5_destroy_netdevs() 318 phylink_disconnect_phy(port->phylink); in sparx5_destroy_netdevs() 320 phylink_destroy(port->phylink); in sparx5_destroy_netdevs() 321 port->phylink = NULL; in sparx5_destroy_netdevs()
|
D | sparx5_main.c | 263 struct phylink *phylink; in sparx5_create_port() local 330 phylink = phylink_create(&spx5_port->phylink_config, in sparx5_create_port() 334 if (IS_ERR(phylink)) in sparx5_create_port() 335 return PTR_ERR(phylink); in sparx5_create_port() 337 spx5_port->phylink = phylink; in sparx5_create_port()
|
/linux-6.6.21/drivers/net/ethernet/freescale/dpaa2/ |
D | dpaa2-mac.c | 349 phylink_start(mac->phylink); in dpaa2_mac_start() 356 phylink_stop(mac->phylink); in dpaa2_mac_stop() 367 struct phylink *phylink; in dpaa2_mac_connect() local 427 phylink = phylink_create(&mac->phylink_config, in dpaa2_mac_connect() 430 if (IS_ERR(phylink)) { in dpaa2_mac_connect() 431 err = PTR_ERR(phylink); in dpaa2_mac_connect() 434 mac->phylink = phylink; in dpaa2_mac_connect() 437 err = phylink_fwnode_phy_connect(mac->phylink, dpmac_node, 0); in dpaa2_mac_connect() 447 phylink_destroy(mac->phylink); in dpaa2_mac_connect() 457 phylink_disconnect_phy(mac->phylink); in dpaa2_mac_disconnect() [all …]
|
D | dpaa2-mac.h | 24 struct phylink *phylink; member
|
/linux-6.6.21/drivers/net/ethernet/wangxun/txgbe/ |
D | txgbe_ethtool.c | 17 return phylink_ethtool_nway_reset(txgbe->phylink); in txgbe_nway_reset() 25 return phylink_ethtool_ksettings_get(txgbe->phylink, cmd); in txgbe_get_link_ksettings() 33 return phylink_ethtool_ksettings_set(txgbe->phylink, cmd); in txgbe_set_link_ksettings()
|
D | txgbe_phy.c | 254 struct phylink *phylink; in txgbe_phylink_init() local 276 phylink = phylink_create(config, fwnode, phy_mode, &txgbe_mac_ops); in txgbe_phylink_init() 277 if (IS_ERR(phylink)) in txgbe_phylink_init() 278 return PTR_ERR(phylink); in txgbe_phylink_init() 283 ret = phylink_connect_phy(phylink, wx->phydev); in txgbe_phylink_init() 285 phylink_destroy(phylink); in txgbe_phylink_init() 290 txgbe->phylink = phylink; in txgbe_phylink_init() 486 phylink_mac_change(txgbe->phylink, !!(reg & TXGBE_CFG_PORT_ST_LINK_UP)); in txgbe_irq_handler() 811 phylink_destroy(txgbe->phylink); in txgbe_init_phy() 823 phylink_disconnect_phy(txgbe->phylink); in txgbe_remove_phy() [all …]
|
D | txgbe_type.h | 184 struct phylink *phylink; member
|
/linux-6.6.21/drivers/net/usb/ |
D | asix_devices.c | 312 phylink_ethtool_get_pauseparam(priv->phylink, pause); in ax88772_ethtool_get_pauseparam() 321 return phylink_ethtool_set_pauseparam(priv->phylink, pause); in ax88772_ethtool_set_pauseparam() 366 phylink_start(priv->phylink); in ax88772_reset() 615 phylink_suspend(priv->phylink, false); in ax88772_suspend() 650 phylink_resume(priv->phylink); in ax88772_resume() 710 ret = phylink_connect_phy(priv->phylink, priv->phydev); in ax88772_init_phy() 731 phylink_disconnect_phy(priv->phylink); in ax88772_init_phy() 799 struct phylink *phylink; in ax88772_phylink_setup() local 816 phylink = phylink_create(&priv->phylink_config, dev->net->dev.fwnode, in ax88772_phylink_setup() 818 if (IS_ERR(phylink)) in ax88772_phylink_setup() [all …]
|
/linux-6.6.21/drivers/net/ethernet/ |
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-6.6.21/Documentation/networking/device_drivers/ethernet/freescale/dpaa2/ |
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-6.6.21/drivers/net/ethernet/freescale/fman/ |
D | mac.h | 28 struct phylink *phylink; member
|
/linux-6.6.21/drivers/net/ethernet/microchip/lan966x/ |
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() 757 if (port->phylink) { in lan966x_cleanup_ports() 761 phylink_destroy(port->phylink); in lan966x_cleanup_ports() 762 port->phylink = NULL; in lan966x_cleanup_ports() 792 struct phylink *phylink; in lan966x_probe_port() local 853 phylink = phylink_create(&port->phylink_config, in lan966x_probe_port() 857 if (IS_ERR(phylink)) { in lan966x_probe_port() [all …]
|
/linux-6.6.21/drivers/net/ethernet/ti/ |
D | am65-cpsw-ethtool.c | 472 phylink_ethtool_get_pauseparam(salve->phylink, pause); in am65_cpsw_get_pauseparam() 480 return phylink_ethtool_set_pauseparam(salve->phylink, pause); in am65_cpsw_set_pauseparam() 488 phylink_ethtool_get_wol(salve->phylink, wol); in am65_cpsw_get_wol() 496 return phylink_ethtool_set_wol(salve->phylink, wol); in am65_cpsw_set_wol() 504 return phylink_ethtool_ksettings_get(salve->phylink, ecmd); in am65_cpsw_get_link_ksettings() 513 return phylink_ethtool_ksettings_set(salve->phylink, ecmd); in am65_cpsw_set_link_ksettings() 520 return phylink_ethtool_get_eee(salve->phylink, edata); in am65_cpsw_get_eee() 527 return phylink_ethtool_set_eee(salve->phylink, edata); in am65_cpsw_set_eee() 534 return phylink_ethtool_nway_reset(salve->phylink); in am65_cpsw_nway_reset()
|
D | am65-cpsw-nuss.h | 40 struct phylink *phylink; member
|
/linux-6.6.21/drivers/net/ethernet/atheros/ |
D | ag71xx.c | 371 struct phylink *phylink; member 465 return phylink_ethtool_ksettings_get(ag->phylink, kset); in ag71xx_get_link_ksettings() 473 return phylink_ethtool_ksettings_set(ag->phylink, kset); in ag71xx_set_link_ksettings() 480 return phylink_ethtool_nway_reset(ag->phylink); in ag71xx_ethtool_nway_reset() 488 phylink_ethtool_get_pauseparam(ag->phylink, pause); in ag71xx_ethtool_get_pauseparam() 496 return phylink_ethtool_set_pauseparam(ag->phylink, pause); in ag71xx_ethtool_set_pauseparam() 1097 struct phylink *phylink; in ag71xx_phylink_setup() local 1130 phylink = phylink_create(&ag->phylink_config, ag->pdev->dev.fwnode, in ag71xx_phylink_setup() 1132 if (IS_ERR(phylink)) in ag71xx_phylink_setup() 1133 return PTR_ERR(phylink); in ag71xx_phylink_setup() [all …]
|
/linux-6.6.21/drivers/net/pcs/ |
D | Kconfig | 18 This module provides helpers to phylink for managing the Lynx PCS 25 This module provides helpers to phylink for managing the LynxI PCS
|
/linux-6.6.21/drivers/net/ethernet/mscc/ |
D | ocelot.h | 49 struct phylink *phylink; member
|
D | ocelot_net.c | 540 phylink_start(priv->phylink); in ocelot_port_open() 549 phylink_stop(priv->phylink); in ocelot_port_stop() 1727 struct phylink *phylink; in ocelot_port_phylink_create() local 1761 phylink = phylink_create(&priv->phylink_config, in ocelot_port_phylink_create() 1764 if (IS_ERR(phylink)) { in ocelot_port_phylink_create() 1765 err = PTR_ERR(phylink); in ocelot_port_phylink_create() 1766 dev_err(dev, "Could not create phylink (%pe)\n", phylink); in ocelot_port_phylink_create() 1770 priv->phylink = phylink; in ocelot_port_phylink_create() 1772 err = phylink_of_phy_connect(phylink, portnp, 0); in ocelot_port_phylink_create() 1775 phylink_destroy(phylink); in ocelot_port_phylink_create() [all …]
|
/linux-6.6.21/drivers/net/ethernet/xilinx/ |
D | xilinx_axienet_main.c | 1155 ret = phylink_of_phy_connect(lp->phylink, lp->dev->of_node, 0); in axienet_open() 1161 phylink_start(lp->phylink); in axienet_open() 1196 phylink_stop(lp->phylink); in axienet_open() 1197 phylink_disconnect_phy(lp->phylink); in axienet_open() 1222 phylink_stop(lp->phylink); in axienet_stop() 1223 phylink_disconnect_phy(lp->phylink); in axienet_stop() 1297 return phylink_mii_ioctl(lp->phylink, rq, cmd); in axienet_ioctl() 1481 phylink_ethtool_get_pauseparam(lp->phylink, epauseparm); in axienet_ethtools_get_pauseparam() 1502 return phylink_ethtool_set_pauseparam(lp->phylink, epauseparm); in axienet_ethtools_set_pauseparam() 1578 return phylink_ethtool_ksettings_get(lp->phylink, cmd); in axienet_ethtools_get_link_ksettings() [all …]
|
/linux-6.6.21/drivers/net/ethernet/freescale/dpaa/ |
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-6.6.21/drivers/net/ethernet/stmicro/stmmac/ |
D | stmmac_ethtool.c | 392 return phylink_ethtool_ksettings_get(priv->phylink, cmd); in stmmac_ethtool_get_link_ksettings() 415 return phylink_ethtool_ksettings_set(priv->phylink, cmd); in stmmac_ethtool_set_link_ksettings() 475 return phylink_ethtool_nway_reset(priv->phylink); in stmmac_nway_reset() 521 phylink_ethtool_get_pauseparam(priv->phylink, pause); in stmmac_get_pauseparam() 538 return phylink_ethtool_set_pauseparam(priv->phylink, pause); in stmmac_set_pauseparam() 654 int val = phylink_get_eee_err(priv->phylink); in stmmac_get_ethtool_stats() 830 return phylink_ethtool_get_wol(priv->phylink, wol); in stmmac_get_wol() 851 int ret = phylink_ethtool_set_wol(priv->phylink, wol); in stmmac_set_wol() 902 return phylink_ethtool_get_eee(priv->phylink, edata); in stmmac_ethtool_op_get_eee() 921 ret = phylink_ethtool_set_eee(priv->phylink, edata); in stmmac_ethtool_op_set_eee()
|