From: Bastien Curutchet <bastien.curutchet@bootlin.com>
To: Vladimir Oltean <olteanv@gmail.com>
Cc: Woojung.Huh@microchip.com, UNGLinuxDriver@microchip.com,
andrew@lunn.ch, davem@davemloft.net, edumazet@google.com,
kuba@kernel.org, pabeni@redhat.com, richardcochran@gmail.com,
horms@kernel.org, pascal.eberhard@se.com,
miquel.raynal@bootlin.com, thomas.petazzoni@bootlin.com,
netdev@vger.kernel.org, linux-kernel@vger.kernel.org,
maxime.chevallier@bootlin.com, Tristram.Ha@microchip.com
Subject: Re: [PATCH net-next v6 1/9] net: dsa: microchip: Add support for KSZ8463 global irq
Date: Wed, 11 Mar 2026 17:58:32 +0100 [thread overview]
Message-ID: <c9c990b2-0fe3-4329-9a1a-e29aa0c9a6a6@bootlin.com> (raw)
In-Reply-To: <20260311135610.oox5ahxcyvxkuegw@skbuf>
On 3/11/26 2:56 PM, Vladimir Oltean wrote:
> On Wed, Mar 11, 2026 at 01:53:38PM +0100, Bastien Curutchet wrote:
>> On 3/11/26 12:53 PM, Vladimir Oltean wrote:
>>> On Wed, Mar 11, 2026 at 11:02:35AM +0100, Bastien Curutchet wrote:
>>>> I, more or less, managed to fit this PTP support in the current framework,
>>>> but the next series I prepared to add periodic output support is full of
>>>> is_ksz8463() branches. So I think that I'll go with what you suggested and
>>>> try to move the KSZ8463 support in the ksz8995.c driver. It will probably be
>>>> cleaner this way.
>>>>
>>>> TBH I'm a bit lost with all these KSZ variants but IIUC KSZ8463 and KSZ8995
>>>> both belong to the 'old generation' of the hardware. Maybe a good split
>>>> would be to have these old switches in the ksz8995.c driver and keep the
>>>> rest under ksz_common infra.
>>>
>>> Wait, to make sure I understand, you said you're going to rebase this
>>> series onto the ksz8995 driver?
>>
>> Well I'll first add basic support for the KSZ8463 in the ksz8995 driver and
>> then add interrupt and PTP support on top of it yes. Did I misunderstand
>> you're suggestion ?
>
> If we're splitting drivers, I would like to see them grouped by actual similarity,
> so as to not repeat the same mistakes.
>
> I took a random feature, user port separation, and I'm comparing how Linus
> implemented it in ksz8995:
> https://lore.kernel.org/netdev/20260219-ks8995-fixups-v3-5-a7fc63fe1916@kernel.org/
> vs the register map from KSZ8463:
> https://www.microchip.com/en-us/product/ksz8463#Documentation
>
I took a look at the register maps from both datasheets. Registers
aren't always at the same address and some bits differ here and there
but following areas look very similar:
- global control
- port control
- TOS priority
- MAC address config
- Indirect access
- Data rate limit
> Apart from some funky naming differences (KS8995_REG_PC1 corresponds to
> "PORT 1 CONTROL REGISTER 2"), it should be pretty similar, right? Do you
> see some differences requiring major surgery in ks8995?
>
The biggest difference I see is the way KSZ8463 accesses the registers
through SPI. It uses byte enable bits in the command word that don't
exist on the other switches.
> Apart from the obvious incompleteness, of course. That driver currently
> reports DSA_TAG_PROTO_NONE. It will have to return DSA_TAG_PROTO_KS8995
> for ks8995:
> https://lore.kernel.org/netdev/20260107-ks8995-dsa-tagging-v1-1-1a92832c1540@kernel.org/
> and DSA_TAG_PROTO_KSZ9893 for your KSZ8463. Right?
Yes.
In the end, it feels OK to me to migrate KSZ8463 into ksz8863.c but it's
hard to know for sure before actually doing it.
next prev parent reply other threads:[~2026-03-11 16:58 UTC|newest]
Thread overview: 38+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-03-04 10:18 [PATCH net-next v6 0/9] net: dsa: microchip: Add PTP support for the KSZ8463 Bastien Curutchet (Schneider Electric)
2026-03-04 10:18 ` [PATCH net-next v6 1/9] net: dsa: microchip: Add support for KSZ8463 global irq Bastien Curutchet (Schneider Electric)
2026-03-05 9:56 ` Vladimir Oltean
2026-03-05 12:39 ` Bastien Curutchet
2026-03-05 12:51 ` Vladimir Oltean
2026-03-05 14:45 ` Bastien Curutchet
2026-03-06 1:10 ` Tristram.Ha
2026-03-06 9:03 ` Bastien Curutchet
2026-03-09 12:54 ` Bastien Curutchet
2026-03-09 20:54 ` Vladimir Oltean
2026-03-11 10:02 ` Bastien Curutchet
2026-03-11 11:53 ` Vladimir Oltean
2026-03-11 12:53 ` Bastien Curutchet
2026-03-11 13:56 ` Vladimir Oltean
2026-03-11 16:58 ` Bastien Curutchet [this message]
2026-03-11 18:24 ` Andrew Lunn
2026-03-11 21:24 ` Vladimir Oltean
2026-03-12 18:28 ` Bastien Curutchet
2026-03-13 2:05 ` Tristram.Ha
2026-03-13 2:17 ` Tristram.Ha
2026-03-12 0:14 ` Tristram.Ha
2026-03-12 13:45 ` Vladimir Oltean
2026-03-13 15:38 ` Vladimir Oltean
2026-03-13 17:29 ` Tristram.Ha
2026-03-18 9:26 ` Bastien Curutchet
2026-03-18 14:02 ` Vladimir Oltean
2026-03-04 10:18 ` [PATCH net-next v6 2/9] net: dsa: microchip: Decorrelate IRQ domain from port Bastien Curutchet (Schneider Electric)
2026-03-05 10:07 ` Vladimir Oltean
2026-03-06 9:18 ` Bastien Curutchet
2026-03-04 10:18 ` [PATCH net-next v6 3/9] net: dsa: microchip: Decorrelate msg_irq index from IRQ bit offset Bastien Curutchet (Schneider Electric)
2026-03-04 10:18 ` [PATCH net-next v6 4/9] net: dsa: microchip: Add support for KSZ8463's PTP interrupts Bastien Curutchet (Schneider Electric)
2026-03-05 10:19 ` Vladimir Oltean
2026-03-06 9:29 ` Bastien Curutchet
2026-03-04 10:18 ` [PATCH net-next v6 5/9] net: dsa: tag_ksz: Share code for KSZ8795 and KSZ9893 xmit operations Bastien Curutchet (Schneider Electric)
2026-03-04 10:18 ` [PATCH net-next v6 6/9] net: dsa: microchip: Add KSZ8463 tail tag handling Bastien Curutchet (Schneider Electric)
2026-03-04 10:18 ` [PATCH net-next v6 7/9] net: dsa: microchip: Explicitly enable detection of L2 PTP frames Bastien Curutchet (Schneider Electric)
2026-03-04 10:18 ` [PATCH net-next v6 8/9] net: dsa: microchip: Adapt port offset for KSZ8463's PTP register Bastien Curutchet (Schneider Electric)
2026-03-04 10:19 ` [PATCH net-next v6 9/9] net: dsa: microchip: Add two-step PTP support for KSZ8463 Bastien Curutchet (Schneider Electric)
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=c9c990b2-0fe3-4329-9a1a-e29aa0c9a6a6@bootlin.com \
--to=bastien.curutchet@bootlin.com \
--cc=Tristram.Ha@microchip.com \
--cc=UNGLinuxDriver@microchip.com \
--cc=Woojung.Huh@microchip.com \
--cc=andrew@lunn.ch \
--cc=davem@davemloft.net \
--cc=edumazet@google.com \
--cc=horms@kernel.org \
--cc=kuba@kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=maxime.chevallier@bootlin.com \
--cc=miquel.raynal@bootlin.com \
--cc=netdev@vger.kernel.org \
--cc=olteanv@gmail.com \
--cc=pabeni@redhat.com \
--cc=pascal.eberhard@se.com \
--cc=richardcochran@gmail.com \
--cc=thomas.petazzoni@bootlin.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