+++ /dev/null
-From 430065e2671905ac675f97b7af240cc255964e93 Mon Sep 17 00:00:00 2001
-From: Mans Rullgard <mans@mansr.com>
-Date: Wed, 16 Feb 2022 20:48:18 +0000
-Subject: net: dsa: lan9303: add VLAN IDs to master device
-
-From: Mans Rullgard <mans@mansr.com>
-
-commit 430065e2671905ac675f97b7af240cc255964e93 upstream.
-
-If the master device does VLAN filtering, the IDs used by the switch
-must be added for any frames to be received. Do this in the
-port_enable() function, and remove them in port_disable().
-
-Fixes: a1292595e006 ("net: dsa: add new DSA switch driver for the SMSC-LAN9303")
-Signed-off-by: Mans Rullgard <mans@mansr.com>
-Reviewed-by: Florian Fainelli <f.fainelli@gmail.com>
-Reviewed-by: Vladimir Oltean <olteanv@gmail.com>
-Link: https://lore.kernel.org/r/20220216204818.28746-1-mans@mansr.com
-Signed-off-by: Jakub Kicinski <kuba@kernel.org>
-Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
----
- drivers/net/dsa/Kconfig | 1 +
- drivers/net/dsa/lan9303-core.c | 11 +++++++++--
- 2 files changed, 10 insertions(+), 2 deletions(-)
-
---- a/drivers/net/dsa/Kconfig
-+++ b/drivers/net/dsa/Kconfig
-@@ -82,6 +82,7 @@ config NET_DSA_REALTEK_SMI
-
- config NET_DSA_SMSC_LAN9303
- tristate
-+ depends on VLAN_8021Q || VLAN_8021Q=n
- select NET_DSA_TAG_LAN9303
- select REGMAP
- help
---- a/drivers/net/dsa/lan9303-core.c
-+++ b/drivers/net/dsa/lan9303-core.c
-@@ -10,6 +10,7 @@
- #include <linux/mii.h>
- #include <linux/phy.h>
- #include <linux/if_bridge.h>
-+#include <linux/if_vlan.h>
- #include <linux/etherdevice.h>
-
- #include "lan9303.h"
-@@ -1083,21 +1084,27 @@ static void lan9303_adjust_link(struct d
- static int lan9303_port_enable(struct dsa_switch *ds, int port,
- struct phy_device *phy)
- {
-+ struct dsa_port *dp = dsa_to_port(ds, port);
- struct lan9303 *chip = ds->priv;
-
-- if (!dsa_is_user_port(ds, port))
-+ if (!dsa_port_is_user(dp))
- return 0;
-
-+ vlan_vid_add(dp->cpu_dp->master, htons(ETH_P_8021Q), port);
-+
- return lan9303_enable_processing_port(chip, port);
- }
-
- static void lan9303_port_disable(struct dsa_switch *ds, int port)
- {
-+ struct dsa_port *dp = dsa_to_port(ds, port);
- struct lan9303 *chip = ds->priv;
-
-- if (!dsa_is_user_port(ds, port))
-+ if (!dsa_port_is_user(dp))
- return;
-
-+ vlan_vid_del(dp->cpu_dp->master, htons(ETH_P_8021Q), port);
-+
- lan9303_disable_processing_port(chip, port);
- lan9303_phy_write(ds, chip->phy_addr_base + port, MII_BMCR, BMCR_PDOWN);
- }
ipv6-per-netns-exclusive-flowlabel-checks.patch
net-dsa-lan9303-fix-reset-on-probe.patch
net-dsa-lantiq_gswip-fix-use-after-free-in-gswip_remove.patch
-net-dsa-lan9303-add-vlan-ids-to-master-device.patch
net-ieee802154-ca8210-fix-lifs-sifs-periods.patch
ping-fix-the-dif-and-sdif-check-in-ping_lookup.patch
bonding-force-carrier-update-when-releasing-slave.patch
+++ /dev/null
-From 430065e2671905ac675f97b7af240cc255964e93 Mon Sep 17 00:00:00 2001
-From: Mans Rullgard <mans@mansr.com>
-Date: Wed, 16 Feb 2022 20:48:18 +0000
-Subject: net: dsa: lan9303: add VLAN IDs to master device
-
-From: Mans Rullgard <mans@mansr.com>
-
-commit 430065e2671905ac675f97b7af240cc255964e93 upstream.
-
-If the master device does VLAN filtering, the IDs used by the switch
-must be added for any frames to be received. Do this in the
-port_enable() function, and remove them in port_disable().
-
-Fixes: a1292595e006 ("net: dsa: add new DSA switch driver for the SMSC-LAN9303")
-Signed-off-by: Mans Rullgard <mans@mansr.com>
-Reviewed-by: Florian Fainelli <f.fainelli@gmail.com>
-Reviewed-by: Vladimir Oltean <olteanv@gmail.com>
-Link: https://lore.kernel.org/r/20220216204818.28746-1-mans@mansr.com
-Signed-off-by: Jakub Kicinski <kuba@kernel.org>
-Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
----
- drivers/net/dsa/Kconfig | 1 +
- drivers/net/dsa/lan9303-core.c | 11 +++++++++--
- 2 files changed, 10 insertions(+), 2 deletions(-)
-
---- a/drivers/net/dsa/Kconfig
-+++ b/drivers/net/dsa/Kconfig
-@@ -76,6 +76,7 @@ config NET_DSA_REALTEK_SMI
-
- config NET_DSA_SMSC_LAN9303
- tristate
-+ depends on VLAN_8021Q || VLAN_8021Q=n
- select NET_DSA_TAG_LAN9303
- select REGMAP
- ---help---
---- a/drivers/net/dsa/lan9303-core.c
-+++ b/drivers/net/dsa/lan9303-core.c
-@@ -10,6 +10,7 @@
- #include <linux/mii.h>
- #include <linux/phy.h>
- #include <linux/if_bridge.h>
-+#include <linux/if_vlan.h>
- #include <linux/etherdevice.h>
-
- #include "lan9303.h"
-@@ -1083,21 +1084,27 @@ static void lan9303_adjust_link(struct d
- static int lan9303_port_enable(struct dsa_switch *ds, int port,
- struct phy_device *phy)
- {
-+ struct dsa_port *dp = dsa_to_port(ds, port);
- struct lan9303 *chip = ds->priv;
-
-- if (!dsa_is_user_port(ds, port))
-+ if (!dsa_port_is_user(dp))
- return 0;
-
-+ vlan_vid_add(dp->cpu_dp->master, htons(ETH_P_8021Q), port);
-+
- return lan9303_enable_processing_port(chip, port);
- }
-
- static void lan9303_port_disable(struct dsa_switch *ds, int port)
- {
-+ struct dsa_port *dp = dsa_to_port(ds, port);
- struct lan9303 *chip = ds->priv;
-
-- if (!dsa_is_user_port(ds, port))
-+ if (!dsa_port_is_user(dp))
- return;
-
-+ vlan_vid_del(dp->cpu_dp->master, htons(ETH_P_8021Q), port);
-+
- lan9303_disable_processing_port(chip, port);
- lan9303_phy_write(ds, chip->phy_addr_base + port, MII_BMCR, BMCR_PDOWN);
- }
iwlwifi-pcie-gen2-fix-locking-when-hw-not-ready.patch
netfilter-nft_synproxy-unregister-hooks-on-init-error-path.patch
net-dsa-lan9303-fix-reset-on-probe.patch
-net-dsa-lan9303-add-vlan-ids-to-master-device.patch
net-ieee802154-ca8210-fix-lifs-sifs-periods.patch
ping-fix-the-dif-and-sdif-check-in-ping_lookup.patch
bonding-force-carrier-update-when-releasing-slave.patch