[OpenWrt-Devel] [PATCH] ramips: ethernet: turn off flow control

Rosen Penev rosenp at gmail.com
Sat Jan 25 18:04:03 EST 2020


On Thu, Jan 23, 2020 at 12:25 AM Bjørn Mork <bjorn at mork.no> wrote:
>
> Rosen Penev <rosenp at gmail.com> writes:
>
> > Several users have been reporting crashing issues with the ethernet
> > driver.
> >
> > One source says that this is a silicon bug in mt7621:
> > https://github.com/openwrt/mt76/issues/211#issuecomment-569687506
> >
> > A user that has been testing this has seen greater than 2-3 days uptime
> > of the ethernet interface with this change:
> > https://forum.openwrt.org/t/mtk-soc-eth-watchdog-timeout-after-r11573/50000/12
> >
> > Signed-off-by: Rosen Penev <rosenp at gmail.com>
> > ---
> >  .../files-4.14/drivers/net/ethernet/mediatek/gsw_mt7621.c     | 4 ++--
> >  1 file changed, 2 insertions(+), 2 deletions(-)
> >
> > diff --git a/target/linux/ramips/files-4.14/drivers/net/ethernet/mediatek/gsw_mt7621.c b/target/linux/ramips/files-4.14/drivers/net/ethernet/mediatek/gsw_mt7621.c
> > index 89be239007..bd0e555e35 100644
> > --- a/target/linux/ramips/files-4.14/drivers/net/ethernet/mediatek/gsw_mt7621.c
> > +++ b/target/linux/ramips/files-4.14/drivers/net/ethernet/mediatek/gsw_mt7621.c
> > @@ -98,8 +98,8 @@ static void mt7621_hw_init(struct mt7620_gsw *gsw, struct device_node *np)
> >       mt7530_mdio_w32(gsw, 0x7000, 0x3);
> >       usleep_range(10, 20);
> >
> > -     if ((rt_sysc_r32(SYSC_REG_CHIP_REV_ID) & 0xFFFF) == 0x0101) {
> > -             /* (GE1, Force 1000M/FD, FC ON, MAX_RX_LENGTH 1536) */
> > +     if ((rt_sysc_r32(SYSC_REG_CHIP_REV_ID) & 0xFFFF) >= 0x0101) {
> > +             /* (GE1, Force 1000M/FD, FC OFF, MAX_RX_LENGTH 1536) */
> >               mtk_switch_w32(gsw, 0x2305e30b, GSW_REG_MAC_P0_MCR);
> >               mt7530_mdio_w32(gsw, 0x3600, 0x5e30b);
> >       } else {
>
> If that's really helping then I believe it would be useful to add some
> sort of chip_rev_id printk here.  Would be good to know who hits this
> and why...
That's just cosmetic.

Speculation on why is provided in the first link.

In the second link, people are really interested in getting this in.
Uptime is currently at 10 days.
>
>
> Bjørn

_______________________________________________
openwrt-devel mailing list
openwrt-devel at lists.openwrt.org
https://lists.openwrt.org/mailman/listinfo/openwrt-devel


More information about the openwrt-devel mailing list