Commit 328d7b8a authored by Bjørn Mork's avatar Bjørn Mork Committed by David S. Miller

net: cdc_mbim: send ZLP after max sized NTBs

We normally avoid sending ZLPs by padding NTBs with a zero byte
if the NTB is shorter than dwNtbOutMaxSize, resulting in a short
USB packet instead of a ZLP.  But in the case where the NTB length
is exactly dwNtbOutMaxSize and this is an exact multiplum of
wMaxPacketSize, then we must send a ZLP.

This fixes an issue seen on a Sierra Wireless MC7710 device
where the transmission would fail whenever we ended up padding
the NTBs to max size.
Signed-off-by: default avatarBjørn Mork <bjorn@mork.no>
Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
parent 9992c2e2
...@@ -366,7 +366,7 @@ static int cdc_mbim_resume(struct usb_interface *intf) ...@@ -366,7 +366,7 @@ static int cdc_mbim_resume(struct usb_interface *intf)
static const struct driver_info cdc_mbim_info = { static const struct driver_info cdc_mbim_info = {
.description = "CDC MBIM", .description = "CDC MBIM",
.flags = FLAG_NO_SETINT | FLAG_MULTI_PACKET | FLAG_WWAN, .flags = FLAG_NO_SETINT | FLAG_MULTI_PACKET | FLAG_WWAN | FLAG_SEND_ZLP,
.bind = cdc_mbim_bind, .bind = cdc_mbim_bind,
.unbind = cdc_mbim_unbind, .unbind = cdc_mbim_unbind,
.manage_power = cdc_mbim_manage_power, .manage_power = cdc_mbim_manage_power,
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment