summary refs log tree commit diff
path: root/drivers/scsi/arcmsr
diff options
context:
space:
mode:
authorPratyush Anand <pratyush.anand@st.com>2013-01-14 15:59:37 +0530
committerFelipe Balbi <balbi@ti.com>2013-01-18 14:32:41 +0200
commite5ba5ec833aa4a76980b512d6a6779643516b850 (patch)
tree65ff2da9fe180b1233a53a2beb9c4cd205aa6d93 /drivers/scsi/arcmsr
parent1877d6c9a57802d50a059cf2dacdba10168cece7 (diff)
downloadlinux-e5ba5ec833aa4a76980b512d6a6779643516b850.tar.gz
usb: dwc3: gadget: fix scatter gather implementation
To work with scatter gather properly, fixes have been done in number of
functions. I will explain requirement of each fixes one by one.

start_slot: used to retrieve all request of SG during cleanup

dwc3_gadget_giveback: We need to skip link TRB if it was one of the
intermediate TRB of SG.

dwc3_prepare_one_trb: We need to track all submitted TRBs during
cleanup. Since, all TRBs would be serially allocated, so we can just
keep starting slot info and we can always find rest of them. We need to
pass sg node number, so that we cab appropriately program ISOC_FIRST/ISOC,
Chain etc.

dwc3_prepare_trbs: last_one should be set when it is last node
of SG as well as last node of request_list.

__dwc3_cleanup_done_trbs: It has been prepared after re-factorization of
dwc3_cleanup_done_reqs. It is called for each TRB of SG.

Signed-off-by: Pratyush Anand <pratyush.anand@st.com>
Signed-off-by: Felipe Balbi <balbi@ti.com>
Diffstat (limited to 'drivers/scsi/arcmsr')
0 files changed, 0 insertions, 0 deletions