Hi Andrew, On Wed, 22 Nov 2023 at 20:45, Andrew Lunn <andrew@xxxxxxx> wrote: > > On Wed, Nov 22, 2023 at 07:50:57PM +0200, Tomer Maimon wrote: > > Hi Andrew, > > > > Thanks for your comments > > > > On Tue, 21 Nov 2023 at 18:42, Andrew Lunn <andrew@xxxxxxx> wrote: > > > > > > > +void npcm_dwmac_pcs_init(struct npcm_dwmac *dwmac, struct device *dev, > > > > + struct plat_stmmacenet_data *plat_dat) > > > > +{ > > > > + u16 val; > > > > + > > > > + iowrite16((u16)(SR_MII_CTRL >> 9), dwmac->reg + IND_AC_BA_REG); > > > > + val = ioread16(dwmac->reg + PCS_SR_MII_CTRL_REG); > > > > + val |= PCS_RST; > > > > + iowrite16(val, dwmac->reg + PCS_SR_MII_CTRL_REG); > > > > + > > > > + while (val & PCS_RST) > > > > + val = ioread16(dwmac->reg + PCS_SR_MII_CTRL_REG); > > > > + > > > > + val &= ~(PCS_AN_ENABLE); > > > > + iowrite16(val, dwmac->reg + PCS_SR_MII_CTRL_REG); > > > > +} > > > > > > Is this a licensed PCS implementation? Or home grown? If its been > > > licensed from somebody, it maybe should live in driver/net/pcs, so > > > others can reuse it when they license the same core. > > > we are using DWC PCS, I don't see support for DWC PCS and I am not > > sure it is supposed to be supported at /drivers/net/pcs > > I've not followed the naming used by Synopsys. Is DWC PCS the same as > XPCS? Does Synopsys have multiple PCS implementations? > > > I do see a patch set to support DWC PCS but I don't think it answers my needs > > https://patchwork.ozlabs.org/project/netdev/patch/1559674736-2190-3-git-send-email-weifeng.voon@xxxxxxxxx/ > > I _think_ this patch eventually got turned into > driver/net/pcs/pcs-xpcs.c > > What exactly does it not do for you? Thanks for pointing me to Synopsys (DWC) PCS in pcs-xpcs.c I need to check if the driver follows all our SGMII needs > > Andrew Best regards, Tomer