diff --git a/target/linux/ar71xx/files/drivers/net/phy/rtl8366_smi.c b/target/linux/ar71xx/files/drivers/net/phy/rtl8366_smi.c
index a79de4e6bc1d14bd587d9b7ecc7c872510e56ed4..6e890b451c0cd6c22fdbc4501f52c87ed7b1d297 100644
--- a/target/linux/ar71xx/files/drivers/net/phy/rtl8366_smi.c
+++ b/target/linux/ar71xx/files/drivers/net/phy/rtl8366_smi.c
@@ -941,12 +941,12 @@ static int rtl8366s_reset_vlan(struct rtl8366_smi *smi)
 	struct rtl8366s_vlanconfig vlanmc;
 
 	/* clear 16 VLAN member configuration */
+	vlanmc.vid = 0;
+	vlanmc.priority = 0;
+	vlanmc.member = 0;
+	vlanmc.untag = 0;
+	vlanmc.fid = 0;
 	for (i = 0; i < RTL8366_NUM_VLANS; i++) {
-		vlanmc.vid = 0;
-		vlanmc.priority = 0;
-		vlanmc.member = 0;
-		vlanmc.untag = 0;
-		vlanmc.fid = 0;
 		if (rtl8366s_set_vlan_member_config(smi, i, &vlanmc) != 0)
 			return -EIO;
 	}