On sam., août 19, 2023 at 16:24, Marek Vasut <ma...@denx.de> wrote:

> In case anything errors out during the SDP transfer, detach
> the controller instead of bailing out right away. This way,
> the controller can be reattached on next attempt.
>
> Signed-off-by: Marek Vasut <ma...@denx.de>
> ---
> Cc: Angus Ainslie <an...@akkea.ca>
> Cc: Dmitrii Merkurev <dimori...@google.com>
> Cc: Eddie Cai <eddie.cai.li...@gmail.com>
> Cc: Kever Yang <kever.y...@rock-chips.com>
> Cc: Lukasz Majewski <lu...@denx.de>
> Cc: Miquel Raynal <miquel.ray...@bootlin.com>
> Cc: Mattijs Korpershoek <mkorpersh...@baylibre.com>
> Cc: Nishanth Menon <n...@ti.com>
> Cc: Patrice Chotard <patrice.chot...@foss.st.com>
> Cc: Patrick Delaunay <patrick.delau...@foss.st.com>
> Cc: Philipp Tomsich <philipp.toms...@vrull.eu>
> Cc: Simon Glass <s...@chromium.org>
> Cc: Stefan Roese <s...@denx.de>
> Cc: ker...@puri.sm
> ---

Reviewed-by: Mattijs Korpershoek <mkorpersh...@baylibre.com>

Nitpick/question below

>  common/spl/spl_sdp.c | 5 +++--
>  1 file changed, 3 insertions(+), 2 deletions(-)
>
> diff --git a/common/spl/spl_sdp.c b/common/spl/spl_sdp.c
> index cc4fb4f7cca..f6b99c1af5a 100644
> --- a/common/spl/spl_sdp.c
> +++ b/common/spl/spl_sdp.c
> @@ -25,13 +25,13 @@ static int spl_sdp_load_image(struct spl_image_info 
> *spl_image,
>       ret = g_dnl_register("usb_dnl_sdp");
>       if (ret) {
>               pr_err("SDP dnl register failed: %d\n", ret);
> -             return ret;
> +             goto err_detach;
>       }
>  
>       ret = sdp_init(controller_index);
>       if (ret) {
>               pr_err("SDP init failed: %d\n", ret);
> -             return -ENODEV;
> +             goto err_detach;

Shouldn't we call g_dnl_unregister(); here since g_dnl_register() was
sucessfully called before?

This would match what's done in common/dfu.c

>       }
>  
>       /*
> @@ -42,6 +42,7 @@ static int spl_sdp_load_image(struct spl_image_info 
> *spl_image,
>       ret = spl_sdp_handle(controller_index, spl_image, bootdev);
>       debug("SDP ended\n");
>  
> +err_detach:
>       usb_gadget_release(controller_index);
>       return ret;
>  }
> -- 
> 2.40.1

Reply via email to