/linux-master/drivers/net/pcs/ |
H A D | pcs-xpcs-wx.c | 4 #include <linux/pcs/pcs-xpcs.h> 6 #include "pcs-xpcs.h" 49 static int txgbe_read_pma(struct dw_xpcs *xpcs, int reg) argument 51 return xpcs_read(xpcs, MDIO_MMD_PMAPMD, TXGBE_PMA_MMD + reg); 54 static int txgbe_write_pma(struct dw_xpcs *xpcs, int reg, u16 val) argument 56 return xpcs_write(xpcs, MDIO_MMD_PMAPMD, TXGBE_PMA_MMD + reg, val); 59 static void txgbe_pma_config_10gbaser(struct dw_xpcs *xpcs) argument 63 txgbe_write_pma(xpcs, TXGBE_MPLLA_CTL0, 0x21); 64 txgbe_write_pma(xpcs, TXGBE_MPLLA_CTL3, 0); 65 val = txgbe_read_pma(xpcs, TXGBE_TX_GENCTL 93 txgbe_pma_config_1g(struct dw_xpcs *xpcs) argument 127 txgbe_pcs_poll_power_up(struct dw_xpcs *xpcs) argument 142 txgbe_pma_init_done(struct dw_xpcs *xpcs) argument 158 txgbe_xpcs_mode_quirk(struct dw_xpcs *xpcs) argument 173 txgbe_xpcs_switch_mode(struct dw_xpcs *xpcs, phy_interface_t interface) argument [all...] |
H A D | pcs-xpcs.c | 10 #include <linux/pcs/pcs-xpcs.h> 14 #include "pcs-xpcs.h" 151 int (*pma_config)(struct dw_xpcs *xpcs); 176 int xpcs_get_an_mode(struct dw_xpcs *xpcs, phy_interface_t interface) argument 180 compat = xpcs_find_compat(xpcs->id, interface); 203 int xpcs_read(struct dw_xpcs *xpcs, int dev, u32 reg) argument 205 return mdiodev_c45_read(xpcs->mdiodev, dev, reg); 208 int xpcs_write(struct dw_xpcs *xpcs, int dev, u32 reg, u16 val) argument 210 return mdiodev_c45_write(xpcs->mdiodev, dev, reg, val); 213 static int xpcs_modify_changed(struct dw_xpcs *xpcs, in argument 219 xpcs_read_vendor(struct dw_xpcs *xpcs, int dev, u32 reg) argument 224 xpcs_write_vendor(struct dw_xpcs *xpcs, int dev, int reg, u16 val) argument 230 xpcs_read_vpcs(struct dw_xpcs *xpcs, int reg) argument 235 xpcs_write_vpcs(struct dw_xpcs *xpcs, int reg, u16 val) argument 240 xpcs_dev_flag(struct dw_xpcs *xpcs) argument 263 xpcs_poll_reset(struct dw_xpcs *xpcs, int dev) argument 279 xpcs_soft_reset(struct dw_xpcs *xpcs, const struct xpcs_compat *compat) argument 311 xpcs_read_fault_c73(struct dw_xpcs *xpcs, struct phylink_link_state *state, u16 pcs_stat1) argument 359 xpcs_config_usxgmii(struct dw_xpcs *xpcs, int speed) argument 420 _xpcs_config_aneg_c73(struct dw_xpcs *xpcs, const struct xpcs_compat *compat) argument 465 xpcs_config_aneg_c73(struct dw_xpcs *xpcs, const struct xpcs_compat *compat) argument 483 xpcs_aneg_done_c73(struct dw_xpcs *xpcs, struct phylink_link_state *state, const struct xpcs_compat *compat, u16 an_stat1) argument 506 xpcs_read_lpa_c73(struct dw_xpcs *xpcs, struct phylink_link_state *state, u16 an_stat1) argument 533 xpcs_get_max_xlgmii_speed(struct dw_xpcs *xpcs, struct phylink_link_state *state) argument 587 xpcs_resolve_pma(struct dw_xpcs *xpcs, struct phylink_link_state *state) argument 611 struct dw_xpcs *xpcs; local 631 xpcs_get_interfaces(struct dw_xpcs *xpcs, unsigned long *interfaces) argument 644 xpcs_config_eee(struct dw_xpcs *xpcs, int mult_fact_100ns, int enable) argument 682 xpcs_config_aneg_c37_sgmii(struct dw_xpcs *xpcs, unsigned int neg_mode) argument 761 xpcs_config_aneg_c37_1000basex(struct dw_xpcs *xpcs, unsigned int neg_mode, const unsigned long *advertising) argument 828 xpcs_config_2500basex(struct dw_xpcs *xpcs) argument 850 xpcs_do_config(struct dw_xpcs *xpcs, phy_interface_t interface, const unsigned long *advertising, unsigned int neg_mode) argument 911 struct dw_xpcs *xpcs = phylink_pcs_to_xpcs(pcs); local 916 xpcs_get_state_c73(struct dw_xpcs *xpcs, struct phylink_link_state *state, const struct xpcs_compat *compat) argument 989 xpcs_get_state_c37_sgmii(struct dw_xpcs *xpcs, struct phylink_link_state *state) argument 1057 xpcs_get_state_c37_1000basex(struct dw_xpcs *xpcs, struct phylink_link_state *state) argument 1092 xpcs_get_state_2500basex(struct dw_xpcs *xpcs, struct phylink_link_state *state) argument 1117 struct dw_xpcs *xpcs = phylink_pcs_to_xpcs(pcs); local 1163 xpcs_link_up_sgmii(struct dw_xpcs *xpcs, unsigned int neg_mode, int speed, int duplex) argument 1177 xpcs_link_up_1000basex(struct dw_xpcs *xpcs, unsigned int neg_mode, int speed, int duplex) argument 1209 struct dw_xpcs *xpcs = phylink_pcs_to_xpcs(pcs); local 1222 struct dw_xpcs *xpcs = phylink_pcs_to_xpcs(pcs); local 1232 xpcs_get_id(struct dw_xpcs *xpcs) argument 1371 struct dw_xpcs *xpcs; local 1426 xpcs_destroy(struct dw_xpcs *xpcs) argument 1438 struct dw_xpcs *xpcs; local [all...] |
H A D | Makefile | 4 pcs_xpcs-$(CONFIG_PCS_XPCS) := pcs-xpcs.o pcs-xpcs-nxp.o pcs-xpcs-wx.o
|
H A D | pcs-xpcs-nxp.c | 4 #include <linux/pcs/pcs-xpcs.h> 5 #include "pcs-xpcs.h" 72 int nxp_sja1105_sgmii_pma_config(struct dw_xpcs *xpcs) argument 74 return xpcs_write(xpcs, MDIO_MMD_VEND2, DW_VR_MII_DIG_CTRL2, 78 static int nxp_sja1110_pma_config(struct dw_xpcs *xpcs, argument 89 ret = xpcs_write(xpcs, MDIO_MMD_VEND2, SJA1110_TXPLL_CTRL0, 94 ret = xpcs_write(xpcs, MDIO_MMD_VEND2, SJA1110_TXPLL_CTRL1, 100 ret = xpcs_write(xpcs, MDIO_MMD_VEND2, SJA1110_LANE_DRIVER1_0, 107 ret = xpcs_write(xpcs, MDIO_MMD_VEND2, SJA1110_LANE_DRIVER2_0, val); 113 ret = xpcs_write(xpcs, MDIO_MMD_VEND 177 nxp_sja1110_sgmii_pma_config(struct dw_xpcs *xpcs) argument 182 nxp_sja1110_2500basex_pma_config(struct dw_xpcs *xpcs) argument [all...] |
H A D | pcs-xpcs.h | 123 int xpcs_read(struct dw_xpcs *xpcs, int dev, u32 reg); 124 int xpcs_write(struct dw_xpcs *xpcs, int dev, u32 reg, u16 val); 125 int xpcs_read_vpcs(struct dw_xpcs *xpcs, int reg); 126 int xpcs_write_vpcs(struct dw_xpcs *xpcs, int reg, u16 val); 127 int nxp_sja1105_sgmii_pma_config(struct dw_xpcs *xpcs); 128 int nxp_sja1110_sgmii_pma_config(struct dw_xpcs *xpcs); 129 int nxp_sja1110_2500basex_pma_config(struct dw_xpcs *xpcs); 130 int txgbe_xpcs_switch_mode(struct dw_xpcs *xpcs, phy_interface_t interface);
|
/linux-master/include/linux/pcs/ |
H A D | pcs-xpcs.h | 39 int xpcs_get_an_mode(struct dw_xpcs *xpcs, phy_interface_t interface); 42 int xpcs_do_config(struct dw_xpcs *xpcs, phy_interface_t interface, 44 void xpcs_get_interfaces(struct dw_xpcs *xpcs, unsigned long *interfaces); 45 int xpcs_config_eee(struct dw_xpcs *xpcs, int mult_fact_100ns, 49 void xpcs_destroy(struct dw_xpcs *xpcs);
|
/linux-master/drivers/net/ethernet/stmicro/stmmac/ |
H A D | dwmac-tegra.c | 24 void __iomem *xpcs; member in struct:tegra_mgbe 89 value = readl(mgbe->xpcs + XPCS_WRAP_UPHY_STATUS); 91 value = readl(mgbe->xpcs + XPCS_WRAP_UPHY_HW_INIT_CTRL); 93 writel(value, mgbe->xpcs + XPCS_WRAP_UPHY_HW_INIT_CTRL); 96 err = readl_poll_timeout(mgbe->xpcs + XPCS_WRAP_UPHY_HW_INIT_CTRL, value, 118 value = readl(mgbe->xpcs + XPCS_WRAP_UPHY_RX_CONTROL); 120 writel(value, mgbe->xpcs + XPCS_WRAP_UPHY_RX_CONTROL); 122 value = readl(mgbe->xpcs + XPCS_WRAP_UPHY_RX_CONTROL); 124 writel(value, mgbe->xpcs + XPCS_WRAP_UPHY_RX_CONTROL); 126 value = readl(mgbe->xpcs [all...] |
H A D | stmmac_mdio.c | 502 struct dw_xpcs *xpcs; local 510 xpcs = xpcs_create_mdiodev(bus, addr, mode); 511 if (IS_ERR(xpcs)) 514 priv->hw->xpcs = xpcs; 518 if (!priv->hw->xpcs) { 682 if (priv->hw->xpcs) 683 xpcs_destroy(priv->hw->xpcs);
|
H A D | common.h | 18 #include <linux/pcs/pcs-xpcs.h> 596 struct dw_xpcs *xpcs; member in struct:mac_device_info
|
H A D | stmmac_main.c | 494 if (priv->hw->xpcs) 495 xpcs_config_eee(priv->hw->xpcs, 507 if (priv->hw->xpcs) 508 xpcs_config_eee(priv->hw->xpcs, 944 if (priv->hw->xpcs) 945 return &priv->hw->xpcs->pcs; 1223 /* If we have an xpcs, it defines which PHY interfaces are supported. */ 1224 if (priv->hw->xpcs) 1225 xpcs_get_interfaces(priv->hw->xpcs, 3947 (!priv->hw->xpcs || [all...] |
/linux-master/drivers/net/dsa/sja1105/ |
H A D | sja1105_mdio.c | 4 #include <linux/pcs/pcs-xpcs.h> 403 struct dw_xpcs *xpcs; local 412 xpcs = xpcs_create_mdiodev(bus, port, priv->phy_mode[port]); 413 if (IS_ERR(xpcs)) { 414 rc = PTR_ERR(xpcs); 418 priv->xpcs[port] = xpcs; 427 if (!priv->xpcs[port]) 430 xpcs_destroy(priv->xpcs[port]); 431 priv->xpcs[por [all...] |
H A D | sja1105_main.c | 18 #include <linux/pcs/pcs-xpcs.h> 1364 struct dw_xpcs *xpcs = priv->xpcs[port]; local 1366 if (xpcs) 1367 return &xpcs->pcs; 2316 if (priv->xpcs[i]) 2373 struct dw_xpcs *xpcs = priv->xpcs[i]; local 2380 if (!xpcs) 2388 rc = xpcs_do_config(xpcs, pri [all...] |
H A D | sja1105.h | 281 struct dw_xpcs *xpcs[SJA1105_MAX_NUM_PORTS]; member in struct:sja1105_private
|
/linux-master/drivers/net/ethernet/wangxun/txgbe/ |
H A D | txgbe_phy.c | 13 #include <linux/pcs/pcs-xpcs.h> 125 struct dw_xpcs *xpcs; local 150 xpcs = xpcs_create_mdiodev(mii_bus, 0, PHY_INTERFACE_MODE_10GBASER); 151 if (IS_ERR(xpcs)) 152 return PTR_ERR(xpcs); 154 txgbe->xpcs = xpcs; 166 return &txgbe->xpcs->pcs; 782 xpcs_destroy(txgbe->xpcs); 802 xpcs_destroy(txgbe->xpcs); [all...] |
H A D | txgbe_type.h | 190 struct dw_xpcs *xpcs; member in struct:txgbe
|
/linux-master/drivers/net/ethernet/marvell/mvpp2/ |
H A D | mvpp2_main.c | 1583 void __iomem *xpcs = priv->iface_base + MVPP22_XPCS_BASE(port->gop_id); local 1586 val = readl(xpcs + MVPP22_XPCS_CFG0); 1590 writel(val, xpcs + MVPP22_XPCS_CFG0); 2196 void __iomem *mpcs, *xpcs; local 2203 xpcs = priv->iface_base + MVPP22_XPCS_BASE(port->gop_id); 2210 val = readl(xpcs + MVPP22_XPCS_CFG0); 2211 writel(val & ~MVPP22_XPCS_CFG0_RESET_DIS, xpcs + MVPP22_XPCS_CFG0); 2218 void __iomem *mpcs, *xpcs; local 2225 xpcs = priv->iface_base + MVPP22_XPCS_BASE(port->gop_id); 2238 val = readl(xpcs [all...] |