OSDN Git Service

gianfar: Remove wrong buffer size conditioning to VLAN h/w offload
authorClaudiu Manoil <claudiu.manoil@freescale.com>
Thu, 14 Feb 2013 05:00:06 +0000 (05:00 +0000)
committerDavid S. Miller <davem@davemloft.net>
Thu, 14 Feb 2013 18:32:25 +0000 (13:32 -0500)
The controller's ref manual states clearly that when the hw Rx vlan
offload feature is enabled, meaning that the VLEX bit from RCTRL is
correctly enabled, then the hw performs automatic VLAN tag extraction
and deletion from the ethernet frames. So there's no point in trying to
increase the rx buff size when rxvlan is on, as the frame is actually
smaller.
And the Tx vlan hw accel feature (VLINS) has nothing to do with rx buff
size computation.

Signed-off-by: Claudiu Manoil <claudiu.manoil@freescale.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/ethernet/freescale/gianfar.c

index d70f74c..b2c6077 100644 (file)
@@ -2385,9 +2385,6 @@ static int gfar_change_mtu(struct net_device *dev, int new_mtu)
        int oldsize = priv->rx_buffer_size;
        int frame_size = new_mtu + ETH_HLEN;
 
-       if (gfar_is_vlan_on(priv))
-               frame_size += VLAN_HLEN;
-
        if ((frame_size < 64) || (frame_size > JUMBO_FRAME_SIZE)) {
                netif_err(priv, drv, dev, "Invalid MTU setting\n");
                return -EINVAL;