summaryrefslogtreecommitdiff
path: root/drivers/usb/gadget/Kconfig
diff options
context:
space:
mode:
authorPeter Chen <peter.chen@freescale.com>2012-04-01 15:17:16 +0800
committerFelipe Balbi <balbi@ti.com>2012-05-04 15:53:06 +0300
commit4d0947dec4db1224354e2f6f00ae22ce38e62a43 (patch)
tree3b1dbc71853a24008a47a0346e1cd4e4435bca5f /drivers/usb/gadget/Kconfig
parent124ef389256f71042ab5dedde98dee5e9999a635 (diff)
usb: gadget: fsl_udc_core: dTD's next dtd pointer need to be updated once written
dTD's next dtd pointer need to be updated once CPU writes it, or this request may not be handled by controller, then host will get NAK from device forever. This problem occurs when there is a request is handling, we need to add a new request to dTD list, if this new request is added before the current one is finished, the new request is intended to added as next dtd pointer at current dTD, but without wmb(), the dTD's next dtd pointer may not be updated when the controller reads it. In that case, the controller will still get Terminate Bit is 1 at dTD's next dtd pointer, that means there is no next request, then this new request is missed by controller. CC: <stable@vger.kernel.org> Signed-off-by: Peter Chen <peter.chen@freescale.com> Acked-by: Li Yang <leoli@freescale.com> Signed-off-by: Felipe Balbi <balbi@ti.com>
Diffstat (limited to 'drivers/usb/gadget/Kconfig')
0 files changed, 0 insertions, 0 deletions