/Linux-v5.15/drivers/net/pcs/ |
D | pcs-xpcs.c | 124 int (*pma_config)(struct dw_xpcs *xpcs); 149 int xpcs_get_an_mode(struct dw_xpcs *xpcs, phy_interface_t interface) in xpcs_get_an_mode() argument 153 compat = xpcs_find_compat(xpcs->id, interface); in xpcs_get_an_mode() 176 int xpcs_read(struct dw_xpcs *xpcs, int dev, u32 reg) in xpcs_read() argument 179 struct mii_bus *bus = xpcs->mdiodev->bus; in xpcs_read() 180 int addr = xpcs->mdiodev->addr; in xpcs_read() 185 int xpcs_write(struct dw_xpcs *xpcs, int dev, u32 reg, u16 val) in xpcs_write() argument 188 struct mii_bus *bus = xpcs->mdiodev->bus; in xpcs_write() 189 int addr = xpcs->mdiodev->addr; in xpcs_write() 194 static int xpcs_read_vendor(struct dw_xpcs *xpcs, int dev, u32 reg) in xpcs_read_vendor() argument [all …]
|
D | pcs-xpcs-nxp.c | 72 int nxp_sja1105_sgmii_pma_config(struct dw_xpcs *xpcs) in nxp_sja1105_sgmii_pma_config() argument 74 return xpcs_write(xpcs, MDIO_MMD_VEND2, DW_VR_MII_DIG_CTRL2, in nxp_sja1105_sgmii_pma_config() 78 static int nxp_sja1110_pma_config(struct dw_xpcs *xpcs, in nxp_sja1110_pma_config() argument 89 ret = xpcs_write(xpcs, MDIO_MMD_VEND2, SJA1110_TXPLL_CTRL0, in nxp_sja1110_pma_config() 94 ret = xpcs_write(xpcs, MDIO_MMD_VEND2, SJA1110_TXPLL_CTRL1, in nxp_sja1110_pma_config() 100 ret = xpcs_write(xpcs, MDIO_MMD_VEND2, SJA1110_LANE_DRIVER1_0, in nxp_sja1110_pma_config() 107 ret = xpcs_write(xpcs, MDIO_MMD_VEND2, SJA1110_LANE_DRIVER2_0, val); in nxp_sja1110_pma_config() 113 ret = xpcs_write(xpcs, MDIO_MMD_VEND2, SJA1110_LANE_DRIVER2_1, val); in nxp_sja1110_pma_config() 122 ret = xpcs_write(xpcs, MDIO_MMD_VEND2, SJA1110_LANE_TRIM, val); in nxp_sja1110_pma_config() 127 ret = xpcs_write(xpcs, MDIO_MMD_VEND2, SJA1110_LANE_DATAPATH_1, 0); in nxp_sja1110_pma_config() [all …]
|
D | pcs-xpcs.h | 110 int xpcs_read(struct dw_xpcs *xpcs, int dev, u32 reg); 111 int xpcs_write(struct dw_xpcs *xpcs, int dev, u32 reg, u16 val); 113 int nxp_sja1105_sgmii_pma_config(struct dw_xpcs *xpcs); 114 int nxp_sja1110_sgmii_pma_config(struct dw_xpcs *xpcs); 115 int nxp_sja1110_2500basex_pma_config(struct dw_xpcs *xpcs);
|
D | Makefile | 4 pcs_xpcs-$(CONFIG_PCS_XPCS) := pcs-xpcs.o pcs-xpcs-nxp.o
|
/Linux-v5.15/include/linux/pcs/ |
D | pcs-xpcs.h | 29 int xpcs_get_an_mode(struct dw_xpcs *xpcs, phy_interface_t interface); 32 int xpcs_do_config(struct dw_xpcs *xpcs, phy_interface_t interface, 34 void xpcs_validate(struct dw_xpcs *xpcs, unsigned long *supported, 36 int xpcs_config_eee(struct dw_xpcs *xpcs, int mult_fact_100ns, 40 void xpcs_destroy(struct dw_xpcs *xpcs);
|
/Linux-v5.15/drivers/net/dsa/sja1105/ |
D | sja1105_mdio.c | 423 struct dw_xpcs *xpcs; in sja1105_mdiobus_pcs_register() local 438 xpcs = xpcs_create(mdiodev, priv->phy_mode[port]); in sja1105_mdiobus_pcs_register() 439 if (IS_ERR(xpcs)) { in sja1105_mdiobus_pcs_register() 440 rc = PTR_ERR(xpcs); in sja1105_mdiobus_pcs_register() 444 priv->xpcs[port] = xpcs; in sja1105_mdiobus_pcs_register() 453 if (!priv->xpcs[port]) in sja1105_mdiobus_pcs_register() 456 mdio_device_free(priv->xpcs[port]->mdiodev); in sja1105_mdiobus_pcs_register() 457 xpcs_destroy(priv->xpcs[port]); in sja1105_mdiobus_pcs_register() 458 priv->xpcs[port] = NULL; in sja1105_mdiobus_pcs_register() 476 if (!priv->xpcs[port]) in sja1105_mdiobus_pcs_unregister() [all …]
|
D | sja1105_main.c | 1308 struct dw_xpcs *xpcs; in sja1105_mac_config() local 1316 xpcs = priv->xpcs[port]; in sja1105_mac_config() 1318 if (xpcs) in sja1105_mac_config() 1319 phylink_set_pcs(dp->pl, &xpcs->pcs); in sja1105_mac_config() 2153 if (priv->xpcs[i]) in sja1105_static_config_reload() 2209 struct dw_xpcs *xpcs = priv->xpcs[i]; in sja1105_static_config_reload() local 2216 if (!xpcs) in sja1105_static_config_reload() 2226 rc = xpcs_do_config(xpcs, priv->phy_mode[i], mode); in sja1105_static_config_reload() 2242 xpcs_link_up(&xpcs->pcs, mode, priv->phy_mode[i], in sja1105_static_config_reload()
|
D | sja1105.h | 250 struct dw_xpcs *xpcs[SJA1105_MAX_NUM_PORTS]; member
|
/Linux-v5.15/drivers/net/ethernet/stmicro/stmmac/ |
D | stmmac_mdio.c | 405 struct dw_xpcs *xpcs; in stmmac_xpcs_setup() local 417 xpcs = xpcs_create(mdiodev, mode); in stmmac_xpcs_setup() 418 if (IS_ERR_OR_NULL(xpcs)) { in stmmac_xpcs_setup() 423 priv->hw->xpcs = xpcs; in stmmac_xpcs_setup() 427 if (!priv->hw->xpcs) { in stmmac_xpcs_setup() 563 if (priv->hw->xpcs) { in stmmac_mdio_unregister() 564 mdio_device_free(priv->hw->xpcs->mdiodev); in stmmac_mdio_unregister() 565 xpcs_destroy(priv->hw->xpcs); in stmmac_mdio_unregister()
|
D | common.h | 519 struct dw_xpcs *xpcs; member
|
D | stmmac_ethtool.c | 788 if (priv->hw->xpcs) { in stmmac_ethtool_op_set_eee() 789 ret = xpcs_config_eee(priv->hw->xpcs, in stmmac_ethtool_op_set_eee()
|
D | stmmac_main.c | 480 if (priv->hw->xpcs) in stmmac_eee_init() 481 xpcs_config_eee(priv->hw->xpcs, in stmmac_eee_init() 493 if (priv->hw->xpcs) in stmmac_eee_init() 494 xpcs_config_eee(priv->hw->xpcs, in stmmac_eee_init() 1012 if (priv->hw->xpcs) in stmmac_validate() 1013 xpcs_validate(priv->hw->xpcs, supported, state); in stmmac_validate() 1250 if (priv->hw->xpcs) in stmmac_phy_setup() 1251 phylink_set_pcs(phylink, &priv->hw->xpcs->pcs); in stmmac_phy_setup() 3654 (!priv->hw->xpcs || in stmmac_open() 3655 xpcs_get_an_mode(priv->hw->xpcs, mode) != DW_AN_C73)) { in stmmac_open()
|
/Linux-v5.15/drivers/net/ethernet/marvell/mvpp2/ |
D | mvpp2_main.c | 1546 void __iomem *xpcs = priv->iface_base + MVPP22_XPCS_BASE(port->gop_id); in mvpp22_gop_init_10gkr() local 1549 val = readl(xpcs + MVPP22_XPCS_CFG0); in mvpp22_gop_init_10gkr() 1553 writel(val, xpcs + MVPP22_XPCS_CFG0); in mvpp22_gop_init_10gkr() 2157 void __iomem *mpcs, *xpcs; in mvpp22_pcs_reset_assert() local 2164 xpcs = priv->iface_base + MVPP22_XPCS_BASE(port->gop_id); in mvpp22_pcs_reset_assert() 2171 val = readl(xpcs + MVPP22_XPCS_CFG0); in mvpp22_pcs_reset_assert() 2172 writel(val & ~MVPP22_XPCS_CFG0_RESET_DIS, xpcs + MVPP22_XPCS_CFG0); in mvpp22_pcs_reset_assert() 2178 void __iomem *mpcs, *xpcs; in mvpp22_pcs_reset_deassert() local 2185 xpcs = priv->iface_base + MVPP22_XPCS_BASE(port->gop_id); in mvpp22_pcs_reset_deassert() 2197 val = readl(xpcs + MVPP22_XPCS_CFG0); in mvpp22_pcs_reset_deassert() [all …]
|
/Linux-v5.15/ |
D | MAINTAINERS | 13510 F: drivers/net/pcs/pcs-xpcs-nxp.c 18108 F: drivers/net/pcs/pcs-xpcs.c 18109 F: drivers/net/pcs/pcs-xpcs.h 18110 F: include/linux/pcs/pcs-xpcs.h
|