On 28/02/2016 04:59, serge wrote: > Starting from AA when ramips support was added we get failsafe mode issue. > Digging the problem I suggest: > > 1. Change switch init: if vlan disabled set pvid 1 for all ports and add > all ports > into vlan0 with vid=1 > 2. Change init order in ethernet driver probe - init ESW after FE. > > First step allow to set eth0 in predictable state after ethernet > driver init'ed or at any time with simple: > swconfig dev switch0 set reset 1 > > Second step is needed because some SOCs (rt5350,rt3352) reset FE and ESW > together > during ethernet probe but I think only for AA. > > All these allow simplify ramips_set_preinit_iface() to set ifname=eth0 > only. > Or add fallback to eth0 into preinit if both pi_ifname and ifname are > undefined. > In last case no need ramips_set_preinit_iface() at all. > > Was tested for rt5350. Check for other SOCs is needed.
Hi, can you test this on more SoCs please and also add the changes to ramips_set_preinit_iface in a second patch please. if all works i'll apply the same style fix to the gsw driver aswell John > > Signed-off-by: Serge Vasilugin <vasilu...@yandex.ru> > > --- a/target/linux/ramips/files/drivers/net/ethernet/ralink/esw_rt3052.c > +++ c/target/linux/ramips/files/drivers/net/ethernet/ralink/esw_rt3052.c > @@ -768,7 +768,7 @@ static int esw_apply_config(struct switc > doubletag |= x << i; > en_vlan |= x << i; > untag |= x << i; > - pvid = 0; > + pvid = 1; > } > esw_set_pvid(esw, i, pvid); > if (i < RT305X_ESW_NUM_LEDS) > @@ -795,7 +795,7 @@ static int esw_apply_config(struct switc > * isolated. > * NOTE: vlan 0 is special, no vlan tag is prepended > */ > - esw_set_vlan_id(esw, 0, 0); > + esw_set_vlan_id(esw, 0, 1); > esw_set_vmsc(esw, 0, RT305X_ESW_PORTS_ALL); > } > _______________________________________________ > openwrt-devel mailing list > openwrt-devel@lists.openwrt.org > https://lists.openwrt.org/cgi-bin/mailman/listinfo/openwrt-devel _______________________________________________ openwrt-devel mailing list openwrt-devel@lists.openwrt.org https://lists.openwrt.org/cgi-bin/mailman/listinfo/openwrt-devel