From: Paolo Abeni <pabeni@redhat.com>
To: "Jens Emil Schulz Østergaard"
<jensemil.schulzostergaard@microchip.com>,
UNGLinuxDriver@microchip.com, "Andrew Lunn" <andrew@lunn.ch>,
"Vladimir Oltean" <olteanv@gmail.com>,
"David S. Miller" <davem@davemloft.net>,
"Eric Dumazet" <edumazet@google.com>,
"Jakub Kicinski" <kuba@kernel.org>,
"Simon Horman" <horms@kernel.org>,
"Rob Herring" <robh@kernel.org>,
"Krzysztof Kozlowski" <krzk+dt@kernel.org>,
"Conor Dooley" <conor+dt@kernel.org>,
"Woojung Huh" <woojung.huh@microchip.com>,
"Russell King" <linux@armlinux.org.uk>,
"Steen Hegelund" <Steen.Hegelund@microchip.com>,
"Daniel Machon" <daniel.machon@microchip.com>
Cc: linux-kernel@vger.kernel.org, netdev@vger.kernel.org,
devicetree@vger.kernel.org
Subject: Re: [PATCH net-next v11 0/9] net: dsa: add DSA support for the LAN9645x switch chip family
Date: Tue, 11 Aug 2026 12:36:56 +0200 [thread overview]
Message-ID: <2699d4d2-fb2e-4f87-9a41-88627f16fb78@redhat.com> (raw)
In-Reply-To: <16b71fd7-9911-429b-a5a0-577f6ba0e999@redhat.com>
On 8/11/26 12:35 PM, Paolo Abeni wrote:
> On 8/5/26 4:34 PM, Jens Emil Schulz Østergaard wrote:
>> This series provides the Microchip LAN9645X Switch driver.
>>
>> The LAN9645x is a family of chips with ethernet switch functionality and
>> multiple peripheral functions. The switch delivers up to 9 ethernet
>> ports and 12 Gbps switching bandwidth.
>>
>> The switch chip has 5 integrated copper PHYs, support for 2x RGMII
>> interfaces, 2x SGMII and one QSGMII interface.
>>
>> The switch chip is from the same design architecture family as ocelot
>> and lan966x, and the driver reflects this similarity. However, LAN9645x
>> does not have an internal CPU in any package, and must be driven
>> externally. For register IO it supports interfaces such as SPI, I2C and
>> MDIO.
>>
>> The chip supports a variety of network features such as
>>
>> * Mactable for MDB/FDB functionality
>> * Bridge forwarding offload
>> * VLAN-aware bridging
>> * IGMP/MLD snooping
>> * Link aggregation
>> * PTP timestamping
>> * FRER (802.1CB)
>> * Media Redundancy Protocol
>> * Parallel Redundancy and High-Availability Seamless Redundancy
>> (HSR/PRP) in DANH/DANP mode
>> * Per stream filtering and policing
>> * Shapers such as Credit Based Shaping and Time Aware Shaing
>> * Frame preemption
>> * A TCAM (VCAP) for line-rate frame processing
>>
>> The LAN9645x family consists of the following SKUs:
>>
>> LAN96455F
>> LAN96457F
>> LAN96459F
>> LAN96455S
>> LAN96457S
>> LAN96459S
>>
>> The difference between the SKUs is the number of supported ports (5, 7
>> or 9) and features supported. The F subfamily supports HSR/PRP and TSN,
>> while the S subfamily does not.
>>
>> The intended way to bind this driver is using a parent MFD driver,
>> responsible for the register IO protocol, and distributing regmaps to
>> child devices. The goal is to use the same approach as the MFD driver in
>> drivers/mfd/ocelot-spi.c.
>>
>> This driver expects to request named regmaps from a parent device. This
>> approach is similar to the DSA driver
>>
>> drivers/net/dsa/ocelot/ocelot_ext.c
>>
>> which supports being driven by an external CPU via SPI with parent
>> device drivers/mfd/ocelot-spi.c.
>>
>> The MFD driver will come in a later series, because there are
>> requirements on the number of child devices before a driver qualifies as
>> a MFD device.
>>
>> Development is done using the LAN966x as a host CPU, running the lan966x
>> swichdev driver, using the EVB-LAN9668 EDS2 board.
>>
>> The datasheet is available here:
>> https://ww1.microchip.com/downloads/aemDocuments/documents/UNG/ProductDocuments/DataSheets/LAN9645xF-Data-Sheet-DS00006065.pdf
>>
>> This series will deliver the following features:
>>
>> * Standalone ports
>> * Bridge forwarding and FDB offloading
>> * VLAN-aware bridge
>> * Stats integration
>>
>> More support will be added at a later stage. Here is a tentative plan of
>> future patches for this DSA driver:
>>
>> * Add LAG support.
>> * Add MDB support.
>> * Add TC matchall mirror support.
>> * Add TC matchall police support.
>> * Add DCB/qos support.
>> * Add simple TC support: mqprio, cbs, tbf, ebf.
>> * Add TC flower filter support.
>> * Add HSR/PRP offloading support.
>> * Add PTP support.
>> * Add TC taprio support.
>>
>> For completeness I include tentative plan of planned patches for
>> LAN9645x peripherals:
>>
>> * Extend pinctrl-ocelot for LAN9645x:
>> https://lore.kernel.org/linux-gpio/20260119-pinctrl_ocelot_extend_support_for_lan9645x-v1-0-1228155ed0ee@microchip.com/
>> * Add driver for internal PHY:
>> https://lore.kernel.org/netdev/20260123-phy_micrel_add_support_for_lan9645x_internal_phy-v1-1-8484b1a5a7fd@microchip.com/
>> * MFD driver for managing register IO protocol and child device
>> initialization.
>> * Extend pinctrl-microchip-sgpio for LAN9645x support.
>> * Extend i2c_designware for LAN9645x support.
>> * Add driver for outbound interrupt controller.
>> * Add serdes driver for lan9645x.
>>
>> Signed-off-by: Jens Emil Schulz Østergaard <jensemil.schulzostergaard@microchip.com>
> I forwarded the feedback from sashiko/nipa, but sashiko gemini has more
> comments:
>
> https://sashiko.dev/#/patchset/20260805-dsa_lan9645x_switch_driver_base-v11-0-007ebc983a0a%40microchip.com
>
> please have a look and also to net-next commit c82ff94592fb
Whoops, sorry I missed part of netdev traffic. Please ignore this one.
/P
next prev parent reply other threads:[~2026-08-11 10:37 UTC|newest]
Thread overview: 36+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-08-05 14:34 [PATCH net-next v11 0/9] net: dsa: add DSA support for the LAN9645x switch chip family Jens Emil Schulz Østergaard
2026-08-05 14:34 ` [PATCH net-next v11 1/9] net: dsa: add tag driver for LAN9645X Jens Emil Schulz Østergaard
2026-08-06 14:38 ` sashiko-bot
2026-08-07 14:41 ` JensEmil.SchulzOstergaard
2026-08-11 10:55 ` Paolo Abeni
2026-08-11 11:50 ` JensEmil.SchulzOstergaard
2026-08-17 14:18 ` Jens Emil Schulz Ostergaard
2026-08-05 14:34 ` [PATCH net-next v11 2/9] dt-bindings: net: lan9645x: add LAN9645X switch bindings Jens Emil Schulz Østergaard
2026-08-06 14:38 ` sashiko-bot
2026-08-07 14:15 ` JensEmil.SchulzOstergaard
2026-08-17 14:21 ` Jens Emil Schulz Ostergaard
2026-08-05 14:34 ` [PATCH net-next v11 3/9] net: dsa: lan9645x: add autogenerated register macros Jens Emil Schulz Østergaard
2026-08-05 14:34 ` [PATCH net-next v11 4/9] net: dsa: lan9645x: add basic dsa driver for LAN9645X Jens Emil Schulz Østergaard
2026-08-06 14:38 ` sashiko-bot
2026-08-07 14:07 ` JensEmil.SchulzOstergaard
2026-08-17 14:25 ` Jens Emil Schulz Ostergaard
2026-08-05 14:34 ` [PATCH net-next v11 5/9] net: dsa: lan9645x: add bridge support Jens Emil Schulz Østergaard
2026-08-06 14:38 ` sashiko-bot
2026-08-07 13:44 ` JensEmil.SchulzOstergaard
2026-08-17 14:31 ` Jens Emil Schulz Ostergaard
2026-08-05 14:34 ` [PATCH net-next v11 6/9] net: dsa: lan9645x: add vlan support Jens Emil Schulz Østergaard
2026-08-06 14:38 ` sashiko-bot
2026-08-07 13:40 ` JensEmil.SchulzOstergaard
2026-08-11 10:32 ` Paolo Abeni
2026-08-11 12:12 ` Jens Emil Schulz Ostergaard
2026-08-05 14:34 ` [PATCH net-next v11 7/9] net: dsa: lan9645x: add mac table integration Jens Emil Schulz Østergaard
2026-08-19 13:16 ` Jens Emil Schulz Ostergaard
2026-08-05 14:34 ` [PATCH net-next v11 8/9] net: dsa: lan9645x: add mdb management Jens Emil Schulz Østergaard
2026-08-06 14:38 ` sashiko-bot
2026-08-07 13:22 ` JensEmil.SchulzOstergaard
2026-08-19 13:22 ` Jens Emil Schulz Ostergaard
2026-08-05 14:34 ` [PATCH net-next v11 9/9] net: dsa: lan9645x: add port statistics Jens Emil Schulz Østergaard
2026-08-19 13:25 ` Jens Emil Schulz Ostergaard
2026-08-11 10:35 ` [PATCH net-next v11 0/9] net: dsa: add DSA support for the LAN9645x switch chip family Paolo Abeni
2026-08-11 10:36 ` Paolo Abeni [this message]
2026-08-11 12:18 ` Jens Emil Schulz Ostergaard
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=2699d4d2-fb2e-4f87-9a41-88627f16fb78@redhat.com \
--to=pabeni@redhat.com \
--cc=Steen.Hegelund@microchip.com \
--cc=UNGLinuxDriver@microchip.com \
--cc=andrew@lunn.ch \
--cc=conor+dt@kernel.org \
--cc=daniel.machon@microchip.com \
--cc=davem@davemloft.net \
--cc=devicetree@vger.kernel.org \
--cc=edumazet@google.com \
--cc=horms@kernel.org \
--cc=jensemil.schulzostergaard@microchip.com \
--cc=krzk+dt@kernel.org \
--cc=kuba@kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux@armlinux.org.uk \
--cc=netdev@vger.kernel.org \
--cc=olteanv@gmail.com \
--cc=robh@kernel.org \
--cc=woojung.huh@microchip.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