From: Horatiu Vultur <horatiu.vultur@microchip.com>
To: <netdev@vger.kernel.org>, <devicetree@vger.kernel.org>,
<linux-kernel@vger.kernel.org>
Cc: <davem@davemloft.net>, <kuba@kernel.org>, <robh+dt@kernel.org>,
<UNGLinuxDriver@microchip.com>, <linux@armlinux.org.uk>,
<f.fainelli@gmail.com>, <vivien.didelot@gmail.com>,
<vladimir.oltean@nxp.com>, <andrew@lunn.ch>,
Horatiu Vultur <horatiu.vultur@microchip.com>
Subject: [PATCH net-next v5 0/9] net: lan966x: Add switchdev and vlan support
Date: Wed, 15 Dec 2021 13:13:00 +0100 [thread overview]
Message-ID: <20211215121309.3669119-1-horatiu.vultur@microchip.com> (raw)
This patch series extends lan966x with switchdev and vlan support.
The first patches just adds new registers and extend the MAC table to
handle the interrupts when a new address is learn/forget.
v4->v5:
- make the notifier_block from lan966x to be singletones
- use switchdev_handle_port_obj_add and switchdev_handle_fdb_event_to_device
when getting callbacks in the lan966x
- merge the two vlan patches in a single one
v3->v4:
- split the last patch in multiple patches
- replace spin_lock_irqsave/restore with spin_lock/spin_unlock
- remove lan966x_port_change_rx_flags because it was copying all the frames to
the CPU instead of removing all RX filters.
- implement SWITCHDEV_ATTR_ID_PORT_PRE_BRIDGE_FLAGS
- remove calls to __dev_mc_unsync/sync as they are not needed
- replace 0/1 with false/true
- make sure that the lan966x ports are not added to bridges that have other
interfaces except lan966x
- and allow the lan966x ports to be part of only the same bridge.
v2->v3:
- separate the PVID used when the port is in host mode or vlan unaware
- fix issue when the port was leaving the bridge
v1->v2:
- when allocating entries for the mac table use kzalloc instead of
devm_kzalloc
- also use GFP_KERNEL instead of GFP_ATOMIC, because is never called
in atomic context
- when deleting an mac table entry, the order of operations was wrong
- if ana irq is enabled make sure it gets disabled when the driver is
removed
Horatiu Vultur (9):
net: lan966x: Add registers that are used for switch and vlan
functionality
dt-bindings: net: lan966x: Extend with the analyzer interrupt
net: lan966x: add support for interrupts from analyzer
net: lan966x: More MAC table functionality
net: lan966x: Remove .ndo_change_rx_flags
net: lan966x: Add support to offload the forwarding.
net: lan966x: Add vlan support.
net: lan966x: Extend switchdev bridge flags
net: lan966x: Extend switchdev with fdb support
.../net/microchip,lan966x-switch.yaml | 2 +
.../net/ethernet/microchip/lan966x/Kconfig | 1 +
.../net/ethernet/microchip/lan966x/Makefile | 3 +-
.../ethernet/microchip/lan966x/lan966x_fdb.c | 246 ++++++++
.../ethernet/microchip/lan966x/lan966x_mac.c | 342 +++++++++++
.../ethernet/microchip/lan966x/lan966x_main.c | 109 +++-
.../ethernet/microchip/lan966x/lan966x_main.h | 80 ++-
.../ethernet/microchip/lan966x/lan966x_regs.h | 129 ++++
.../microchip/lan966x/lan966x_switchdev.c | 557 ++++++++++++++++++
.../ethernet/microchip/lan966x/lan966x_vlan.c | 448 ++++++++++++++
10 files changed, 1886 insertions(+), 31 deletions(-)
create mode 100644 drivers/net/ethernet/microchip/lan966x/lan966x_fdb.c
create mode 100644 drivers/net/ethernet/microchip/lan966x/lan966x_switchdev.c
create mode 100644 drivers/net/ethernet/microchip/lan966x/lan966x_vlan.c
--
2.33.0
next reply other threads:[~2021-12-15 12:12 UTC|newest]
Thread overview: 14+ messages / expand[flat|nested] mbox.gz Atom feed top
2021-12-15 12:13 Horatiu Vultur [this message]
2021-12-15 12:13 ` [PATCH net-next v5 1/9] net: lan966x: Add registers that are used for switch and vlan functionality Horatiu Vultur
2021-12-15 12:13 ` [PATCH net-next v5 2/9] dt-bindings: net: lan966x: Extend with the analyzer interrupt Horatiu Vultur
2021-12-15 12:13 ` [PATCH net-next v5 3/9] net: lan966x: add support for interrupts from analyzer Horatiu Vultur
2021-12-15 12:13 ` [PATCH net-next v5 4/9] net: lan966x: More MAC table functionality Horatiu Vultur
2021-12-15 12:13 ` [PATCH net-next v5 5/9] net: lan966x: Remove .ndo_change_rx_flags Horatiu Vultur
2021-12-15 12:13 ` [PATCH net-next v5 6/9] net: lan966x: Add support to offload the forwarding Horatiu Vultur
2021-12-15 23:50 ` Vladimir Oltean
2021-12-16 14:34 ` Horatiu Vultur
2021-12-15 12:13 ` [PATCH net-next v5 7/9] net: lan966x: Add vlan support Horatiu Vultur
2021-12-16 0:44 ` Vladimir Oltean
2021-12-17 11:38 ` Horatiu Vultur
2021-12-15 12:13 ` [PATCH net-next v5 8/9] net: lan966x: Extend switchdev bridge flags Horatiu Vultur
2021-12-15 12:13 ` [PATCH net-next v5 9/9] net: lan966x: Extend switchdev with fdb support Horatiu Vultur
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=20211215121309.3669119-1-horatiu.vultur@microchip.com \
--to=horatiu.vultur@microchip.com \
--cc=UNGLinuxDriver@microchip.com \
--cc=andrew@lunn.ch \
--cc=davem@davemloft.net \
--cc=devicetree@vger.kernel.org \
--cc=f.fainelli@gmail.com \
--cc=kuba@kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux@armlinux.org.uk \
--cc=netdev@vger.kernel.org \
--cc=robh+dt@kernel.org \
--cc=vivien.didelot@gmail.com \
--cc=vladimir.oltean@nxp.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