From 9a32315b0b162a9ec13c41c0c69d4b93095494ca Mon Sep 17 00:00:00 2001 From: Christian Gromm Date: Tue, 8 May 2018 11:45:14 +0200 Subject: [PATCH] staging: most: usb: don't set URB_ZERO_PACKET flag for synchronous data This patch avoids setting the URB_ZERO_PACKET transfer flag for synchronous data. This is needed to prevent the host from sending an empty packet when data is aligned to an endpoint packet boundary. Signed-off-by: Christian Gromm Signed-off-by: Greg Kroah-Hartman --- drivers/staging/most/usb/usb.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/drivers/staging/most/usb/usb.c b/drivers/staging/most/usb/usb.c index 3126b69cc392..d102b08a5504 100644 --- a/drivers/staging/most/usb/usb.c +++ b/drivers/staging/most/usb/usb.c @@ -592,7 +592,8 @@ static int hdm_enqueue(struct most_interface *iface, int channel, length, hdm_write_completion, mbo); - if (conf->data_type != MOST_CH_ISOC) + if (conf->data_type != MOST_CH_ISOC && + conf->data_type != MOST_CH_SYNC) urb->transfer_flags |= URB_ZERO_PACKET; } else { usb_fill_bulk_urb(urb, mdev->usb_device, -- 2.30.2