| /linux-6.15/drivers/pinctrl/ |
| H A D | pinctrl-single.c | 286 return (pin % (pcs->width / pcs->bits_per_pin)) * pcs->bits_per_pin; in pcs_pin_shift_reg_get() 301 val = pcs->read(pcs->base + offset); in pcs_pin_dbg_show() 704 val = pcs->read(pcs->base + offset); in pcs_add_pin() 736 pcs->bits_per_pin = fls(pcs->fmask); in pcs_allocate_pin_table() 743 pcs->pins.pa = devm_kcalloc(pcs->dev, in pcs_allocate_pin_table() 749 pcs->desc.pins = pcs->pins.pa; in pcs_allocate_pin_table() 1641 pcs->saved_vals = devm_kzalloc(pcs->dev, pcs->size, GFP_ATOMIC); in pcs_save_context() 1809 pcs->fshift = __ffs(pcs->fmask); in pcs_probe() 1810 pcs->fmax = pcs->fmask >> pcs->fshift; in pcs_probe() 1847 pcs->base = devm_ioremap(pcs->dev, pcs->res->start, pcs->size); in pcs_probe() [all …]
|
| /linux-6.15/drivers/net/pcs/ |
| H A D | pcs-lynx.c | 24 struct phylink_pcs pcs; member 62 struct mii_bus *bus = pcs->bus; in lynx_pcs_get_state_usxgmii() 63 int addr = pcs->addr; in lynx_pcs_get_state_usxgmii() 177 int addr = pcs->addr; in lynx_pcs_config_usxgmii() 264 mdiodev_modify(pcs, IF_MODE, in lynx_pcs_link_up_sgmii() 300 mdiodev_modify(pcs, IF_MODE, in lynx_pcs_link_up_2500basex() 358 lynx->pcs.poll = true; in lynx_pcs_create() 369 struct phylink_pcs *pcs; in lynx_pcs_create_mdiodev() local 385 return pcs; in lynx_pcs_create_mdiodev() 402 struct phylink_pcs *pcs; in lynx_pcs_create_fwnode() local [all …]
|
| H A D | pcs-mtk-lynxi.c | 82 struct phylink_pcs pcs; member 88 return container_of(pcs, struct mtk_pcs_lynxi, pcs); in pcs_to_mtk_pcs_lynxi() 111 struct mtk_pcs_lynxi *mpcs = pcs_to_mtk_pcs_lynxi(pcs); in mtk_pcs_lynxi_get_state() 128 struct mtk_pcs_lynxi *mpcs = pcs_to_mtk_pcs_lynxi(pcs); in mtk_pcs_lynxi_config() 223 struct mtk_pcs_lynxi *mpcs = pcs_to_mtk_pcs_lynxi(pcs); in mtk_pcs_lynxi_restart_an() 307 mpcs->pcs.ops = &mtk_pcs_lynxi_ops; in mtk_pcs_lynxi_create() 308 mpcs->pcs.poll = true; in mtk_pcs_lynxi_create() 315 return &mpcs->pcs; in mtk_pcs_lynxi_create() 319 void mtk_pcs_lynxi_destroy(struct phylink_pcs *pcs) in mtk_pcs_lynxi_destroy() argument 321 if (!pcs) in mtk_pcs_lynxi_destroy() [all …]
|
| H A D | Makefile | 4 pcs_xpcs-$(CONFIG_PCS_XPCS) := pcs-xpcs.o pcs-xpcs-plat.o \ 5 pcs-xpcs-nxp.o pcs-xpcs-wx.o 8 obj-$(CONFIG_PCS_LYNX) += pcs-lynx.o 9 obj-$(CONFIG_PCS_MTK_LYNXI) += pcs-mtk-lynxi.o 10 obj-$(CONFIG_PCS_RZN1_MIIC) += pcs-rzn1-miic.o
|
| H A D | pcs-rzn1-miic.c | 142 struct phylink_pcs pcs; member 149 return container_of(pcs, struct miic_port, pcs); in phylink_pcs_to_miic_port() 190 struct miic_port *miic_port = phylink_pcs_to_miic_port(pcs); in miic_config() 240 struct miic_port *miic_port = phylink_pcs_to_miic_port(pcs); in miic_link_up() 271 static int miic_pre_init(struct phylink_pcs *pcs) in miic_pre_init() argument 273 struct miic_port *miic_port = phylink_pcs_to_miic_port(pcs); in miic_pre_init() 278 if (pcs->rxc_always_on) { in miic_pre_init() 351 miic_port->pcs.ops = &miic_phylink_ops; in miic_create() 357 return &miic_port->pcs; in miic_create() 361 void miic_destroy(struct phylink_pcs *pcs) in miic_destroy() argument [all …]
|
| H A D | pcs-xpcs.c | 20 container_of((pl_pcs), struct dw_xpcs, pcs) 137 return &xpcs->pcs; in xpcs_to_phylink_pcs() 553 xpcs = phylink_pcs_to_xpcs(pcs); in xpcs_validate() 757 if (!xpcs->pcs.poll) { in xpcs_config_aneg_c37_1000basex() 1041 if (!xpcs->pcs.poll) { in xpcs_get_state_c37_1000basex() 1280 xpcs->info.pcs = id; in xpcs_read_ids() 1422 xpcs->pcs.ops = &xpcs_phylink_ops; in xpcs_create_data() 1423 xpcs->pcs.poll = true; in xpcs_create_data() 1470 xpcs->info.pcs = DW_XPCS_ID_NATIVE; in xpcs_init_id() 1499 xpcs->pcs.poll = false; in xpcs_create() [all …]
|
| /linux-6.15/include/linux/ |
| H A D | phylink.h | 499 int (*pcs_enable)(struct phylink_pcs *pcs); 500 void (*pcs_disable)(struct phylink_pcs *pcs); 501 void (*pcs_pre_config)(struct phylink_pcs *pcs, 503 int (*pcs_post_config)(struct phylink_pcs *pcs, 516 int (*pcs_pre_init)(struct phylink_pcs *pcs); 555 int pcs_enable(struct phylink_pcs *pcs); 561 void pcs_disable(struct phylink_pcs *pcs); 627 void pcs_an_restart(struct phylink_pcs *pcs); 655 void pcs_disable_eee(struct phylink_pcs *pcs); 663 void pcs_enable_eee(struct phylink_pcs *pcs); [all …]
|
| /linux-6.15/arch/arm64/boot/dts/freescale/ |
| H A D | fsl-ls1046-post.dtsi | 27 pcs-handle = <&qsgmiib_pcs3>; 28 pcs-handle-names = "qsgmii"; 43 pcs-handle-names = "sgmii", "qsgmii"; 48 pcs-handle = <&pcsphy5>, <&pcsphy5>; 49 pcs-handle-names = "sgmii", "qsgmii"; 62 qsgmiib_pcs1: ethernet-pcs@1 { 63 compatible = "fsl,lynx-pcs"; 67 qsgmiib_pcs2: ethernet-pcs@2 { 68 compatible = "fsl,lynx-pcs"; 72 qsgmiib_pcs3: ethernet-pcs@3 { [all …]
|
| H A D | fsl-ls1043-post.dtsi | 27 pcs-handle-names = "qsgmii"; 32 pcs-handle = <&pcsphy1>, <&qsgmiib_pcs1>; 33 pcs-handle-names = "sgmii", "qsgmii"; 45 pcs-handle-names = "sgmii", "qsgmii"; 51 pcs-handle-names = "sgmii", "qsgmii"; 58 qsgmiib_pcs1: ethernet-pcs@1 { 59 compatible = "fsl,lynx-pcs"; 63 qsgmiib_pcs2: ethernet-pcs@2 { 64 compatible = "fsl,lynx-pcs"; 68 qsgmiib_pcs3: ethernet-pcs@3 { [all …]
|
| H A D | tqmls1088a-mbls10xxa-mc.dtsi | 33 pcs-handle = <&pcs1>; 37 pcs-handle = <&pcs2>; 41 pcs-handle = <&pcs3_0>; 45 pcs-handle = <&pcs3_1>; 49 pcs-handle = <&pcs3_2>; 53 pcs-handle = <&pcs3_3>; 57 pcs-handle = <&pcs7_0>; 61 pcs-handle = <&pcs7_1>; 65 pcs-handle = <&pcs7_2>; 69 pcs-handle = <&pcs7_3>;
|
| H A D | fsl-ls1088a-rdb.dts | 23 pcs-handle = <&pcs2>; 30 pcs-handle = <&pcs3_0>; 37 pcs-handle = <&pcs3_1>; 44 pcs-handle = <&pcs3_2>; 51 pcs-handle = <&pcs3_3>; 58 pcs-handle = <&pcs7_0>; 65 pcs-handle = <&pcs7_1>; 72 pcs-handle = <&pcs7_2>; 79 pcs-handle = <&pcs7_3>;
|
| /linux-6.15/drivers/net/dsa/b53/ |
| H A D | b53_serdes.c | 22 return container_of(pcs, struct b53_pcs, pcs); in pcs_to_b53_pcs() 74 u8 lane = pcs_to_b53_pcs(pcs)->lane; in b53_serdes_config() 92 u8 lane = pcs_to_b53_pcs(pcs)->lane; in b53_serdes_an_restart() 106 u8 lane = pcs_to_b53_pcs(pcs)->lane; in b53_serdes_get_state() 201 !dev->pcs[lane].dev) in b53_serdes_phylink_mac_select_pcs() 208 return &dev->pcs[lane].pcs; in b53_serdes_phylink_mac_select_pcs() 215 struct b53_pcs *pcs; in b53_serdes_init() local 238 pcs = &dev->pcs[lane]; in b53_serdes_init() 239 pcs->dev = dev; in b53_serdes_init() 240 pcs->lane = lane; in b53_serdes_init() [all …]
|
| /linux-6.15/drivers/net/dsa/mv88e6xxx/ |
| H A D | pcs-639x.c | 132 return container_of(pcs, struct mv88e639x_pcs, sgmii_pcs); in sgmii_pcs_to_mv88e639x_pcs() 383 return container_of(pcs, struct mv88e639x_pcs, xg_pcs); in xg_pcs_to_mv88e639x_pcs() 403 struct mv88e639x_pcs *mpcs = xg_pcs_to_mv88e639x_pcs(pcs); in mv88e639x_xg_pcs_get_state() 439 static int mv88e639x_xg_pcs_config(struct phylink_pcs *pcs, in mv88e639x_xg_pcs_config() argument 513 static int mv88e6390_xg_pcs_enable(struct phylink_pcs *pcs) in mv88e6390_xg_pcs_enable() argument 515 struct mv88e639x_pcs *mpcs = xg_pcs_to_mv88e639x_pcs(pcs); in mv88e6390_xg_pcs_enable() 529 struct mv88e639x_pcs *mpcs = xg_pcs_to_mv88e639x_pcs(pcs); in mv88e6390_xg_pcs_disable() 761 mv88e639x_sgmii_pcs_disable(pcs); in mv88e6393x_sgmii_pcs_disable() 771 mv88e639x_sgmii_pcs_pre_config(pcs, interface); in mv88e6393x_sgmii_pcs_pre_config() 794 return mv88e639x_sgmii_pcs_post_config(pcs, interface); in mv88e6393x_sgmii_pcs_post_config() [all …]
|
| H A D | pcs-6352.c | 35 return container_of(pcs, struct marvell_c22_pcs, phylink_pcs); in pcs_to_marvell_c22_pcs() 140 static int marvell_c22_pcs_enable(struct phylink_pcs *pcs) in marvell_c22_pcs_enable() argument 142 struct marvell_c22_pcs *mpcs = pcs_to_marvell_c22_pcs(pcs); in marvell_c22_pcs_enable() 152 static void marvell_c22_pcs_disable(struct phylink_pcs *pcs) in marvell_c22_pcs_disable() argument 154 struct marvell_c22_pcs *mpcs = pcs_to_marvell_c22_pcs(pcs); in marvell_c22_pcs_disable() 164 struct marvell_c22_pcs *mpcs = pcs_to_marvell_c22_pcs(pcs); in marvell_c22_pcs_get_state() 185 static int marvell_c22_pcs_config(struct phylink_pcs *pcs, in marvell_c22_pcs_config() argument 363 struct phylink_pcs *pcs; in mv88e6352_pcs_teardown() local 365 pcs = chip->ports[port].pcs_private; in mv88e6352_pcs_teardown() 366 if (!pcs) in mv88e6352_pcs_teardown() [all …]
|
| /linux-6.15/drivers/net/phy/ |
| H A D | phylink.c | 890 if (pcs && pcs->ops->pcs_disable) in phylink_pcs_disable() 891 pcs->ops->pcs_disable(pcs); in phylink_pcs_disable() 898 if (pcs && pcs->ops->pcs_enable) in phylink_pcs_enable() 899 err = pcs->ops->pcs_enable(pcs); in phylink_pcs_enable() 919 if (pcs && pcs->ops->pcs_link_up) in phylink_pcs_link_up() 926 pcs->ops->pcs_disable_eee(pcs); in phylink_pcs_disable_eee() 932 pcs->ops->pcs_enable_eee(pcs); in phylink_pcs_enable_eee() 974 ret = pcs->ops->pcs_pre_init(pcs); in phylink_pcs_pre_init() 1234 pcs_changed = pl->pcs != pcs; in phylink_major_config() 1268 pl->pcs = pcs; in phylink_major_config() [all …]
|
| /linux-6.15/Documentation/devicetree/bindings/net/ |
| H A D | nvidia,tegra234-mgbe.yaml | 49 - const: eee-pcs 50 - const: rx-pcs-input 51 - const: rx-pcs-m 52 - const: rx-pcs 53 - const: tx-pcs 61 - const: pcs 137 "rx-input", "tx", "eee-pcs", "rx-pcs-input", "rx-pcs-m", 138 "rx-pcs", "tx-pcs"; 141 reset-names = "mac", "pcs";
|
| /linux-6.15/drivers/clocksource/ |
| H A D | timer-pistachio.c | 70 struct pistachio_clocksource *pcs = to_pistachio_clocksource(cs); in pistachio_clocksource_read_cycles() local 80 raw_spin_lock_irqsave(&pcs->lock, flags); in pistachio_clocksource_read_cycles() 81 overflow = gpt_readl(pcs->base, TIMER_CURRENT_OVERFLOW_VALUE, 0); in pistachio_clocksource_read_cycles() 82 counter = gpt_readl(pcs->base, TIMER_CURRENT_VALUE, 0); in pistachio_clocksource_read_cycles() 83 raw_spin_unlock_irqrestore(&pcs->lock, flags); in pistachio_clocksource_read_cycles() 96 struct pistachio_clocksource *pcs = to_pistachio_clocksource(cs); in pistachio_clksrc_set_mode() local 99 val = gpt_readl(pcs->base, TIMER_CFG, timeridx); in pistachio_clksrc_set_mode() 105 gpt_writel(pcs->base, val, TIMER_CFG, timeridx); in pistachio_clksrc_set_mode() 110 struct pistachio_clocksource *pcs = to_pistachio_clocksource(cs); in pistachio_clksrc_enable() local 114 gpt_writel(pcs->base, RELOAD_VALUE, TIMER_RELOAD_VALUE, timeridx); in pistachio_clksrc_enable()
|
| /linux-6.15/drivers/net/ethernet/meta/fbnic/ |
| H A D | fbnic_phylink.c | 12 fbnic_pcs_to_net(struct phylink_pcs *pcs) in fbnic_pcs_to_net() argument 14 return container_of(pcs, struct fbnic_net, phylink_pcs); in fbnic_pcs_to_net() 18 fbnic_phylink_pcs_get_state(struct phylink_pcs *pcs, unsigned int neg_mode, in fbnic_phylink_pcs_get_state() argument 21 struct fbnic_net *fbn = fbnic_pcs_to_net(pcs); in fbnic_phylink_pcs_get_state() 49 fbnic_phylink_pcs_enable(struct phylink_pcs *pcs) in fbnic_phylink_pcs_enable() argument 51 struct fbnic_net *fbn = fbnic_pcs_to_net(pcs); in fbnic_phylink_pcs_enable() 58 fbnic_phylink_pcs_disable(struct phylink_pcs *pcs) in fbnic_phylink_pcs_disable() argument 60 struct fbnic_net *fbn = fbnic_pcs_to_net(pcs); in fbnic_phylink_pcs_disable() 67 fbnic_phylink_pcs_config(struct phylink_pcs *pcs, unsigned int neg_mode, in fbnic_phylink_pcs_config() argument
|
| /linux-6.15/drivers/net/ethernet/microchip/lan966x/ |
| H A D | lan966x_phylink.c | 85 static struct lan966x_port *lan966x_pcs_to_port(struct phylink_pcs *pcs) in lan966x_pcs_to_port() argument 87 return container_of(pcs, struct lan966x_port, phylink_pcs); in lan966x_pcs_to_port() 90 static void lan966x_pcs_get_state(struct phylink_pcs *pcs, in lan966x_pcs_get_state() argument 94 struct lan966x_port *port = lan966x_pcs_to_port(pcs); in lan966x_pcs_get_state() 99 static int lan966x_pcs_config(struct phylink_pcs *pcs, unsigned int neg_mode, in lan966x_pcs_config() argument 104 struct lan966x_port *port = lan966x_pcs_to_port(pcs); in lan966x_pcs_config() 121 static void lan966x_pcs_aneg_restart(struct phylink_pcs *pcs) in lan966x_pcs_aneg_restart() argument
|
| /linux-6.15/Documentation/devicetree/bindings/net/pcs/ |
| H A D | fsl,lynx-pcs.yaml | 4 $id: http://devicetree.org/schemas/net/pcs/fsl,lynx-pcs.yaml# 19 const: fsl,lynx-pcs 36 qsgmii_pcs1: ethernet-pcs@1 { 37 compatible = "fsl,lynx-pcs";
|
| /linux-6.15/drivers/net/ethernet/stmicro/stmmac/ |
| H A D | dwmac-rzn1.c | 20 struct phylink_pcs *pcs; in rzn1_dwmac_pcs_init() local 25 pcs = miic_create(priv->device, pcs_node); in rzn1_dwmac_pcs_init() 27 if (IS_ERR(pcs)) in rzn1_dwmac_pcs_init() 28 return PTR_ERR(pcs); in rzn1_dwmac_pcs_init() 30 priv->hw->phylink_pcs = pcs; in rzn1_dwmac_pcs_init()
|
| /linux-6.15/drivers/net/ethernet/microchip/sparx5/ |
| H A D | sparx5_phylink.c | 87 static struct sparx5_port *sparx5_pcs_to_port(struct phylink_pcs *pcs) in sparx5_pcs_to_port() argument 89 return container_of(pcs, struct sparx5_port, phylink_pcs); in sparx5_pcs_to_port() 92 static void sparx5_pcs_get_state(struct phylink_pcs *pcs, unsigned int neg_mode, in sparx5_pcs_get_state() argument 95 struct sparx5_port *port = sparx5_pcs_to_port(pcs); in sparx5_pcs_get_state() 106 static int sparx5_pcs_config(struct phylink_pcs *pcs, unsigned int neg_mode, in sparx5_pcs_config() argument 111 struct sparx5_port *port = sparx5_pcs_to_port(pcs); in sparx5_pcs_config() 141 static void sparx5_pcs_aneg_restart(struct phylink_pcs *pcs) in sparx5_pcs_aneg_restart() argument
|
| /linux-6.15/drivers/phy/qualcomm/ |
| H A D | phy-qcom-qmp-usbc.c | 289 u16 pcs; member 326 void __iomem *pcs; member 401 .pcs = 0xc00, 461 void __iomem *pcs = qmp->pcs; in qmp_usbc_init() local 553 status = qmp->pcs + cfg->regs[QPHY_PCS_STATUS]; in qmp_usbc_power_on() 645 void __iomem *pcs = qmp->pcs; in qmp_usbc_enable_autonomous_mode() local 673 void __iomem *pcs = qmp->pcs; in qmp_usbc_disable_autonomous_mode() local 934 qmp->pcs = devm_of_iomap(dev, np, 2, NULL); in qmp_usbc_parse_dt_legacy() 935 if (IS_ERR(qmp->pcs)) in qmp_usbc_parse_dt_legacy() 936 return PTR_ERR(qmp->pcs); in qmp_usbc_parse_dt_legacy() [all …]
|
| H A D | phy-qcom-qmp-ufs.c | 1073 u16 pcs; member 1126 void __iomem *pcs; member 1174 .pcs = 0xc00, 1183 .pcs = 0x0400, 1708 void __iomem *pcs = qmp->pcs; in qmp_ufs_pcs_init() local 1710 qmp_configure(qmp->dev, pcs, tbls->pcs, tbls->pcs_num); in qmp_ufs_pcs_init() 1764 void __iomem *pcs = qmp->pcs; in qmp_ufs_com_init() local 1845 void __iomem *pcs = qmp->pcs; in qmp_ufs_power_on() local 2056 if (IS_ERR(qmp->pcs)) in qmp_ufs_parse_dt_legacy() 2057 return PTR_ERR(qmp->pcs); in qmp_ufs_parse_dt_legacy() [all …]
|
| /linux-6.15/drivers/net/ethernet/freescale/dpaa2/ |
| H A D | dpaa2-mac.c | 157 return mac->pcs; in dpaa2_mac_select_pcs() 256 struct phylink_pcs *pcs; in dpaa2_pcs_create() local 265 pcs = lynx_pcs_create_fwnode(node); in dpaa2_pcs_create() 268 if (pcs == ERR_PTR(-EPROBE_DEFER)) { in dpaa2_pcs_create() 273 if (pcs == ERR_PTR(-ENODEV)) { in dpaa2_pcs_create() 275 return PTR_ERR(pcs); in dpaa2_pcs_create() 278 if (IS_ERR(pcs)) { in dpaa2_pcs_create() 281 return PTR_ERR(pcs); in dpaa2_pcs_create() 284 mac->pcs = pcs; in dpaa2_pcs_create() 295 mac->pcs = NULL; in dpaa2_pcs_destroy() [all …]
|