Re: [PATCH v1 2/2] net: stmmac: Add NPCM support
From: Andrew Lunn <andrew@lunn.ch>
Date: 2023-11-22 18:45:49
Also in:
linux-arm-kernel, linux-devicetree, lkml, openbmc
From: Andrew Lunn <andrew@lunn.ch>
Date: 2023-11-22 18:45:49
Also in:
linux-arm-kernel, linux-devicetree, lkml, openbmc
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 [off-list ref] wrote:quoted
quoted
+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@intel.com/
I _think_ this patch eventually got turned into
driver/net/pcs/pcs-xpcs.c
What exactly does it not do for you?
Andrew