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 <christian.gr...@microchip.com>
---
 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 3126b69..d102b08 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.7.4

_______________________________________________
devel mailing list
de...@linuxdriverproject.org
http://driverdev.linuxdriverproject.org/mailman/listinfo/driverdev-devel

Reply via email to