Hi, The two first patch are focused on two fixes for an issue I encountered when trying to use the DFU gadget on big flash partition (2MB). You can find more information in each patch, but here is a short summary of the issue: When downloading a firmware into a big flash partition the erase operation can take a long time to be complete from few seconds to minutes in extreme cases. During the erase the DFU gadget does not respond to any USB setup request, the host only see a stalled USB endpoint and cannot get responses from DFU_GETSTATE nor DFU_GETSTATUS. The last patch is a small fix that allow to use the dfu gadget after being unbind, such as: barebox:/ usbgadget -D /foo(foo) barebox:/ usbgadget -d barebox:/ usbgadget -D /bar(bar) Best regards, Jules change in v2: - reorder commits - reset global variables for progressive erase in dfu_cleanup this is to allow multi partition update without restart - add missing error check on erase and remove erase on non mtd device - add a new commit that fix a bug when exposing multiple partitions at once --- Jules Maselbas (4): usb: gadget: dfu: Reset global variables on unbind usb: gadget: dfu: Add manifestation phase usb: gadget: dfu: Progressive erase if file is a mtd usb: gadget: dfu: Fix DFU mode interface descriptor drivers/usb/gadget/dfu.c | 207 +++++++++++++++++++++++++++++---------- 1 file changed, 155 insertions(+), 52 deletions(-) -- 2.21.0.196.g041f5ea _______________________________________________ barebox mailing list barebox@xxxxxxxxxxxxxxxxxxx http://lists.infradead.org/mailman/listinfo/barebox