Re: [PATCH] net: dsa: tag_brcm: legacy: fix daisy-chained switches

From: Florian Fainelli
Date: Fri Mar 17 2023 - 12:36:58 EST


On 3/17/23 09:32, Andrew Lunn wrote:
On Fri, Mar 17, 2023 at 01:08:15PM +0100, Álvaro Fernández Rojas wrote:
When BCM63xx internal switches are connected to switches with a 4-byte
Broadcom tag, it does not identify the packet as VLAN tagged, so it adds one
based on its PVID (which is likely 0).
Right now, the packet is received by the BCM63xx internal switch and the 6-byte
tag is properly processed. The next step would to decode the corresponding
4-byte tag. However, the internal switch adds an invalid VLAN tag after the
6-byte tag and the 4-byte tag handling fails.
In order to fix this we need to remove the invalid VLAN tag after the 6-byte
tag before passing it to the 4-byte tag decoding.

Is there an errata for this invalid VLAN tag? Or is the driver simply
missing some configuration for it to produce a valid VLAN tag?

The description does not convince me you are fixing the correct
problem.

I do not think this is going to work, except in the very narrow configuration that it has been tested with. If you configure VLANs on the BCM63xx internal switch, this will be stripping of any VLAN tag, thus breaking the data path.

It is not clear to me how to best resolve this, short of trying to coerce the BCM63xx internal switch into *not* tagging all ingress frames by default.
--
Florian