linux_dsm_epyc7002/drivers/usb/renesas_usbhs
Yoshihiro Shimoda 4ef35b10bf usb: renesas_usbhs: fix the timing of dcp_control_transfer_done
According to the datasheet, this driver should clear the INTSTS0.CTRT
bit before this controller detects the next stage transition. Otherwise,
the driver may not be able to clear the bit after the controller went to
the next stage transition. After that, the driver will not be able to
clear the INTSTS0.VALID, and a usb control transfer will not finish
finally.

If we use the testusb tool, it is easy to reproduce this issue:

 # testusb -a -t 10

Since the previous code handled a data stage and a status stage in
the usbhsf_pio_try_push(), it may not clear the INTSTS0.CTRT at the
right timing.
So, this patch change the timing of usbhs_dcp_control_transfer_done()
to the usbhsg_irq_ctrl_stage().

Signed-off-by: Yoshihiro Shimoda <yoshihiro.shimoda.uh@renesas.com>
Signed-off-by: Felipe Balbi <balbi@ti.com>
2014-11-05 13:22:12 -06:00
..
common.c usb: renesas_usbhs: gadget: fix the behavior of pullup 2014-11-05 13:22:09 -06:00
common.h usb: renesas_usbhs: add support for generic PHY 2014-11-03 10:00:56 -06:00
fifo.c usb: renesas_usbhs: fix the timing of dcp_control_transfer_done 2014-11-05 13:22:12 -06:00
fifo.h usb: renesas: remove unused DMA_ADDR_INVALID 2013-03-18 11:18:13 +02:00
Kconfig usb: renesas_usbhs: fix driver dependencies 2014-09-23 21:57:22 -07:00
Makefile usb: renesas_usbhs: add R-Car Gen. 2 init and power control 2014-07-16 10:06:32 -05:00
mod_gadget.c usb: renesas_usbhs: fix the timing of dcp_control_transfer_done 2014-11-05 13:22:12 -06:00
mod_host.c usb: hcd: move controller wakeup setting initialization to individual driver 2013-12-08 18:06:46 -08:00
mod.c usb: renesas_usbhs: protect mod->irq_{bemp,brdy}sts by spin lock 2014-09-03 09:15:57 -05:00
mod.h renesas_usbhs: cleanup quoted includes 2012-06-05 10:15:25 +02:00
pipe.c usb: renesas_usbhs: fix the behavior of some usbhs_pkt_handle 2014-09-03 09:15:57 -05:00
pipe.h usb: renesas_usbhs: fix the behavior of some usbhs_pkt_handle 2014-09-03 09:15:57 -05:00
rcar2.c usb: renesas_usbhs: add support for generic PHY 2014-11-03 10:00:56 -06:00
rcar2.h usb: renesas_usbhs: add R-Car Gen. 2 init and power control 2014-07-16 10:06:32 -05:00