aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorFelix Fietkau <nbd@openwrt.org>2014-10-02 20:00:41 +0000
committerFelix Fietkau <nbd@openwrt.org>2014-10-02 20:00:41 +0000
commit5612af273e920f4818bb104f4178505b82ad945f (patch)
tree06d70875a60626eac4f81f1ce0163e4f7234eb71
parentc42e8fe0ab0b1849899dcb6dfd242fa18b9c9427 (diff)
downloadmaster-187ad058-5612af273e920f4818bb104f4178505b82ad945f.tar.gz
master-187ad058-5612af273e920f4818bb104f4178505b82ad945f.tar.bz2
master-187ad058-5612af273e920f4818bb104f4178505b82ad945f.zip
ar8216: set the pvid based on runtime state instead of port number to fix learning with enable_vlan = 0
Signed-off-by: Felix Fietkau <nbd@openwrt.org> git-svn-id: svn://svn.openwrt.org/openwrt/trunk@42753 3c298f89-4303-0410-b956-a3cf2f4a3e73
-rw-r--r--target/linux/generic/files/drivers/net/phy/ar8216.c4
1 files changed, 1 insertions, 3 deletions
diff --git a/target/linux/generic/files/drivers/net/phy/ar8216.c b/target/linux/generic/files/drivers/net/phy/ar8216.c
index bd6cc97d55..c7adc3d893 100644
--- a/target/linux/generic/files/drivers/net/phy/ar8216.c
+++ b/target/linux/generic/files/drivers/net/phy/ar8216.c
@@ -1763,14 +1763,12 @@ ar8327_setup_port(struct ar8xxx_priv *priv, int port, u32 members)
{
u32 t;
u32 egress, ingress;
- u32 pvid;
+ u32 pvid = priv->vlan_id[priv->pvid[port]];
if (priv->vlan) {
- pvid = priv->vlan_id[priv->pvid[port]];
egress = AR8327_PORT_VLAN1_OUT_MODE_UNMOD;
ingress = AR8216_IN_SECURE;
} else {
- pvid = port;
egress = AR8327_PORT_VLAN1_OUT_MODE_UNTOUCH;
ingress = AR8216_IN_PORT_ONLY;
}