diff options
author | juhosg <juhosg@3c298f89-4303-0410-b956-a3cf2f4a3e73> | 2011-01-08 20:24:26 +0000 |
---|---|---|
committer | juhosg <juhosg@3c298f89-4303-0410-b956-a3cf2f4a3e73> | 2011-01-08 20:24:26 +0000 |
commit | 5082ee8d9816b9a69cc1a250942fb4dce5aa6357 (patch) | |
tree | 8ffcc07804e9101d425fc1a6778dfa091c57700c /target/linux/generic/files/drivers/net/phy/rtl8366s.c | |
parent | 14f9ab7993b9e07f16cc3e10dd4f8da3a32d79f2 (diff) |
generic: rtl8366: enable ports only after VLAN configuration is done
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@24938 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 | 9 |
1 files changed, 5 insertions, 4 deletions
diff --git a/target/linux/generic/files/drivers/net/phy/rtl8366s.c b/target/linux/generic/files/drivers/net/phy/rtl8366s.c index 2d472cfd3..74e0a3029 100644 --- a/target/linux/generic/files/drivers/net/phy/rtl8366s.c +++ b/target/linux/generic/files/drivers/net/phy/rtl8366s.c @@ -257,9 +257,6 @@ static int rtl8366s_hw_init(struct rtl8366_smi *smi) REG_RMW(smi, RTL8366S_SGCR, RTL8366S_SGCR_MAX_LENGTH_MASK, RTL8366S_SGCR_MAX_LENGTH_1536); - /* enable all ports */ - REG_WR(smi, RTL8366S_PECR, 0); - /* enable learning for all ports */ REG_WR(smi, RTL8366S_SSCR0, 0); @@ -808,7 +805,11 @@ static int rtl8366s_sw_reset_switch(struct switch_dev *dev) if (err) return err; - return rtl8366_reset_vlan(smi); + err = rtl8366_reset_vlan(smi); + if (err) + return err; + + return rtl8366_enable_all_ports(smi, 1); } static struct switch_attr rtl8366s_globals[] = { |