Netdev List
 help / color / mirror / Atom feed
From: Florian Fainelli <florian.fainelli@broadcom.com>
To: Jonas Gorski <jonas.gorski@gmail.com>,
	Vladimir Oltean <olteanv@gmail.com>
Cc: Semih Baskan <strst.gs@gmail.com>,
	andrew@lunn.ch, davem@davemloft.net, edumazet@google.com,
	kuba@kernel.org, pabeni@redhat.com, vladimir.oltean@nxp.com,
	netdev@vger.kernel.org, linux-kernel@vger.kernel.org
Subject: Re: [PATCH net] net: dsa: b53: be VLAN unaware when not filtering
Date: Tue, 11 Aug 2026 09:13:28 -0700	[thread overview]
Message-ID: <b5bfe3c3-317a-47a8-9cdf-8b9535b6348c@broadcom.com> (raw)
In-Reply-To: <CAOiHx==noeBoE97kgrUm_-HkRNBpEuUVs49r5uFTiUSxWVdL_w@mail.gmail.com>

On 8/11/26 01:06, Jonas Gorski wrote:
> On Mon, Aug 10, 2026 at 2:04 PM Vladimir Oltean <olteanv@gmail.com> wrote:
>>
>> On Thu, Aug 06, 2026 at 01:09:03PM +0200, Jonas Gorski wrote:
>>>> static int b53_arl_rw_op(struct b53_device *dev, unsigned int op)
>>>> {
>>>>          u8 reg;
>>>>
>>>>          if (op > ARLTBL_RW)
>>>>                  return -EINVAL;
>>>>
>>>>          b53_read8(dev, B53_ARLIO_PAGE, B53_ARLTBL_RW_CTRL, &reg);
>>>>          reg |= ARLTBL_START_DONE;
>>>>          if (op)
>>>>                  reg |= ARLTBL_RW;
>>>>          else
>>>>                  reg &= ~ARLTBL_RW;
>>>>          if (dev->vlan_enabled)
>>>>                  reg &= ~ARLTBL_IVL_SVL_SELECT;
>>>>          else
>>>>                  reg |= ARLTBL_IVL_SVL_SELECT;
>>>
>>> This ARLTBL_IVL_SVL_SELECT bit is only implemented for a small subset
>>> of switches (bcm5302x / bcm58* and bcm53134). Additionally, according
>>> to the register description, this also requires enabling "per port
>>> IVL/SVL" mode, which is not enable by b53. The description of that
>>> also says that the VIDs used in SVL ports must not be used in IVL
>>> ports. No idea what the consequences are if they do.
>>
>> What does enabling per port IVL/SVL mode do?
> 
> I don't have access to a datasheet or a device to test, Florian will
> need to answer that completely.

Not a whole lot of details in the datasheet, but essentially what is 
being provided is:

IVL: a given MAC address can only appear in one VLAN
SVL: a given MAC address can appear on different ports as long as the 
ports are not in the same VLAN.

> 
> I can only guess from the register descriptions, which imply that
> enabling SVL for port makes any ARL lookups SVL based, i.e. VID is
> ignored/forced to 0. Presumably this essentially only applies to for
> frames received on that port for lookup / learning.
> 
> There is a global option for configuring IVL or SVL, but this option
> is only valid when VLAN-aware is enabled in the switch. Without it,
> learning is always SVL.
> 
> I do not know how the per port IVL/SVL actually register works, and
> whether you can enable IVL in VLAN-unaware mode (I would guess not).

IVL/SVL applies to 802.1Q (VLAN enabled) mode, double tagging mode and 
individual double tagging mode, so yes this depends on VLAN being 
enabled globally.

> 
> Note that there is no differentiation in ARL entries themselves
> whether they are IVL or SVL entries, only the table index calculation
> changes.
> 
> Best regards,
> Jonas


-- 
Florian

      reply	other threads:[~2026-08-11 16:13 UTC|newest]

Thread overview: 9+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2026-08-05  7:26 [PATCH net] net: dsa: b53: be VLAN unaware when not filtering Semih Baskan
2026-08-05  7:44 ` Jonas Gorski
2026-08-05  9:50   ` Semih Baskan
2026-08-06 10:23   ` Vladimir Oltean
2026-08-06 11:08     ` Semih Baskan
2026-08-06 11:09     ` Jonas Gorski
2026-08-10 12:04       ` Vladimir Oltean
2026-08-11  8:06         ` Jonas Gorski
2026-08-11 16:13           ` Florian Fainelli [this message]

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=b5bfe3c3-317a-47a8-9cdf-8b9535b6348c@broadcom.com \
    --to=florian.fainelli@broadcom.com \
    --cc=andrew@lunn.ch \
    --cc=davem@davemloft.net \
    --cc=edumazet@google.com \
    --cc=jonas.gorski@gmail.com \
    --cc=kuba@kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=netdev@vger.kernel.org \
    --cc=olteanv@gmail.com \
    --cc=pabeni@redhat.com \
    --cc=strst.gs@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