USB fastboot resets the device directly from its request-completion callback, while the network transports route completed commands through fastboot_handle_boot(). Keeping reset policy in the transport makes it harder to support callers with a different reset interface.
Send the USB reboot completion through the common handler as well. U-Boot proper retains the same do_reset() behavior, while execution-phase-specific policy can be contained in the shared code. Signed-off-by: Julien Masson <[email protected]> Signed-off-by: Vitor Sato Eschholz <[email protected]> Signed-off-by: Carlo Caione <[email protected]> Reviewed-by: Neil Armstrong <[email protected]> --- drivers/usb/gadget/f_fastboot.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/usb/gadget/f_fastboot.c b/drivers/usb/gadget/f_fastboot.c index 8df0e3f331d..471c0e87042 100644 --- a/drivers/usb/gadget/f_fastboot.c +++ b/drivers/usb/gadget/f_fastboot.c @@ -422,7 +422,7 @@ static int fastboot_tx_write_str(const char *buffer) static void compl_do_reset(struct usb_ep *ep, struct usb_request *req) { g_dnl_unregister(); - do_reset(NULL, 0, 0, NULL); + fastboot_handle_boot(FASTBOOT_COMMAND_REBOOT, true); } static unsigned int rx_bytes_expected(struct usb_ep *ep) -- 2.55.0
