[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20231130213441.032a661c@device.home>
Date: Thu, 30 Nov 2023 21:34:41 +0100
From: Maxime Chevallier <maxime.chevallier@...tlin.com>
To: Serge Semin <fancer.lancer@...il.com>
Cc: Andrew Lunn <andrew@...n.ch>, devicetree@...r.kernel.org,
linux-kernel@...r.kernel.org, Tomer Maimon <tmaimon77@...il.com>,
davem@...emloft.net, avifishman70@...il.com, venture@...gle.com,
openbmc@...ts.ozlabs.org, robh+dt@...nel.org, tali.perry1@...il.com,
mcoquelin.stm32@...il.com, edumazet@...gle.com, joabreu@...opsys.com,
joel@....id.au, krzysztof.kozlowski+dt@...aro.org, peppe.cavallaro@...com,
j.neuschaefer@....net, netdev@...r.kernel.org,
linux-stm32@...md-mailman.stormreply.com,
linux-arm-kernel@...ts.infradead.org, benjaminfair@...gle.com
Subject: Re: [Linux-stm32] [PATCH v1 2/2] net: stmmac: Add NPCM support
Hello,
On Thu, 30 Nov 2023 22:59:32 +0300
Serge Semin <fancer.lancer@...il.com> wrote:
> On Thu, Nov 30, 2023 at 06:26:13PM +0100, Andrew Lunn wrote:
> > > I will check with the xpcs maintainer how can we add indirect access
> > > to the xpcs module.
> >
> > https://elixir.bootlin.com/linux/latest/source/drivers/net/ethernet/stmicro/stmmac/dwmac-socfpga.c#L449
> >
> > It creates a regmap for the memory range. On top of that it creates an
> > MDIO bus. You can then access the PCS in the normal way.
>
> Actually Synopsys DW XPCS can be synthesized with two types of the CSR
> interfaces:
> 1. MDIO: device looks as a normal MDIO device. This option is currently
> supported by the STMMAC MDIO driver.
> 2. MCI/APB3: device MMD CSRs are directly (all CSRs are visible) or
> indirectly (paged-base access) accessible over the system memory bus.
>
> In addition to the above XPCS device can be equipped with separate
> clock sources (at least to feed the MCI or APB3 interface) and may
> have dedicated IRQ line to signal various events like link
> establishing, failures, etc. From that perspective XPCS in both cases
> looks as a normal platform device for which would be better to have a
> special DT-node defined with all those resources supplied. Then the
> XPCS DT-node could be passed to the DW MAC DT-node via the already
> standardized "pcs-handle" DT-property.
To my understanding, this should work, there's another PCS that works
this way :
https://elixir.bootlin.com/linux/v6.7-rc3/source/drivers/net/pcs/pcs-rzn1-miic.c
Are you still able to use the mdio-regmap glue that Andrew mentioned,
to avoid the duplication between the mdio and mmio register accesses ?
Maxime
Powered by blists - more mailing lists