summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authornbd <nbd@3c298f89-4303-0410-b956-a3cf2f4a3e73>2011-04-15 00:20:59 +0000
committernbd <nbd@3c298f89-4303-0410-b956-a3cf2f4a3e73>2011-04-15 00:20:59 +0000
commit18020f432db832a2a4f55238679e2c87ec5658d5 (patch)
tree5f725e96e482cb7f7499b6dd508cbd8c6c7d4f5a
parente54866b2fb41cf44be379b45830123ae27dc28bb (diff)
adm5120: fix promiscuous mode handling (patch from #8581)
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@26673 3c298f89-4303-0410-b956-a3cf2f4a3e73
-rw-r--r--target/linux/adm5120/files/drivers/net/adm5120sw.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/target/linux/adm5120/files/drivers/net/adm5120sw.c b/target/linux/adm5120/files/drivers/net/adm5120sw.c
index 09cb9097e..9adbf6cbe 100644
--- a/target/linux/adm5120/files/drivers/net/adm5120sw.c
+++ b/target/linux/adm5120/files/drivers/net/adm5120sw.c
@@ -962,10 +962,10 @@ static void adm5120_if_set_multicast_list(struct net_device *dev)
/* to the CPU, the Bridge Test Mode has to be activated. */
/* Check if there is any vlan in promisc mode. */
- if (t & (SWITCH_PORTS_NOCPU << CPUP_CONF_DUNP_SHIFT))
- t &= ~CPUP_CONF_BTM; /* Disable Bridge Testing Mode */
- else
+ if (~t & (SWITCH_PORTS_NOCPU << CPUP_CONF_DUNP_SHIFT))
t |= CPUP_CONF_BTM; /* Enable Bridge Testing Mode */
+ else
+ t &= ~CPUP_CONF_BTM; /* Disable Bridge Testing Mode */
sw_write_reg(SWITCH_REG_CPUP_CONF, t);