]> git.hungrycats.org Git - linux/commitdiff
gianfar: disable vlan tag insertion by default
authorZhu Yanjun <Yanjun.Zhu@windriver.com>
Wed, 15 Oct 2014 08:52:51 +0000 (16:52 +0800)
committerWilly Tarreau <w@1wt.eu>
Sun, 23 Nov 2014 09:55:45 +0000 (10:55 +0100)
2.6.x kernels require a similar logic change as commit 51b8cbfc
[gianfar: fix bug caused by e1653c3e] introduces for newer kernels.

Gianfar driver originally enables vlan tag insertion by default.
This will lead to unusable connections on some configurations.

Since gianfar nic vlan tag insertion is disabled by default and
it is not enabled any longer, it is not necessary to disable it
again.

Reported-by: Xu Jianrong <roy.xu@huawei.com>
Suggested-by: Wang Feng <sky.wangfeng@huawei.com>
Signed-off-by: Zhu Yanjun <Yanjun.Zhu@windriver.com>
Signed-off-by: Willy Tarreau <w@1wt.eu>
drivers/net/gianfar.c

index 8aa2cf67fc856125e3f5bbe4be81eb24d6cb497a..afdcb419da3c98fe4dfc320110fd05f90a2068f2 100644 (file)
@@ -1115,7 +1115,6 @@ int startup_gfar(struct net_device *dev)
        /* keep vlan related bits if it's enabled */
        if (priv->vlgrp) {
                rctrl |= RCTRL_VLEX | RCTRL_PRSDEP_INIT;
-               tctrl |= TCTRL_VLINS;
        }
 
        /* Init rctrl based on our settings */
@@ -1456,11 +1455,6 @@ static void gfar_vlan_rx_register(struct net_device *dev,
                tempval |= (RCTRL_VLEX | RCTRL_PRSDEP_INIT);
                gfar_write(&priv->regs->rctrl, tempval);
        } else {
-               /* Disable VLAN tag insertion */
-               tempval = gfar_read(&priv->regs->tctrl);
-               tempval &= ~TCTRL_VLINS;
-               gfar_write(&priv->regs->tctrl, tempval);
-
                /* Disable VLAN tag extraction */
                tempval = gfar_read(&priv->regs->rctrl);
                tempval &= ~RCTRL_VLEX;