
This serie based on v2019.10-rc3 propose updates on the DFU stack: - add capability to have several DFU backend running in parallel - add MTD backend for update of NAND, NOR or SPI-NAND - add VIRTUAL backend for board/command specific behavior - add some weak callback
It is the same content that the previous RFC: http://patchwork.ozlabs.org/project/uboot/list/?series=120375 "dfu: update dfu stack and use them for stm32mp1"
To test the new features and as example, I update the stm32mp1 board to use the new features; I test them with the command "dfu 0" (for test I have dependency with patch http://patchwork.ozlabs.org/patch/1162076/)
The expected target of the dfu part for this serie is v2020.01. I will merge the stm32mp1 part when they will be accepted by dfu maintainers.
This serie prepares the DFU backend for the coming 'stm32prog' command and for STM32CubeProgrammer on stm32mp1 platform. This STMicroelectronics tool is based on DFU protocol and allows to update all the boot devices and the OTPs on the ST boards (so several DFU target in parallel, including spi nand).
Changes in v2: - Add dfu documentation - Update dfu documentation for callbacks - Add dfu documentation for several device - Update commit message - Update commit message - Update dfu documentation for MTD - Update dfu documentation for MTD - Update dfu documentation for virtual backend - Update dfu documentation for callbacks - Update callbacks comment after Lukasz review - Update after Lukasz Majewski comments
Patrick Delaunay (16): dfu: cosmetic: cleanup sf to avoid checkpatch error doc: dfu: Add dfu documentation dfu: sf: add partition support for nor backend dfu: prepare the support of multiple interface dfu: allow to manage DFU on several devices dfu: allow read with no data without error for EOF indication dfu: add backend for MTD device dfu: add partition support for MTD backend dfu: add DFU virtual backend dfu: add callback for flush and initiated operation stm32mp1: activate DFU support and command MTD stm32mp1: activate SET_DFU_ALT_INFO stm32mp1: configs: activate CONFIG_MTD_SPI_NAND stm32mp1: board: add spi nand support stm32mp1: add support for virtual partition read board: stm32mp1: fixup the usb product id for USB download gadget
board/st/stm32mp1/README | 111 ++++++++++ board/st/stm32mp1/stm32mp1.c | 181 +++++++++++++++- cmd/dfu.c | 21 +- configs/stm32mp15_basic_defconfig | 6 + configs/stm32mp15_optee_defconfig | 6 + configs/stm32mp15_trusted_defconfig | 6 + doc/README.dfu | 269 ++++++++++++++++++++++++ drivers/dfu/Kconfig | 13 ++ drivers/dfu/Makefile | 2 + drivers/dfu/dfu.c | 145 +++++++++++-- drivers/dfu/dfu_mtd.c | 306 ++++++++++++++++++++++++++++ drivers/dfu/dfu_sf.c | 55 ++++- drivers/dfu/dfu_virt.c | 49 +++++ include/configs/stm32mp1.h | 42 +++- include/dfu.h | 71 +++++++ 15 files changed, 1253 insertions(+), 30 deletions(-) create mode 100644 doc/README.dfu create mode 100644 drivers/dfu/dfu_mtd.c create mode 100644 drivers/dfu/dfu_virt.c