ramips: Use doubletagging to disable ramips_esw vlan by default, it seems more reliable.
authorjuhosg <juhosg@3c298f89-4303-0410-b956-a3cf2f4a3e73>
Wed, 5 Sep 2012 20:08:42 +0000 (20:08 +0000)
committerjuhosg <juhosg@3c298f89-4303-0410-b956-a3cf2f4a3e73>
Wed, 5 Sep 2012 20:08:42 +0000 (20:08 +0000)
commit07073dcb279d594ec5c2e5100152e3e5138c7341
tree62092f6a6a31fc6365c91da132ef2c6f23e8645f
parente937e774c94b15dd0b121818a8cc8a45e9163034
ramips: Use doubletagging to disable ramips_esw vlan by default, it seems more reliable.

Use doubletagging to disable ramips_esw vlan by default, it seems
more reliable.

Daniel Golle found an issue where sometimes (possibly only for
RT3352) the default vlan disable method (clearing en_vlan, untag,
doubletag and putting all ports into vlan 0) doesn't work and the
packets get sent out vlan-tagged with vlan 0.

Instead switch to using the doubletagging method (allow doubletagged
packets, put all ports into vlan 0 with untag enabled) by default.

Unless someone figures out a way to really globally disable vlan for
this switch, this seems like the best (most reliable) option.

I did some tests regarding maximum packet size and did not see any

difference between the two methods, both allow for slightly bigger packets
than the ramips_main.c ethernet driver (ping stops going through
above "ping -s 1472" (1514 bytes), on the switch packets are recv_good until
"ping -s 1490", or about 1532 bytes).

Signed-off-by: Tobias Diedrich <ranma+openwrt@tdiedrich.de>
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@33321 3c298f89-4303-0410-b956-a3cf2f4a3e73
target/linux/ramips/files/drivers/net/ethernet/ramips/ramips_esw.c