diff options
author | Gabor Juhos <juhosg@openwrt.org> | 2010-07-02 09:55:57 +0000 |
---|---|---|
committer | Gabor Juhos <juhosg@openwrt.org> | 2010-07-02 09:55:57 +0000 |
commit | d4a858f5a66cc66ab268139f4f2eb24011c77210 (patch) | |
tree | f84b75bd7e2bfb705dc66e0b77ed371e0b450009 /target/linux/generic/files/drivers/net/phy/rtl8366s.c | |
parent | b81b30cef718ce12ae193b0cf7b33ebfddb23e0d (diff) | |
download | upstream-d4a858f5a66cc66ab268139f4f2eb24011c77210.tar.gz upstream-d4a858f5a66cc66ab268139f4f2eb24011c77210.tar.bz2 upstream-d4a858f5a66cc66ab268139f4f2eb24011c77210.zip |
generic: rtl8366: enable VLAN ingress filtering
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@22044 3c298f89-4303-0410-b956-a3cf2f4a3e73
Diffstat (limited to 'target/linux/generic/files/drivers/net/phy/rtl8366s.c')
-rw-r--r-- | target/linux/generic/files/drivers/net/phy/rtl8366s.c | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/target/linux/generic/files/drivers/net/phy/rtl8366s.c b/target/linux/generic/files/drivers/net/phy/rtl8366s.c index 91030ac48e..45da8fd8e5 100644 --- a/target/linux/generic/files/drivers/net/phy/rtl8366s.c +++ b/target/linux/generic/files/drivers/net/phy/rtl8366s.c @@ -112,6 +112,7 @@ #define RTL8366S_VLAN_MEMCONF_BASE 0x0016 +#define RTL8366S_VLAN_MEMBERINGRESS_REG 0x0379 #define RTL8366S_PORT_LINK_STATUS_BASE 0x0060 #define RTL8366S_PORT_STATUS_SPEED_MASK 0x0003 @@ -299,6 +300,12 @@ static int rtl8366s_hw_init(struct rtl8366_smi *smi) /* disable auto ageing for all ports */ REG_WR(smi, RTL8366S_SSCR1, RTL8366S_PORT_ALL); + /* + * discard VLAN tagged packets if the port is not a member of + * the VLAN with which the packets is associated. + */ + REG_WR(smi, RTL8366S_VLAN_MEMBERINGRESS_REG, RTL8366S_PORT_ALL); + /* don't drop packets whose DA has not been learned */ REG_RMW(smi, RTL8366S_SSCR2, RTL8366S_SSCR2_DROP_UNKNOWN_DA, 0); |