| /Linux-v5.4/include/linux/ |
| D | phylink.h | 235 struct phylink *phylink_create(struct phylink_config *, struct fwnode_handle *, 238 void phylink_destroy(struct phylink *); 240 int phylink_connect_phy(struct phylink *, struct phy_device *); 241 int phylink_of_phy_connect(struct phylink *, struct device_node *, u32 flags); 242 void phylink_disconnect_phy(struct phylink *); 243 int phylink_fixed_state_cb(struct phylink *, 247 void phylink_mac_change(struct phylink *, bool up); 249 void phylink_start(struct phylink *); 250 void phylink_stop(struct phylink *); 252 void phylink_ethtool_get_wol(struct phylink *, struct ethtool_wolinfo *); [all …]
|
| D | phy.h | 205 struct phylink; 435 struct phylink *phylink; member
|
| /Linux-v5.4/Documentation/networking/ |
| D | sfp-phylink.rst | 4 phylink chapter 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 95 #include <linux/phylink.h> 101 struct phylink *phylink; 118 - phylink_start(priv->phylink) 120 - phylink_stop(priv->phylink) [all …]
|
| D | index.rst | 27 sfp-phylink
|
| D | kapi.rst | 156 .. kernel-doc:: include/linux/phylink.h 159 .. kernel-doc:: drivers/net/phy/phylink.c
|
| /Linux-v5.4/drivers/net/phy/ |
| D | phylink.c | 40 struct phylink { struct 152 static int phylink_validate(struct phylink *pl, unsigned long *supported, in phylink_validate() 160 static int phylink_parse_fixedlink(struct phylink *pl, in phylink_parse_fixedlink() 254 static int phylink_parse_mode(struct phylink *pl, struct fwnode_handle *fwnode) in phylink_parse_mode() 333 static void phylink_mac_config(struct phylink *pl, in phylink_mac_config() 348 static void phylink_mac_config_up(struct phylink *pl, in phylink_mac_config_up() 355 static void phylink_mac_an_restart(struct phylink *pl) in phylink_mac_an_restart() 362 static int phylink_get_mac_state(struct phylink *pl, struct phylink_link_state *state) in phylink_get_mac_state() 381 static void phylink_get_fixed_state(struct phylink *pl, struct phylink_link_state *state) in phylink_get_fixed_state() 398 static void phylink_resolve_flow(struct phylink *pl, in phylink_resolve_flow() [all …]
|
| D | Makefile | 22 obj-$(CONFIG_PHYLINK) += phylink.o
|
| D | phy_device.c | 1410 phydev->phylink = NULL; in phy_detach()
|
| /Linux-v5.4/drivers/net/ethernet/ |
| D | jme.c | 387 u32 phylink, bmsr; in jme_linkstat_from_phy() local 389 phylink = jme_mdio_read(jme->dev, jme->mii_if.phy_id, 17); in jme_linkstat_from_phy() 392 phylink |= PHY_LINK_AUTONEG_COMPLETE; in jme_linkstat_from_phy() 394 return phylink; in jme_linkstat_from_phy() 413 u32 phylink, cnt = JME_SPDRSV_TIMEOUT, bmcr; in jme_check_link() local 420 phylink = jme_linkstat_from_phy(jme); in jme_check_link() 422 phylink = jread32(jme, JME_PHY_LINK); in jme_check_link() 424 if (phylink & PHY_LINK_UP) { in jme_check_link() 425 if (!(phylink & PHY_LINK_AUTONEG_COMPLETE)) { in jme_check_link() 430 phylink = PHY_LINK_UP; in jme_check_link() [all …]
|
| D | jme.h | 424 u32 phylink; member
|
| /Linux-v5.4/drivers/net/ethernet/xilinx/ |
| D | xilinx_axienet_main.c | 930 ret = phylink_of_phy_connect(lp->phylink, lp->dev->of_node, 0); in axienet_open() 936 phylink_start(lp->phylink); in axienet_open() 967 phylink_stop(lp->phylink); in axienet_open() 968 phylink_disconnect_phy(lp->phylink); in axienet_open() 992 phylink_stop(lp->phylink); in axienet_stop() 993 phylink_disconnect_phy(lp->phylink); in axienet_stop() 1241 phylink_ethtool_get_pauseparam(lp->phylink, epauseparm); in axienet_ethtools_get_pauseparam() 1262 return phylink_ethtool_set_pauseparam(lp->phylink, epauseparm); in axienet_ethtools_set_pauseparam() 1347 return phylink_ethtool_ksettings_get(lp->phylink, cmd); in axienet_ethtools_get_link_ksettings() 1356 return phylink_ethtool_ksettings_set(lp->phylink, cmd); in axienet_ethtools_set_link_ksettings() [all …]
|
| D | xilinx_axienet.h | 424 struct phylink *phylink; member
|
| /Linux-v5.4/drivers/net/ethernet/stmicro/stmmac/ |
| D | stmmac_ethtool.c | 356 return phylink_ethtool_ksettings_get(priv->phylink, cmd); in stmmac_ethtool_get_link_ksettings() 387 return phylink_ethtool_ksettings_set(priv->phylink, cmd); in stmmac_ethtool_set_link_ksettings() 440 return phylink_ethtool_nway_reset(priv->phylink); in stmmac_nway_reset() 455 phylink_ethtool_get_pauseparam(priv->phylink, pause); in stmmac_get_pauseparam() 472 return phylink_ethtool_set_pauseparam(priv->phylink, pause); in stmmac_set_pauseparam() 511 int val = phylink_get_eee_err(priv->phylink); in stmmac_get_ethtool_stats() 656 return phylink_ethtool_get_eee(priv->phylink, edata); in stmmac_ethtool_op_get_eee() 677 ret = phylink_ethtool_set_eee(priv->phylink, edata); in stmmac_ethtool_op_set_eee()
|
| D | stmmac.h | 182 struct phylink *phylink; member
|
| D | stmmac_main.c | 1016 ret = phylink_of_phy_connect(priv->phylink, node, 0); in stmmac_init_phy() 1031 ret = phylink_connect_phy(priv->phylink, phydev); in stmmac_init_phy() 1041 struct phylink *phylink; in stmmac_phy_setup() local 1046 phylink = phylink_create(&priv->phylink_config, fwnode, in stmmac_phy_setup() 1048 if (IS_ERR(phylink)) in stmmac_phy_setup() 1049 return PTR_ERR(phylink); in stmmac_phy_setup() 1051 priv->phylink = phylink; in stmmac_phy_setup() 2703 phylink_start(priv->phylink); in stmmac_open() 2750 phylink_stop(priv->phylink); in stmmac_open() 2759 phylink_disconnect_phy(priv->phylink); in stmmac_open() [all …]
|
| /Linux-v5.4/drivers/net/ethernet/marvell/ |
| D | mvneta.c | 439 struct phylink *phylink; member 2748 phylink_mac_change(pp->phylink, !!(gmac_stat & MVNETA_GMAC_LINK_UP)); in mvneta_link_change() 3199 phylink_start(pp->phylink); in mvneta_start_dev() 3207 phylink_stop(pp->phylink); in mvneta_stop_dev() 3645 int err = phylink_of_phy_connect(pp->phylink, pp->dn, 0); in mvneta_mdio_probe() 3650 phylink_ethtool_get_wol(pp->phylink, &wol); in mvneta_mdio_probe() 3658 phylink_disconnect_phy(pp->phylink); in mvneta_mdio_remove() 3932 return phylink_mii_ioctl(pp->phylink, ifr, cmd); in mvneta_ioctl() 3944 return phylink_ethtool_ksettings_set(pp->phylink, cmd); in mvneta_ethtool_set_link_ksettings() 3954 return phylink_ethtool_ksettings_get(pp->phylink, cmd); in mvneta_ethtool_get_link_ksettings() [all …]
|
| /Linux-v5.4/drivers/net/ethernet/marvell/mvpp2/ |
| D | mvpp2_main.c | 1281 if (port->phylink || in mvpp22_gop_setup_irq() 2760 if (port->phylink) { in mvpp2_link_status_isr() 2761 phylink_mac_change(port->phylink, link); in mvpp2_link_status_isr() 3459 if (port->phylink) { in mvpp2_start_dev() 3460 phylink_start(port->phylink); in mvpp2_start_dev() 3488 if (port->phylink) in mvpp2_stop_dev() 3489 phylink_stop(port->phylink); in mvpp2_stop_dev() 3667 err = phylink_of_phy_connect(port->phylink, port->of_node, 0); in mvpp2_open() 3677 if (priv->hw_version == MVPP22 && port->link_irq && !port->phylink) { in mvpp2_open() 3735 if (port->phylink) in mvpp2_stop() [all …]
|
| D | mvpp2.h | 938 struct phylink *phylink; member
|
| /Linux-v5.4/drivers/net/ethernet/mediatek/ |
| D | mtk_eth_soc.c | 2189 err = phylink_of_phy_connect(mac->phylink, mac->of_node, 0); in mtk_open() 2212 phylink_start(mac->phylink); in mtk_open() 2245 phylink_stop(mac->phylink); in mtk_stop() 2249 phylink_disconnect_phy(mac->phylink); in mtk_stop() 2448 phylink_disconnect_phy(mac->phylink); in mtk_uninit() 2461 return phylink_mii_ioctl(mac->phylink, ifr, cmd); in mtk_do_ioctl() 2564 return phylink_ethtool_ksettings_get(mac->phylink, cmd); in mtk_get_link_ksettings() 2575 return phylink_ethtool_ksettings_set(mac->phylink, cmd); in mtk_set_link_ksettings() 2609 if (!mac->phylink) in mtk_nway_reset() 2612 return phylink_ethtool_nway_reset(mac->phylink); in mtk_nway_reset() [all …]
|
| D | mtk_eth_soc.h | 904 struct phylink *phylink; member
|
| /Linux-v5.4/include/net/ |
| D | dsa.h | 194 struct phylink *pl;
|
| /Linux-v5.4/drivers/gpio/ |
| D | Kconfig | 1463 so that phylink can use corresponding GPIOs.
|
| /Linux-v5.4/ |
| D | MAINTAINERS | 14657 F: drivers/net/phy/phylink.c 14659 F: include/linux/phylink.h 14661 K: phylink
|