cx82310_eth: allow empty URBs
Empty received URBs are currently counted as errors but the device sends them sometimes as part of regular traffic - so remove this check. Signed-off-by: Ondrej Zary <linux@rainbow-software.org> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
parent
7dbfdc2390
commit
441993da47
|
@ -150,11 +150,11 @@ static int cx82310_bind(struct usbnet *dev, struct usb_interface *intf)
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* this must not include ethernet header as the device can send partial
|
* this must not include ethernet header as the device can send partial
|
||||||
* packets with no header (URB is at least 2 bytes long, so 2 is OK)
|
* packets with no header (and sometimes even empty URBs)
|
||||||
*/
|
*/
|
||||||
dev->net->hard_header_len = 2;
|
dev->net->hard_header_len = 0;
|
||||||
/* we can send at most 1514 bytes of data (+ 2-byte header) per URB */
|
/* we can send at most 1514 bytes of data (+ 2-byte header) per URB */
|
||||||
dev->hard_mtu = CX82310_MTU + dev->net->hard_header_len;
|
dev->hard_mtu = CX82310_MTU + 2;
|
||||||
/* we can receive URBs up to 4KB from the device */
|
/* we can receive URBs up to 4KB from the device */
|
||||||
dev->rx_urb_size = 4096;
|
dev->rx_urb_size = 4096;
|
||||||
|
|
||||||
|
@ -228,12 +228,6 @@ static int cx82310_rx_fixup(struct usbnet *dev, struct sk_buff *skb)
|
||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (skb->len < 2) {
|
|
||||||
dev_err(&dev->udev->dev, "RX frame too short: %d B\n",
|
|
||||||
skb->len);
|
|
||||||
return 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
/* a skb can contain multiple packets */
|
/* a skb can contain multiple packets */
|
||||||
while (skb->len > 1) {
|
while (skb->len > 1) {
|
||||||
/* first two bytes are packet length */
|
/* first two bytes are packet length */
|
||||||
|
|
Loading…
Reference in New Issue