Commit 46c5176c authored by Álvaro Fernández Rojas's avatar Álvaro Fernández Rojas Committed by David S. Miller
Browse files

net: dsa: b53: support legacy tags



These tags are used on BCM5325, BCM5365 and BCM63xx switches.

Signed-off-by: default avatarÁlvaro Fernández Rojas <noltari@gmail.com>
Acked-by: default avatarFlorian Fainelli <f.fainelli@gmail.com>
Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
parent 964dbf18
Loading
Loading
Loading
Loading
+1 −0
Original line number Diff line number Diff line
@@ -3,6 +3,7 @@ menuconfig B53
	tristate "Broadcom BCM53xx managed switch support"
	depends on NET_DSA
	select NET_DSA_TAG_BRCM
	select NET_DSA_TAG_BRCM_LEGACY
	select NET_DSA_TAG_BRCM_PREPEND
	help
	  This driver adds support for Broadcom managed switch chips. It supports
+7 −5
Original line number Diff line number Diff line
@@ -2055,15 +2055,17 @@ enum dsa_tag_protocol b53_get_tag_protocol(struct dsa_switch *ds, int port,
{
	struct b53_device *dev = ds->priv;

	/* Older models (5325, 5365) support a different tag format that we do
	 * not support in net/dsa/tag_brcm.c yet.
	 */
	if (is5325(dev) || is5365(dev) ||
	    !b53_can_enable_brcm_tags(ds, port, mprot)) {
	if (!b53_can_enable_brcm_tags(ds, port, mprot)) {
		dev->tag_protocol = DSA_TAG_PROTO_NONE;
		goto out;
	}

	/* Older models require a different 6 byte tag */
	if (is5325(dev) || is5365(dev) || is63xx(dev)) {
		dev->tag_protocol = DSA_TAG_PROTO_BRCM_LEGACY;
		goto out;
	}

	/* Broadcom BCM58xx chips have a flow accelerator on Port 8
	 * which requires us to use the prepended Broadcom tag type
	 */