From: Vladimir Oltean <olte...@gmail.com>
Date: Wed, 27 May 2020 20:20:38 +0300

> From: Vladimir Oltean <vladimir.olt...@nxp.com>
> 
> Be there 2 switches spi/spi2.0 and spi/spi2.1 in a cross-chip setup,
> both under the same VLAN-filtering bridge, both in the
> SJA1105_VLAN_BEST_EFFORT state.
> 
> If we try to change the VLAN state of one of the switches (to
> SJA1105_VLAN_FILTERING_FULL) we get the following error:
> 
> devlink dev param set spi/spi2.1 name best_effort_vlan_filtering value
> false cmode runtime
> [   38.325683] sja1105 spi2.1: Not allowed to overcommit frame memory.
>                L2 memory partitions and VL memory partitions share the
>                same space. The sum of all 16 memory partitions is not
>                allowed to be larger than 929 128-byte blocks (or 910
>                with retagging). Please adjust
>                l2-forwarding-parameters-table.part_spc and/or
>                vl-forwarding-parameters-table.partspc.
> [   38.356803] sja1105 spi2.1: Invalid config, cannot upload
> 
> This is because the spi/spi2.1 switch doesn't support tagging anymore in
> the SJA1105_VLAN_FILTERING_FULL state, so it doesn't need to have any
> retagging rules defined. Great, so it can use more frame memory
> (retagging consumes extra memory).
> 
> But the built-in low-level static config checker from the sja1105 driver
> says "not so fast, you've increased the frame memory to non-retagging
> values, but you still kept the retagging rules in the static config".
> 
> So we need to rebuild the VLAN table immediately before re-uploading the
> static config, operation which will take care, based on the new VLAN
> state, of removing the retagging rules.
> 
> Fixes: 3f01c91aab92 ("net: dsa: sja1105: implement VLAN retagging for 
> dsa_8021q sub-VLANs")
> Signed-off-by: Vladimir Oltean <vladimir.olt...@nxp.com>

Applied, thanks.

Reply via email to