From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from phobos.denx.de (phobos.denx.de [85.214.62.61]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id CD0C0C3DA7D for ; Thu, 5 Jan 2023 09:07:29 +0000 (UTC) Received: from h2850616.stratoserver.net (localhost [IPv6:::1]) by phobos.denx.de (Postfix) with ESMTP id 6A01A855A3; Thu, 5 Jan 2023 10:07:25 +0100 (CET) Authentication-Results: phobos.denx.de; dmarc=none (p=none dis=none) header.from=baylibre.com Authentication-Results: phobos.denx.de; spf=pass smtp.mailfrom=u-boot-bounces@lists.denx.de Authentication-Results: phobos.denx.de; dkim=pass (2048-bit key; unprotected) header.d=baylibre-com.20210112.gappssmtp.com header.i=@baylibre-com.20210112.gappssmtp.com header.b="XxWKGVVk"; dkim-atps=neutral Received: by phobos.denx.de (Postfix, from userid 109) id 616D2855A2; Thu, 5 Jan 2023 10:07:23 +0100 (CET) Received: from mail-wr1-x433.google.com (mail-wr1-x433.google.com [IPv6:2a00:1450:4864:20::433]) (using TLSv1.3 with cipher TLS_AES_128_GCM_SHA256 (128/128 bits)) (No client certificate requested) by phobos.denx.de (Postfix) with ESMTPS id D10DD85598 for ; Thu, 5 Jan 2023 10:07:17 +0100 (CET) Authentication-Results: phobos.denx.de; dmarc=none (p=none dis=none) header.from=baylibre.com Authentication-Results: phobos.denx.de; spf=pass smtp.mailfrom=mkorpershoek@baylibre.com Received: by mail-wr1-x433.google.com with SMTP id r2so631204wrv.7 for ; Thu, 05 Jan 2023 01:07:17 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=baylibre-com.20210112.gappssmtp.com; s=20210112; h=mime-version:message-id:date:references:in-reply-to:subject:cc:to :from:from:to:cc:subject:date:message-id:reply-to; bh=MaObPNqgbmKPSgnX8wIi1akHoUufawgw4MY6lG1TV5s=; b=XxWKGVVkIyCGSTzqFZpcZAbZKb/Cy5E0x5qtvZk2Tav7W03alqHkJu/JTeyBcF0iRA d2Bl0I7nFyf5Iv/kYT17Pu8CwIAM99UCN7kg2Est5wL2KWfJxRhcE+GoTP7tWXklh/pv dIj72DqyYlWu0LNZFKmMtlkVEcFWpvbXGlffqw51uPPEQ64y8OnLwQDTshZQtC0U0CdQ MAiiPMK1srQsCOv2VDnKpDZtoGToV3rx4liAW5jwQapZFMi/cAEvMdDV4G88spvu1/wV Lb6xqLttaaZgm6Qrgpl+gsWEp8hXmic/YVhpbetoCMjmB1dfkJ6UrzudkpivXmEuMMuX SWOA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=mime-version:message-id:date:references:in-reply-to:subject:cc:to :from:x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=MaObPNqgbmKPSgnX8wIi1akHoUufawgw4MY6lG1TV5s=; b=K3jEignvXrMGaZyYUmgIXNziPEfYtzRSvCze7RATeZtvGcAJkEpT4ysXL/6vGK2F/M wyAstEW3mHeu3UzPEGpSjlwHX2Y+NgHsT9yZs17SfEiT+Px6/zFCPSqNmtCp3g/XjwCw tYYL21DQp66CQU5enrlxN1CMrewm7OWtP5fXOZsV/C6+ZDK035aEFJpgyHOvnyo+HLIH ZWfgev04IZo55OjnfakNYlcUHA6FductqEwkvx6V7HhjqvSGrBsM4BomASCX3vV4IkNx dSuR0ZtQLEEFwRcvGXDXunSvbEQLoalVisO5wdzDTLUO3gBxeVEKxv7psURIPXBFfevS Ezeg== X-Gm-Message-State: AFqh2kpjFWvtCyUHJgV8jvtvJx/LewnTnFmHV6uDyNm5BGgDQky2HnXA SyDXo83b59sbK+WlnfbYwstuYQ== X-Google-Smtp-Source: AMrXdXvZZJi5JFezbdxFav7RpzsSIG2fFqpi/n5ehkbppQRASvVp0rZFIi4u1Z9NqopKam5QiqYXBg== X-Received: by 2002:a5d:58fa:0:b0:28e:46bc:3256 with SMTP id f26-20020a5d58fa000000b0028e46bc3256mr13357516wrd.8.1672909637383; Thu, 05 Jan 2023 01:07:17 -0800 (PST) Received: from localhost ([82.66.159.240]) by smtp.gmail.com with ESMTPSA id d11-20020adffd8b000000b00236545edc91sm35791716wrr.76.2023.01.05.01.07.16 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 05 Jan 2023 01:07:17 -0800 (PST) From: Mattijs Korpershoek To: Marek Vasut , Dario Binacchi , u-boot@lists.denx.de Cc: Lukasz Majewski , linux-amarula@amarulasolutions.com Subject: Re: [PATCH] usb: gadget: fastboot: detach usb just before rebooting In-Reply-To: <4d65459a-9467-3600-b481-33f26c72a715@denx.de> References: <20230104161643.2730063-1-dario.binacchi@amarulasolutions.com> <4d65459a-9467-3600-b481-33f26c72a715@denx.de> Date: Thu, 05 Jan 2023 10:07:16 +0100 Message-ID: <87y1qh73jv.fsf@baylibre.com> MIME-Version: 1.0 Content-Type: text/plain X-BeenThere: u-boot@lists.denx.de X-Mailman-Version: 2.1.39 Precedence: list List-Id: U-Boot discussion List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: u-boot-bounces@lists.denx.de Sender: "U-Boot" X-Virus-Scanned: clamav-milter 0.103.6 at phobos.denx.de X-Virus-Status: Clean On Wed, Jan 04, 2023 at 17:27, Marek Vasut wrote: > On 1/4/23 17:16, Dario Binacchi wrote: >> The patch fixes the following error when updating a BSH SMM S2 board: >> 3:72>Start Cmd:FB[-t 8000]: ucmd nand write ${loadaddr} nanddtb ${filesize} >> 3:72>Okay (0.023s) >> 3:72>Start Cmd:FB: reboot >> 3:72>Fail Bulk(R):LIBUSB_ERROR_IO(0s) >> >> The "fastboot reboot" command detaches the USB when it still needs to be >> used. So let's detach the USB just before the reset. >> >> CC: Mattijs Korpershoek >> Fixes: 5f7e01e9d5d800 ("usb: gadget: fastboot: detach usb on reboot commands") >> Signed-off-by: Dario Binacchi >> --- >> >> drivers/usb/gadget/f_fastboot.c | 12 ++++++------ >> 1 file changed, 6 insertions(+), 6 deletions(-) >> >> diff --git a/drivers/usb/gadget/f_fastboot.c b/drivers/usb/gadget/f_fastboot.c >> index 07b1681c8a9a..0b3fae564d0a 100644 >> --- a/drivers/usb/gadget/f_fastboot.c >> +++ b/drivers/usb/gadget/f_fastboot.c >> @@ -419,11 +419,6 @@ static int fastboot_tx_write_str(const char *buffer) >> return fastboot_tx_write(buffer, strlen(buffer)); >> } >> >> -static void compl_do_reset(struct usb_ep *ep, struct usb_request *req) >> -{ >> - do_reset(NULL, 0, 0, NULL); >> -} >> - >> static unsigned int rx_bytes_expected(struct usb_ep *ep) >> { >> int rx_remain = fastboot_data_remaining(); >> @@ -495,6 +490,12 @@ static void do_bootm_on_complete(struct usb_ep *ep, struct usb_request *req) >> do_exit_on_complete(ep, req); >> } >> >> +static void compl_do_reset(struct usb_ep *ep, struct usb_request *req) >> +{ >> + do_exit_on_complete(ep, req); >> + do_reset(NULL, 0, 0, NULL); >> +} >> + >> #if CONFIG_IS_ENABLED(FASTBOOT_UUU_SUPPORT) >> static void do_acmd_complete(struct usb_ep *ep, struct usb_request *req) >> { >> @@ -544,7 +545,6 @@ static void rx_handler_command(struct usb_ep *ep, struct usb_request *req) >> case FASTBOOT_COMMAND_REBOOT_FASTBOOTD: >> case FASTBOOT_COMMAND_REBOOT_RECOVERY: >> fastboot_func->in_req->complete = compl_do_reset; >> - g_dnl_trigger_detach(); >> break; >> #if CONFIG_IS_ENABLED(FASTBOOT_UUU_SUPPORT) >> case FASTBOOT_COMMAND_ACMD: > > If Mattijs could have a look, that would be real nice. I've answered on v2. Let's continue the discussion there. > > If there is no activity in say a week or two, please let me know and > I'll pick it up via USB tree.