]> git.baikalelectronics.ru Git - kernel.git/commit
net: dsa: mt7530: set CPU port to fallback mode
authorDENG Qingfang <dqfext@gmail.com>
Wed, 13 May 2020 15:37:17 +0000 (23:37 +0800)
committerDavid S. Miller <davem@davemloft.net>
Wed, 13 May 2020 22:24:35 +0000 (15:24 -0700)
commit03ec00f4d4d6b46784665f884e2361c27cf0a187
tree15062f569cb58616be8312d3e57f0e81fe2d33f7
parentb5d55956f10a505b9398c511cf3aafd96fe712b2
net: dsa: mt7530: set CPU port to fallback mode

Currently, setting a bridge's self PVID to other value and deleting
the default VID 1 renders untagged ports of that VLAN unable to talk to
the CPU port:

bridge vlan add dev br0 vid 2 pvid untagged self
bridge vlan del dev br0 vid 1 self
bridge vlan add dev sw0p0 vid 2 pvid untagged
bridge vlan del dev sw0p0 vid 1
# br0 cannot send untagged frames out of sw0p0 anymore

That is because the CPU port is set to security mode and its PVID is
still 1, and untagged frames are dropped due to VLAN member violation.

Set the CPU port to fallback mode so untagged frames can pass through.

Fixes: 2d5d4391d6ef ("net: dsa: mediatek: add VLAN support for MT7530")
Signed-off-by: DENG Qingfang <dqfext@gmail.com>
Reviewed-by: Florian Fainelli <f.fainelli@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/dsa/mt7530.c
drivers/net/dsa/mt7530.h