From: Vasilij Strassheim <v.strassheim@linutronix.de>
To: Andrew Lunn <andrew@lunn.ch>
Cc: Rob Herring <robh@kernel.org>,
Krzysztof Kozlowski <krzk+dt@kernel.org>,
Conor Dooley <conor+dt@kernel.org>,
Vladimir Oltean <olteanv@gmail.com>,
"David S. Miller" <davem@davemloft.net>,
Eric Dumazet <edumazet@google.com>,
Jakub Kicinski <kuba@kernel.org>, Paolo Abeni <pabeni@redhat.com>,
Simon Horman <horms@kernel.org>,
Russell King <linux@armlinux.org.uk>,
Andrew Lunn <andrew+netdev@lunn.ch>,
Heiner Kallweit <hkallweit1@gmail.com>,
devicetree@vger.kernel.org, linux-kernel@vger.kernel.org,
netdev@vger.kernel.org,
Martin Kaistra <martin.kaistra@linutronix.de>,
Benedikt Spranger <b.spranger@linutronix.de>
Subject: Re: [PATCH net-next v3 2/8] dt-bindings: net: Add SoC-e SWIP MDIO controller
Date: Mon, 05 Oct 2026 22:01:32 +0200 [thread overview]
Message-ID: <f078112879455b0f59b7278f966b84f2ddea1a0f.camel@linutronix.de> (raw)
In-Reply-To: <6a635aa0-3489-4d2b-b302-06b793326654@lunn.ch>
On Wed, 2026-09-30 at 20:24 +0200, Andrew Lunn wrote:
> On Wed, Sep 30, 2026 at 07:13:35PM +0200, Vasilij Strassheim wrote:
> > On Wed, 2026-09-30 at 17:14 +0200, Andrew Lunn wrote:
> > > On Wed, Sep 30, 2026 at 04:00:56PM +0200, Vasilij Strassheim wrote:
> > > > On Sat, 2026-09-26 at 00:55 +0200, Andrew Lunn wrote:
> > > > > > The controller exposes separate register regions for transaction data
> > > > > > and for the shared transaction control and external bus selector
> > > > > > register.
> > > > >
> > > > > > +examples:
> > > > > > + - |
> > > > > > + mdio@204 {
> > > > > > + compatible = "soce,swip-mdio-23-02";
> > > > > > + reg = <0x204 0xc>, <0x200 0x4>;
> > > > >
> > > > > At least in the example, they are not separate?
> > > >
> > > > Not separate regions but registers...
> > > > I'm obviously bad at documenting things.
> > > >
> > > > The current information in the commit message is misleading and
> > > > irrelevant. Looking at the bot's feedback, it's at the same time not
> > > > clear enough yet that the mdio controller part is mapped within the
> > > > switch memory and can't be used separately from it.
> > > >
> > > > I will update the commit message to something like this:
> > > > Add a binding for the MDIO controller integrated into SoC-e SWIP
> > > > Ethernet switch IP cores.
> > > > The controller shares the memory of the synthesized switch IP core and
> > > > cannot be used independently.
> > >
> > > I think part of the issue is the compatible. That suggests it is a
> > > separate device, with its own driver. But it is actually driven by the
> > > switch driver.
> >
> > I can't avoid the compatible right now. Somehow it is still a separate
> > functionality. I hope the following example doesn't cause unnecessary
> > confusion, but rather helps to understand the system better:
> >
> > The relationship between the MDIO controller and the switch core is more
> > like that of tools in a Swiss Army knife.
> > There are a few standalone tools, such as the knife and the screwdriver.
> > These can also be described on their own. But they only make sense when
> > they are attached to the knife as a whole. As soon as one takes it
> > apart, the individual tools can no longer be used effectively. At the
> > same time, no one needs to worry about the screwdriver if they only need
> > the knife.
>
> Maybe consider an MFD.
>
> You then do get independent devices.
>
> Also, with the current structure, i'm not sure how the mdio-mux is
> getting instantiated. You list it inside the switch node, so i don't
> think i will get turned into a platform device and probed. An MFD
> might helper, maybe.
>
> There are other switches which are described as MFD, so it is not
> unknown.
I was initially thinking that an MFD would be too much for a switch, but
after looking at it more closely, it seems to be the right model here.
I will update this again with a bigger change.
I would also update the Kconfig structure. The Ethernet switch child
will be the only user-visible entry point. Selecting it will select the
"SWIP IP Core" MFD parent as well as the required MDIO controller and
mux drivers. The MFD and MDIO controller symbols will have only empty
tristate options.
>
> Andrew
Thanks,
Vasilij
next prev parent reply other threads:[~2026-10-05 20:01 UTC|newest]
Thread overview: 50+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-09-23 10:39 [PATCH net-next v3 0/8] net: dsa: Add SoC-e DSA driver Vasilij Strassheim
2026-09-23 10:39 ` [PATCH net-next v3 1/8] dt-bindings: vendor-prefixes: Add soce Vasilij Strassheim
2026-09-23 10:39 ` [PATCH net-next v3 2/8] dt-bindings: net: Add SoC-e SWIP MDIO controller Vasilij Strassheim
2026-09-25 22:55 ` Andrew Lunn
2026-09-30 14:00 ` Vasilij Strassheim
2026-09-30 15:14 ` Andrew Lunn
2026-09-30 17:13 ` Vasilij Strassheim
2026-09-30 18:24 ` Andrew Lunn
2026-10-05 20:01 ` Vasilij Strassheim [this message]
2026-09-27 12:28 ` netdev-bot+sashiko
2026-10-07 7:43 ` Vasilij Strassheim
2026-09-23 10:39 ` [PATCH net-next v3 3/8] dt-bindings: net: dsa: Add SoC-e SWIP switch Vasilij Strassheim
2026-09-25 23:05 ` Andrew Lunn
2026-09-30 17:16 ` Vasilij Strassheim
2026-09-27 12:28 ` netdev-bot+sashiko
2026-10-07 20:54 ` Rob Herring
2026-10-08 9:50 ` Vasilij Strassheim
2026-10-08 12:05 ` Andrew Lunn
2026-10-08 12:52 ` Vasilij Strassheim
2026-09-23 10:39 ` [PATCH net-next v3 4/8] net: dsa: Add tag handling for SoC-e switches Vasilij Strassheim
[not found] ` <20260924104003.A49F31F000FF@smtp.kernel.org>
2026-09-25 12:46 ` Vasilij Strassheim
2026-09-27 12:28 ` netdev-bot+sashiko
2026-10-07 9:09 ` Vasilij Strassheim
2026-09-23 10:39 ` [PATCH net-next v3 5/8] net: mdio: Add SoC-e SWIP MDIO controller driver Vasilij Strassheim
2026-09-25 23:10 ` Andrew Lunn
2026-09-30 17:23 ` Vasilij Strassheim
2026-09-30 18:20 ` Andrew Lunn
2026-09-27 12:28 ` netdev-bot+sashiko
2026-10-07 9:31 ` Vasilij Strassheim
[not found] ` <20260924104004.773F61F00899@smtp.kernel.org>
2026-10-06 7:14 ` Vasilij Strassheim
2026-09-23 10:39 ` [PATCH net-next v3 6/8] net: dsa: soce: Add basic support for SoC-e switch IP cores Vasilij Strassheim
2026-09-25 23:17 ` Andrew Lunn
2026-09-30 17:26 ` Vasilij Strassheim
2026-09-25 23:20 ` Andrew Lunn
2026-09-30 18:15 ` Vasilij Strassheim
2026-09-30 18:29 ` Andrew Lunn
2026-09-30 18:49 ` Vasilij Strassheim
2026-09-27 12:28 ` netdev-bot+sashiko
2026-10-07 9:55 ` Vasilij Strassheim
2026-09-23 10:39 ` [PATCH net-next v3 7/8] net: dsa: soce: Add VLAN offload support Vasilij Strassheim
2026-09-25 23:32 ` Andrew Lunn
2026-09-30 18:32 ` Vasilij Strassheim
2026-09-27 12:28 ` netdev-bot+sashiko
2026-10-08 15:22 ` Vasilij Strassheim
[not found] ` <20260924104005.597041F00898@smtp.kernel.org>
2026-10-06 12:52 ` Vasilij Strassheim
2026-09-23 10:39 ` [PATCH net-next v3 8/8] net: dsa: soce: Disable unsupported hardware STP Vasilij Strassheim
2026-09-25 23:24 ` Andrew Lunn
2026-09-30 18:29 ` Vasilij Strassheim
2026-09-30 18:41 ` Andrew Lunn
2026-09-27 12:28 ` netdev-bot+sashiko
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=f078112879455b0f59b7278f966b84f2ddea1a0f.camel@linutronix.de \
--to=v.strassheim@linutronix.de \
--cc=andrew+netdev@lunn.ch \
--cc=andrew@lunn.ch \
--cc=b.spranger@linutronix.de \
--cc=conor+dt@kernel.org \
--cc=davem@davemloft.net \
--cc=devicetree@vger.kernel.org \
--cc=edumazet@google.com \
--cc=hkallweit1@gmail.com \
--cc=horms@kernel.org \
--cc=krzk+dt@kernel.org \
--cc=kuba@kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux@armlinux.org.uk \
--cc=martin.kaistra@linutronix.de \
--cc=netdev@vger.kernel.org \
--cc=olteanv@gmail.com \
--cc=pabeni@redhat.com \
--cc=robh@kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox