| /OK3568_Linux_fs/kernel/include/linux/ |
| H A D | phylink.h | 434 struct phylink *phylink_create(struct phylink_config *, struct fwnode_handle *, 437 void phylink_set_pcs(struct phylink *, struct phylink_pcs *pcs); 438 void phylink_destroy(struct phylink *); 440 int phylink_connect_phy(struct phylink *, struct phy_device *); 441 int phylink_of_phy_connect(struct phylink *, struct device_node *, u32 flags); 442 void phylink_disconnect_phy(struct phylink *); 444 void phylink_mac_change(struct phylink *, bool up); 446 void phylink_start(struct phylink *); 447 void phylink_stop(struct phylink *); 449 void phylink_ethtool_get_wol(struct phylink *, struct ethtool_wolinfo *); [all …]
|
| /OK3568_Linux_fs/kernel/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 …]
|
| H A D | kapi.rst | 165 .. kernel-doc:: include/linux/phylink.h 168 .. kernel-doc:: drivers/net/phy/phylink.c
|
| H A D | index.rst | 29 sfp-phylink
|
| /OK3568_Linux_fs/kernel/drivers/net/phy/ |
| H A D | phylink.c | 40 struct phylink { struct 156 static int phylink_validate(struct phylink *pl, unsigned long *supported, in phylink_validate() 164 static int phylink_parse_fixedlink(struct phylink *pl, in phylink_parse_fixedlink() 264 static int phylink_parse_mode(struct phylink *pl, struct fwnode_handle *fwnode) in phylink_parse_mode() 382 static void phylink_apply_manual_flow(struct phylink *pl, in phylink_apply_manual_flow() 410 static void phylink_mac_config(struct phylink *pl, in phylink_mac_config() 425 static void phylink_mac_pcs_an_restart(struct phylink *pl) in phylink_mac_pcs_an_restart() 437 static void phylink_major_config(struct phylink *pl, bool restart, in phylink_major_config() 486 static int phylink_change_inband_advert(struct phylink *pl) in phylink_change_inband_advert() 523 static void phylink_mac_pcs_get_state(struct phylink *pl, in phylink_mac_pcs_get_state() [all …]
|
| /OK3568_Linux_fs/kernel/drivers/net/ethernet/freescale/dpaa2/ |
| H A D | dpaa2-mac.c | 308 struct phylink *phylink; in dpaa2_mac_connect() local 364 phylink = phylink_create(&mac->phylink_config, in dpaa2_mac_connect() 367 if (IS_ERR(phylink)) { in dpaa2_mac_connect() 368 err = PTR_ERR(phylink); in dpaa2_mac_connect() 371 mac->phylink = phylink; in dpaa2_mac_connect() 374 phylink_set_pcs(mac->phylink, &mac->pcs->pcs); in dpaa2_mac_connect() 376 err = phylink_of_phy_connect(mac->phylink, dpmac_node, 0); in dpaa2_mac_connect() 387 phylink_destroy(mac->phylink); in dpaa2_mac_connect() 399 if (!mac->phylink) in dpaa2_mac_disconnect() 402 phylink_disconnect_phy(mac->phylink); in dpaa2_mac_disconnect() [all …]
|
| H A D | dpaa2-mac.h | 22 struct phylink *phylink; member
|
| H A D | dpaa2-ethtool.c | 89 return phylink_ethtool_nway_reset(priv->mac->phylink); in dpaa2_eth_nway_reset() 101 return phylink_ethtool_ksettings_get(priv->mac->phylink, in dpaa2_eth_get_link_ksettings() 121 return phylink_ethtool_ksettings_set(priv->mac->phylink, link_settings); in dpaa2_eth_set_link_ksettings() 131 phylink_ethtool_get_pauseparam(priv->mac->phylink, pause); in dpaa2_eth_get_pauseparam() 154 return phylink_ethtool_set_pauseparam(priv->mac->phylink, in dpaa2_eth_set_pauseparam()
|
| /OK3568_Linux_fs/kernel/drivers/net/ethernet/ |
| H A 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 …]
|
| /OK3568_Linux_fs/kernel/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 TYPE_FIXED.
|
| /OK3568_Linux_fs/kernel/drivers/net/ethernet/atheros/ |
| H A D | ag71xx.c | 369 struct phylink *phylink; member 463 return phylink_ethtool_ksettings_get(ag->phylink, kset); in ag71xx_get_link_ksettings() 471 return phylink_ethtool_ksettings_set(ag->phylink, kset); in ag71xx_set_link_ksettings() 478 return phylink_ethtool_nway_reset(ag->phylink); in ag71xx_ethtool_nway_reset() 486 phylink_ethtool_get_pauseparam(ag->phylink, pause); in ag71xx_ethtool_get_pauseparam() 494 return phylink_ethtool_set_pauseparam(ag->phylink, pause); in ag71xx_ethtool_set_pauseparam() 1166 struct phylink *phylink; in ag71xx_phylink_setup() local 1171 phylink = phylink_create(&ag->phylink_config, ag->pdev->dev.fwnode, in ag71xx_phylink_setup() 1173 if (IS_ERR(phylink)) in ag71xx_phylink_setup() 1174 return PTR_ERR(phylink); in ag71xx_phylink_setup() [all …]
|
| /OK3568_Linux_fs/kernel/drivers/net/ethernet/stmicro/stmmac/ |
| H A D | stmmac_ethtool.c | 364 return phylink_ethtool_ksettings_get(priv->phylink, cmd); in stmmac_ethtool_get_link_ksettings() 400 return phylink_ethtool_ksettings_set(priv->phylink, cmd); in stmmac_ethtool_set_link_ksettings() 460 return phylink_ethtool_nway_reset(priv->phylink); in stmmac_nway_reset() 502 phylink_ethtool_get_pauseparam(priv->phylink, pause); in stmmac_get_pauseparam() 519 return phylink_ethtool_set_pauseparam(priv->phylink, pause); in stmmac_set_pauseparam() 558 int val = phylink_get_eee_err(priv->phylink); in stmmac_get_ethtool_stats() 651 return phylink_ethtool_get_wol(priv->phylink, wol); in stmmac_get_wol() 672 int ret = phylink_ethtool_set_wol(priv->phylink, wol); in stmmac_set_wol() 717 return phylink_ethtool_get_eee(priv->phylink, edata); in stmmac_ethtool_op_get_eee() 736 ret = phylink_ethtool_set_eee(priv->phylink, edata); in stmmac_ethtool_op_set_eee()
|
| H A D | stmmac_uio.c | 312 ret = phylink_of_phy_connect(priv->phylink, node, 0); in rockchip_gmac_uio_init_phy() 327 ret = phylink_connect_phy(priv->phylink, phydev); in rockchip_gmac_uio_init_phy() 333 phylink_ethtool_get_wol(priv->phylink, &wol); in rockchip_gmac_uio_init_phy() 856 phylink_start(priv->phylink); in uio_open() 858 phylink_speed_up(priv->phylink); in uio_open() 865 phylink_disconnect_phy(priv->phylink); in uio_open()
|
| H A D | stmmac_main.c | 1124 ret = phylink_of_phy_connect(priv->phylink, node, 0); in stmmac_init_phy() 1139 ret = phylink_connect_phy(priv->phylink, phydev); in stmmac_init_phy() 1145 phylink_ethtool_get_wol(priv->phylink, &wol); in stmmac_init_phy() 1156 struct phylink *phylink; in stmmac_phy_setup() local 1165 phylink = phylink_create(&priv->phylink_config, fwnode, in stmmac_phy_setup() 1167 if (IS_ERR(phylink)) in stmmac_phy_setup() 1168 return PTR_ERR(phylink); in stmmac_phy_setup() 1170 priv->phylink = phylink; in stmmac_phy_setup() 2951 phylink_start(priv->phylink); in stmmac_open() 2953 phylink_speed_up(priv->phylink); in stmmac_open() [all …]
|
| H A D | stmmac.h | 190 struct phylink *phylink; member
|
| /OK3568_Linux_fs/kernel/drivers/net/ethernet/xilinx/ |
| H A D | xilinx_axienet_main.c | 1106 ret = phylink_of_phy_connect(lp->phylink, lp->dev->of_node, 0); in axienet_open() 1112 phylink_start(lp->phylink); in axienet_open() 1142 phylink_stop(lp->phylink); in axienet_open() 1143 phylink_disconnect_phy(lp->phylink); in axienet_open() 1167 phylink_stop(lp->phylink); in axienet_stop() 1168 phylink_disconnect_phy(lp->phylink); in axienet_stop() 1268 return phylink_mii_ioctl(lp->phylink, rq, cmd); in axienet_ioctl() 1424 phylink_ethtool_get_pauseparam(lp->phylink, epauseparm); in axienet_ethtools_get_pauseparam() 1445 return phylink_ethtool_set_pauseparam(lp->phylink, epauseparm); in axienet_ethtools_set_pauseparam() 1509 return phylink_ethtool_ksettings_get(lp->phylink, cmd); in axienet_ethtools_get_link_ksettings() [all …]
|
| H A D | xilinx_axienet.h | 419 struct phylink *phylink; member
|
| /OK3568_Linux_fs/kernel/drivers/net/ethernet/freescale/enetc/ |
| H A D | enetc_pf.c | 956 phylink_set_pcs(priv->phylink, &pf->pcs->pcs); in enetc_pl_mac_config() 1027 struct phylink *phylink; in enetc_phylink_create() local 1033 phylink = phylink_create(&pf->phylink_config, of_fwnode_handle(node), in enetc_phylink_create() 1035 if (IS_ERR(phylink)) { in enetc_phylink_create() 1036 err = PTR_ERR(phylink); in enetc_phylink_create() 1040 priv->phylink = phylink; in enetc_phylink_create() 1047 if (priv->phylink) in enetc_phylink_destroy() 1048 phylink_destroy(priv->phylink); in enetc_phylink_destroy()
|
| H A D | enetc.c | 1440 if (!priv->phylink) in enetc_phylink_connect() 1443 err = phylink_of_phy_connect(priv->phylink, priv->dev->of_node, 0); in enetc_phylink_connect() 1451 phylink_ethtool_set_eee(priv->phylink, &edata); in enetc_phylink_connect() 1471 if (priv->phylink) in enetc_start() 1472 phylink_start(priv->phylink); in enetc_start() 1518 if (priv->phylink) in enetc_open() 1519 phylink_disconnect_phy(priv->phylink); in enetc_open() 1542 if (priv->phylink) in enetc_stop() 1543 phylink_stop(priv->phylink); in enetc_stop() 1557 if (priv->phylink) in enetc_close() [all …]
|
| H A D | enetc_ethtool.c | 701 if (!priv->phylink) in enetc_get_link_ksettings() 704 return phylink_ethtool_ksettings_get(priv->phylink, cmd); in enetc_get_link_ksettings() 712 if (!priv->phylink) in enetc_set_link_ksettings() 715 return phylink_ethtool_ksettings_set(priv->phylink, cmd); in enetc_set_link_ksettings()
|
| /OK3568_Linux_fs/kernel/drivers/net/ethernet/marvell/ |
| H A D | mvneta.c | 497 struct phylink *phylink; member 3116 phylink_mac_change(pp->phylink, !!(gmac_stat & MVNETA_GMAC_LINK_UP)); in mvneta_link_change() 3633 phylink_start(pp->phylink); in mvneta_start_dev() 3636 phylink_speed_up(pp->phylink); in mvneta_start_dev() 3650 phylink_speed_down(pp->phylink, false); in mvneta_stop_dev() 3652 phylink_stop(pp->phylink); in mvneta_stop_dev() 4112 int err = phylink_of_phy_connect(pp->phylink, pp->dn, 0); in mvneta_mdio_probe() 4117 phylink_ethtool_get_wol(pp->phylink, &wol); in mvneta_mdio_probe() 4129 phylink_disconnect_phy(pp->phylink); in mvneta_mdio_remove() 4408 return phylink_mii_ioctl(pp->phylink, ifr, cmd); in mvneta_ioctl() [all …]
|
| /OK3568_Linux_fs/kernel/drivers/net/ethernet/mediatek/ |
| H A D | mtk_eth_soc.c | 2290 err = phylink_of_phy_connect(mac->phylink, mac->of_node, 0); in mtk_open() 2303 phylink_disconnect_phy(mac->phylink); in mtk_open() 2318 phylink_start(mac->phylink); in mtk_open() 2351 phylink_stop(mac->phylink); in mtk_stop() 2355 phylink_disconnect_phy(mac->phylink); in mtk_stop() 2541 phylink_disconnect_phy(mac->phylink); in mtk_uninit() 2554 return phylink_mii_ioctl(mac->phylink, ifr, cmd); in mtk_do_ioctl() 2657 return phylink_ethtool_ksettings_get(mac->phylink, cmd); in mtk_get_link_ksettings() 2668 return phylink_ethtool_ksettings_set(mac->phylink, cmd); in mtk_set_link_ksettings() 2702 if (!mac->phylink) in mtk_nway_reset() [all …]
|
| /OK3568_Linux_fs/kernel/drivers/net/ethernet/marvell/mvpp2/ |
| H A D | mvpp2_main.c | 1387 if (port->phylink || in mvpp22_gop_setup_irq() 3041 if (port->phylink) { in mvpp2_isr_handle_link() 3042 phylink_mac_change(port->phylink, link); in mvpp2_isr_handle_link() 4230 if (port->phylink) { in mvpp2_start_dev() 4231 phylink_start(port->phylink); in mvpp2_start_dev() 4254 if (port->phylink) in mvpp2_stop_dev() 4255 phylink_stop(port->phylink); in mvpp2_stop_dev() 4433 err = phylink_of_phy_connect(port->phylink, port->of_node, 0); in mvpp2_open() 4503 if (port->phylink) in mvpp2_stop() 4504 phylink_disconnect_phy(port->phylink); in mvpp2_stop() [all …]
|
| /OK3568_Linux_fs/kernel/drivers/net/pcs/ |
| H A D | Kconfig | 18 This module provides helpers to phylink for managing the Lynx PCS
|
| /OK3568_Linux_fs/kernel/drivers/net/ethernet/cadence/ |
| H A D | macb_main.c | 699 ret = phylink_of_phy_connect(bp->phylink, dn, 0); in macb_phylink_connect() 709 ret = phylink_connect_phy(bp->phylink, phydev); in macb_phylink_connect() 717 phylink_start(bp->phylink); in macb_phylink_connect() 730 bp->phylink = phylink_create(&bp->phylink_config, bp->pdev->dev.fwnode, in macb_mii_probe() 732 if (IS_ERR(bp->phylink)) { in macb_mii_probe() 734 PTR_ERR(bp->phylink)); in macb_mii_probe() 735 return PTR_ERR(bp->phylink); in macb_mii_probe() 2681 phylink_stop(bp->phylink); in macb_close() 2682 phylink_disconnect_phy(bp->phylink); in macb_close() 2917 phylink_ethtool_get_wol(bp->phylink, wol); in macb_get_wol() [all …]
|