]> git.dujemihanovic.xyz Git - u-boot.git/commitdiff
stm32mp: stm32prog: handle the next phase after USB re-enumeration
authorPatrick Delaunay <patrick.delaunay@foss.st.com>
Tue, 18 May 2021 13:12:08 +0000 (15:12 +0200)
committerPatrice Chotard <patrice.chotard@foss.st.com>
Fri, 18 Jun 2021 08:09:41 +0000 (10:09 +0200)
Handle the second USB enumeration only when the flashlayout is received
and when phase is PHASE_FLASHLAYOUT. This patch removes the call of
stm32prog_next_phase as it is already done in stm32prog_dfu_init().

Signed-off-by: Patrick Delaunay <patrick.delaunay@foss.st.com>
Reviewed-by: Patrice Chotard <patrice.chotard@foss.st.com>
arch/arm/mach-stm32mp/cmd_stm32prog/stm32prog_usb.c

index bc44d9fc8f974dda41075ecbe621824db8be316f..d4a3f7ea16f18e65849392a7920b63ce3e5075b1 100644 (file)
@@ -207,13 +207,10 @@ bool stm32prog_usb_loop(struct stm32prog_data *data, int dev)
 
        if (stm32prog_data->phase == PHASE_FLASHLAYOUT) {
                ret = run_usb_dnl_gadget(dev, "usb_dnl_dfu");
-               if (ret || stm32prog_data->phase == PHASE_DO_RESET)
+               if (ret || stm32prog_data->phase != PHASE_FLASHLAYOUT)
                        return ret;
                /* prepare the second enumeration with the FlashLayout */
-               if (stm32prog_data->phase == PHASE_FLASHLAYOUT)
-                       stm32prog_dfu_init(data);
-               /* found next selected partition */
-               stm32prog_next_phase(data);
+               stm32prog_dfu_init(data);
        }
 
        ret = run_usb_dnl_gadget(dev, "usb_dnl_dfu");