Lines Matching refs:pcs
13 #include <linux/pcs/pcs-mtk-lynxi.h>
75 * @pcs: Phylink PCS structure
82 struct phylink_pcs pcs;
86 static struct mtk_pcs_lynxi *pcs_to_mtk_pcs_lynxi(struct phylink_pcs *pcs)
88 return container_of(pcs, struct mtk_pcs_lynxi, pcs);
91 static unsigned int mtk_pcs_lynxi_inband_caps(struct phylink_pcs *pcs,
107 static void mtk_pcs_lynxi_get_state(struct phylink_pcs *pcs,
111 struct mtk_pcs_lynxi *mpcs = pcs_to_mtk_pcs_lynxi(pcs);
123 static int mtk_pcs_lynxi_config(struct phylink_pcs *pcs, unsigned int neg_mode,
128 struct mtk_pcs_lynxi *mpcs = pcs_to_mtk_pcs_lynxi(pcs);
221 static void mtk_pcs_lynxi_restart_an(struct phylink_pcs *pcs)
223 struct mtk_pcs_lynxi *mpcs = pcs_to_mtk_pcs_lynxi(pcs);
228 static void mtk_pcs_lynxi_link_up(struct phylink_pcs *pcs,
233 struct mtk_pcs_lynxi *mpcs = pcs_to_mtk_pcs_lynxi(pcs);
254 static void mtk_pcs_lynxi_disable(struct phylink_pcs *pcs)
256 struct mtk_pcs_lynxi *mpcs = pcs_to_mtk_pcs_lynxi(pcs);
307 mpcs->pcs.ops = &mtk_pcs_lynxi_ops;
308 mpcs->pcs.poll = true;
311 __set_bit(PHY_INTERFACE_MODE_SGMII, mpcs->pcs.supported_interfaces);
312 __set_bit(PHY_INTERFACE_MODE_1000BASEX, mpcs->pcs.supported_interfaces);
313 __set_bit(PHY_INTERFACE_MODE_2500BASEX, mpcs->pcs.supported_interfaces);
315 return &mpcs->pcs;
319 void mtk_pcs_lynxi_destroy(struct phylink_pcs *pcs)
321 if (!pcs)
324 kfree(pcs_to_mtk_pcs_lynxi(pcs));