From: Felix Fietkau Date: Tue, 8 Nov 2011 00:34:11 +0000 (+0000) Subject: ar71xx: on ar7240, exclude ports from their own port vlan destination mask (backport... X-Git-Url: http://git.openwrt.org/?p=openwrt%2Fsvn-archive%2Farchive.git;a=commitdiff_plain;h=4dfb3a226ade75367c9f8636e7c25008c22c1790 ar71xx: on ar7240, exclude ports from their own port vlan destination mask (backport of r28850) SVN-Revision: 28852 --- 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 534af4b9f9..5e02303cbc 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);