"fastboot reboot bootloader" fails to transmit "OKAY" back to host on
imx8qm because fastboot_tx_write_str() will dequeue the IN request
first before queue it, cdns3 usb driver will always invoke the complete
callback in dequeue, so if we are going to do_reset() in the complete
callback, the device will reboot before we can transmit "OKAY" back to
host in queue.
Check the request status in dequeue first before invoke the complete
callback, this is basically ported from kernel.
Test: No error messages when run "fastboot reboot bootloader" on
imx8qm_mek.
Change-Id: I085df3bd0f37480b8636585cc1068d5fcae331c1
Signed-off-by: Luo Ji <ji.luo@nxp.com>
|
||
|---|---|---|
| .. | ||
| Kconfig | ||
| Makefile | ||
| cdns3-nxp-reg-def.h | ||
| core.c | ||
| core.h | ||
| dev-regs-macro.h | ||
| dev-regs-map.h | ||
| gadget-export.h | ||
| gadget.c | ||
| gadget.h | ||
| io.h | ||
| linux-compat.h | ||