summaryrefslogtreecommitdiffstats
path: root/target/linux
diff options
context:
space:
mode:
authornbd <nbd@3c298f89-4303-0410-b956-a3cf2f4a3e73>2011-11-08 00:33:15 +0000
committernbd <nbd@3c298f89-4303-0410-b956-a3cf2f4a3e73>2011-11-08 00:33:15 +0000
commit4677737b0a940c4be5edc717c9ce5085e4101f24 (patch)
tree8d2fbc2f6a707276957d2d10ca6c9c109a93629d /target/linux
parentb76b60fcda8baa8032d07ab515f3c9a1477326b2 (diff)
ar71xx: on ar7240, exclude ports from their own port vlan destination mask
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@28850 3c298f89-4303-0410-b956-a3cf2f4a3e73
Diffstat (limited to 'target/linux')
-rw-r--r--target/linux/ar71xx/files/drivers/net/ag71xx/ag71xx_ar7240.c3
1 files changed, 1 insertions, 2 deletions
diff --git a/target/linux/ar71xx/files/drivers/net/ag71xx/ag71xx_ar7240.c b/target/linux/ar71xx/files/drivers/net/ag71xx/ag71xx_ar7240.c
index 534af4b9f..5e02303cb 100644
--- a/target/linux/ar71xx/files/drivers/net/ag71xx/ag71xx_ar7240.c
+++ b/target/linux/ar71xx/files/drivers/net/ag71xx/ag71xx_ar7240.c
@@ -477,7 +477,6 @@ static void ar7240sw_setup_port(struct ar7240sw *as, unsigned port, u8 portmask)
{
struct mii_bus *mii = as->mii_bus;
u32 ctrl;
- u32 dest_ports;
u32 vlan;
ctrl = AR7240_PORT_CTRL_STATE_FORWARD | AR7240_PORT_CTRL_LEARN |
@@ -525,7 +524,7 @@ static void ar7240sw_setup_port(struct ar7240sw *as, unsigned port, u8 portmask)
/* allow the port to talk to all other ports, but exclude its
* own ID to prevent frames from being reflected back to the
* port that they came from */
- dest_ports = AR7240_PORT_MASK_BUT(port);
+ portmask &= AR7240_PORT_MASK_BUT(port);
/* set default VID and and destination ports for this VLAN */
vlan |= (portmask << AR7240_PORT_VLAN_DEST_PORTS_S);