summaryrefslogtreecommitdiffstats
path: root/drivers/net
diff options
context:
space:
mode:
authorRabin Vincent <rabin@rab.in>2012-03-29 09:15:15 +0200
committerDavid S. Miller <davem@davemloft.net>2012-04-02 05:32:35 +0200
commit78fb72f7936c01d5b426c03a691eca082b03f2b9 (patch)
treee35842c46e105ef286c4e148977494fd81946eee /drivers/net
parentnet: sh_eth: fix endian check for architecture independent (diff)
downloadlinux-78fb72f7936c01d5b426c03a691eca082b03f2b9.tar.xz
linux-78fb72f7936c01d5b426c03a691eca082b03f2b9.zip
net: usb: cdc_eem: fix mtu
Make CDC EEM recalculate the hard_mtu after adjusting the hard_header_len. Without this, usbnet adjusts the MTU down to 1494 bytes, and the host is unable to receive standard 1500-byte frames from the device. Tested with the Linux USB Ethernet gadget. Cc: Oliver Neukum <oliver@neukum.name> Signed-off-by: Rabin Vincent <rabin@rab.in> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers/net')
-rw-r--r--drivers/net/usb/cdc_eem.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/drivers/net/usb/cdc_eem.c b/drivers/net/usb/cdc_eem.c
index 439690be519f..685a4e22c768 100644
--- a/drivers/net/usb/cdc_eem.c
+++ b/drivers/net/usb/cdc_eem.c
@@ -93,6 +93,7 @@ static int eem_bind(struct usbnet *dev, struct usb_interface *intf)
/* no jumbogram (16K) support for now */
dev->net->hard_header_len += EEM_HEAD + ETH_FCS_LEN;
+ dev->hard_mtu = dev->net->mtu + dev->net->hard_header_len;
return 0;
}