From 156b296b20f64d2a03bda8c74ac1d243efe9c9a7 Mon Sep 17 00:00:00 2001
From: Felix Fietkau <nbd@openwrt.org>
Date: Thu, 2 Oct 2014 20:00:41 +0000
Subject: [PATCH] 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>

SVN-Revision: 42753
---
 target/linux/generic/files/drivers/net/phy/ar8216.c | 4 +---
 1 file changed, 1 insertion(+), 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;
 	}
-- 
2.30.2