netdev.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Vladimir Oltean <vladimir.oltean@nxp.com>
To: Colin Foster <colin.foster@in-advantage.com>
Cc: "netdev@vger.kernel.org" <netdev@vger.kernel.org>,
	"linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>,
	Russell King <linux@armlinux.org.uk>,
	Paolo Abeni <pabeni@redhat.com>, Jakub Kicinski <kuba@kernel.org>,
	Eric Dumazet <edumazet@google.com>,
	"David S. Miller" <davem@davemloft.net>,
	Florian Fainelli <f.fainelli@gmail.com>,
	Vivien Didelot <vivien.didelot@gmail.com>,
	Andrew Lunn <andrew@lunn.ch>,
	"UNGLinuxDriver@microchip.com" <UNGLinuxDriver@microchip.com>,
	Alexandre Belloni <alexandre.belloni@bootlin.com>,
	Claudiu Manoil <claudiu.manoil@nxp.com>,
	Lee Jones <lee@kernel.org>
Subject: Re: [RFC v1 net-next 8/8] net: dsa: ocelot: add external ocelot switch control
Date: Fri, 16 Sep 2022 22:31:47 +0000	[thread overview]
Message-ID: <20220916223146.a5djbyvwlh6jekw6@skbuf> (raw)
In-Reply-To: <YySqm8t0pbH4cqR/@euler>

On Fri, Sep 16, 2022 at 09:55:55AM -0700, Colin Foster wrote:
> I'm looking into these changes now. I was using "ocelot_ext_" not
> necessarily as an indication as "this only matters when it is controlled
> externally" but rather "this is a function within ocelot_ext.c"
> 
> So there's a weird line between what constitutes "external control" vs
> "generic"
> 
> There are only two things that really matter for external control:
> 1. The regmaps are set up in a specific way by ocelot-mfd
> 2. The existence of a DSA CPU port
> 
> Going by 1 only - there's basically nothing in
> drivers/net/dsa/ocelot/ocelot_ext.c that is inherently "external only".
> And that's kindof the point. The only thing that can be done externally
> that isn't done internally would be a whole chip reset.
> 
> Going by 2 only - the simple fact that it is in drivers/net/dsa/ means
> that there is a CPU port, and therefore everything in the file requires
> that it is externally controlled.
> 
> 
> 
> Unless you're going another way, and you're not actually talking about
> "function names" but instead "should this actually live in ocelot_lib"
> 
> While I don't think that's what you were directly suggesting - I like
> this! ocelot_ext_reset() shouldn't exist - I should move, update, and
> utilize ocelot_reset() from drivers/net/ethernet/mscc/ocelot_vsc7514.c.
> 
> The ocelot_ext function list will dwindle down to:
> *_probe
> *_remove
> *_shutdown
> *_regmap_init
> *_phylink_validate

Yes, please use as much as possible from the ocelot switch library,
after all you are driving pretty much the same hardware. I'm glad for
your revelation and sorry that I didn't think of expressing it this way
sooner. I think the reset procedure used to be slightly different in the
times when the ocelot_ext DSA driver also took care of setting up what
is now the responsibility of the ocelot-mfd driver. Between then and
now, some time has passed (years if I'm not mistaken) and I forgot what
was and what wasn't said, I even forgot most of my own thoughts.

  reply	other threads:[~2022-09-16 22:31 UTC|newest]

Thread overview: 33+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-09-11 20:02 [RFC v1 net-next 0/8] add support for the the vsc7512 internal copper phys Colin Foster
2022-09-11 20:02 ` [RFC v1 net-next 1/8] net: mscc: ocelot: expose ocelot wm functions Colin Foster
2022-09-11 20:02 ` [RFC v1 net-next 2/8] net: mscc: ocelot: expose regfield definition to be used by other drivers Colin Foster
2022-09-12 15:47   ` Vladimir Oltean
2022-09-16 17:44     ` Colin Foster
2022-09-16 22:36       ` Vladimir Oltean
2022-09-11 20:02 ` [RFC v1 net-next 3/8] net: mscc: ocelot: expose stats layout " Colin Foster
2022-09-11 20:02 ` [RFC v1 net-next 4/8] net: mscc: ocelot: expose vcap_props structure Colin Foster
2022-09-11 20:02 ` [RFC v1 net-next 5/8] net: dsa: felix: add configurable device quirks Colin Foster
2022-09-11 20:02 ` [RFC v1 net-next 6/8] net: dsa: felix: populate mac_capabilities for all ports Colin Foster
2022-09-12  8:48   ` Russell King (Oracle)
2022-09-12 10:16     ` Vladimir Oltean
2022-09-12 11:41       ` Vladimir Oltean
2022-09-12 15:32         ` Russell King (Oracle)
2022-09-12 15:35           ` Colin Foster
2022-09-12 15:47       ` Colin Foster
2022-09-12 15:52         ` Vladimir Oltean
2022-09-12 16:04           ` Colin Foster
2022-09-11 20:02 ` [RFC v1 net-next 7/8] mfd: ocelot: add regmaps for ocelot_ext Colin Foster
2022-09-12 17:08   ` Vladimir Oltean
2022-09-12 19:04     ` Colin Foster
2022-09-12 20:23       ` Vladimir Oltean
2022-09-12 21:03         ` Colin Foster
2022-09-12 21:53           ` Vladimir Oltean
2022-09-11 20:02 ` [RFC v1 net-next 8/8] net: dsa: ocelot: add external ocelot switch control Colin Foster
2022-09-12 10:51   ` Lee Jones
2022-09-12 15:31     ` Colin Foster
2022-09-12 17:21   ` Vladimir Oltean
2022-09-12 19:13     ` Colin Foster
2022-09-16 16:55     ` Colin Foster
2022-09-16 22:31       ` Vladimir Oltean [this message]
2022-09-16 23:10         ` Colin Foster
2022-09-20  2:58     ` Colin Foster

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=20220916223146.a5djbyvwlh6jekw6@skbuf \
    --to=vladimir.oltean@nxp.com \
    --cc=UNGLinuxDriver@microchip.com \
    --cc=alexandre.belloni@bootlin.com \
    --cc=andrew@lunn.ch \
    --cc=claudiu.manoil@nxp.com \
    --cc=colin.foster@in-advantage.com \
    --cc=davem@davemloft.net \
    --cc=edumazet@google.com \
    --cc=f.fainelli@gmail.com \
    --cc=kuba@kernel.org \
    --cc=lee@kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux@armlinux.org.uk \
    --cc=netdev@vger.kernel.org \
    --cc=pabeni@redhat.com \
    --cc=vivien.didelot@gmail.com \
    /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;
as well as URLs for NNTP newsgroup(s).