Home
last modified time | relevance | path

Searched refs:phylink (Results 1 – 25 of 66) sorted by relevance

123

/linux-6.6.21/include/linux/
Dphylink.h12 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 …]
Dpcs-rzn1-miic.h11 struct phylink;
/linux-6.6.21/Documentation/networking/
Dsfp-phylink.rst4 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/
Dphylink.c46 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/
Dsparx5_netdev.c104 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()
Dsparx5_main.c263 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/
Ddpaa2-mac.c349 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 …]
Ddpaa2-mac.h24 struct phylink *phylink; member
/linux-6.6.21/drivers/net/ethernet/wangxun/txgbe/
Dtxgbe_ethtool.c17 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()
Dtxgbe_phy.c254 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 …]
Dtxgbe_type.h184 struct phylink *phylink; member
/linux-6.6.21/drivers/net/usb/
Dasix_devices.c312 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/
Djme.c388 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/
Dmac-phy-support.rst22 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/
Dmac.h28 struct phylink *phylink; member
/linux-6.6.21/drivers/net/ethernet/microchip/lan966x/
Dlan966x_main.c186 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/
Dam65-cpsw-ethtool.c472 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()
Dam65-cpsw-nuss.h40 struct phylink *phylink; member
/linux-6.6.21/drivers/net/ethernet/atheros/
Dag71xx.c371 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/
DKconfig18 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/
Docelot.h49 struct phylink *phylink; member
Docelot_net.c540 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/
Dxilinx_axienet_main.c1155 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/
Ddpaa_ethtool.c62 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/
Dstmmac_ethtool.c392 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()

123