usb: dwc_otg_310: hcd: fix isoc urb actual length
authorFeng Mingli <fml@rock-chips.com>
Wed, 12 Jul 2017 08:54:22 +0000 (16:54 +0800)
committerHuang, Tao <huangtao@rock-chips.com>
Thu, 13 Jul 2017 03:40:26 +0000 (11:40 +0800)
commit1246a265e1fb348a8b12956cb59337db60bd1f7d
treeae05d18a93f9cae450029f96a5cb949447fd02df
parent6ce1035676af794b13554d599411d87ecead5887
usb: dwc_otg_310: hcd: fix isoc urb actual length

USB isochronous urb consists of some isoc frames, urb use iso_frame_desc
structure record actual_length, then device drivers always use this and
don't care urb actual_length. But in usb devio driver, processcompl()
function will process urb complete and copy data to user depend on urb
actual_length.

In dwc controller driver, update_isoc_urb_state() function will only
update isoc frames actual_length, urb actual_length will be 0. When use
usb devio driver, there is no data copy to user, so need update urb
actual_length at the same time.

TEST=use libusb to transport isochronous data

Change-Id: I1dc8e8d8c6609924626761525b98f41a739aeb65
Signed-off-by: Feng Mingli <fml@rock-chips.com>
Signed-off-by: William Wu <william.wu@rock-chips.com>
drivers/usb/dwc_otg_310/dwc_otg_hcd_intr.c