gianfar: fix bug caused by 87c288c6e9aa31720b72e2bc2d665e24e1653c3e
authorSebastian Pöhn <sebastian.belden@googlemail.com>
Tue, 26 Jul 2011 00:03:13 +0000 (00:03 +0000)
committerDavid S. Miller <davem@davemloft.net>
Thu, 28 Jul 2011 05:39:30 +0000 (22:39 -0700)
commit 87c288c6e9aa31720b72e2bc2d665e24e1653c3e "gianfar: do vlan cleanup" has two issues:
# permutation of rx and tx flags
# enabling vlan tag insertion by default (this leads to unusable connections on some configurations)

If VLAN insertion is requested (via ethtool) it will be set at an other point ...

Signed-off-by: Sebastian Poehn <sebastian.poehn@belden.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/gianfar.c

index 835cd2588148527777f87c089e31bca2d2d06d81..2659daad783ddb857f5e9597bbb2a2ea95c05f04 100644 (file)
@@ -388,12 +388,8 @@ static void gfar_init_mac(struct net_device *ndev)
        if (priv->hwts_rx_en)
                rctrl |= RCTRL_PRSDEP_INIT | RCTRL_TS_ENABLE;
 
-       /* keep vlan related bits if it's enabled */
-       if (ndev->features & NETIF_F_HW_VLAN_TX)
-               rctrl |= RCTRL_VLEX | RCTRL_PRSDEP_INIT;
-
        if (ndev->features & NETIF_F_HW_VLAN_RX)
-               tctrl |= TCTRL_VLINS;
+               rctrl |= RCTRL_VLEX | RCTRL_PRSDEP_INIT;
 
        /* Init rctrl based on our settings */
        gfar_write(&regs->rctrl, rctrl);