Hi Matthias, Do you plan to pull this patch series to RPI repository?
I'm asking as it contains some DFU related patches (Acked already by me), which I would like to see pulled in this merge window. Thanks in advance for your help :-) > Hi All! > > This patchset enables support for DFU over USB protocol on Raspberry > Pi4 board. The board has DWC2 UDC controller connected to the USB-C > power connector. Enabling DFU on it, make the u-boot development much > more convenient, as one no longer needs to swap SD-card between RPi4 > board and host machine to update the u-boot binary. > > Patches are based on current 'master' u-boot branch. They were tested > on the 2019-07-10-raspbian-buster-lite.img sd-card image with the > following lines added to config.txt: > dtoverlay=dwc2,dr_mode=peripheral > dtparam=i2c_arm=on > dtparam=spi=on > enable_uart=1 > uart_2ndstage=1 > kernel=u-boot.bin > > To enable DFU, one has to enter follwing command: > # dfu 0 mmc 0 > > During the development of this feature I've encountered a serious bugs > in FAT write code. Over-writing discontiguous files always caused > serious filesystem corruption. This was especially anoying, because > the system environment is kept on FAT volume in uboot.env file, so > 'saveenv' basically corrupted the boot partiting on the second call. > Another bunch of the issues in the FAT write code has been revealed > while removing predefined file size limit in DFU MMC code and then > running sandbox tests. > > I hope that my fixes for FAT code will be helpful for non-RPi users > too. > > Best regards > Marek Szyprowski > Samsung R&D Institute Poland > > > Changelog: > > v4: > - rechecked the FAT related fixes, it turned out that much simpler > patch fixes both issues discovered while working on DFU support; > added simple sandbox based tests reveleaing the issue and showing > correctness of the fix > - rebased patches onto current u-boot's master branch: 4b19b89ca4a8 > ("Merge tag 'rpi-next-2020.01' of https://github.com/mbgg/u-boot") > > v3: https://patchwork.ozlabs.org/cover/1200793/ > - fixed one more FAT issue revealed by sandbox tests > > v3: (patch 6/6 posted separately): > https://patchwork.ozlabs.org/patch/1195645/ > - fixed non-RPi4 builds (missing #else ENV_DFU_SETTINGS def) > - removed config.txt entity (not needed in uboot-based boot) > - switched arm64 kernel filename to 'Image' > > v2: https://patchwork.ozlabs.org/cover/1166589/ > - added changes to rpi_4_defconfig too (arm64 version) > - extended DFU entity list by confix.txt, cmdline.txt and Image.gz > - fixed missing '\0' at the end of dfu_alt_info env > - added reviewed-by tags > - added patches for DFU MMC to remove file size limit > - added patch for fat write to fix issues on non-zero file offset > (revealed by previous patch) > > v1: https://patchwork.ozlabs.org/cover/1162770/ > - initial version > > > Patch summary: > > Marek Szyprowski (6): > fat: write: fix broken write to fragmented files > fat: write: adjust data written in each partial write > dfu: mmc: rearrange the code > dfu: mmc: remove file size limit for io operations > usb: dwc2_udc_otg: add bcm2835 SoC (Raspberry Pi4) support > config: enable DFU over USB on Raspberry Pi4 boards > > configs/rpi_4_32b_defconfig | 11 +++ > configs/rpi_4_defconfig | 11 +++ > drivers/dfu/dfu_mmc.c | 93 > +++++++++++++--------- drivers/usb/gadget/dwc2_udc_otg.c | > 2 + drivers/usb/gadget/dwc2_udc_otg_xfer_dma.c | 12 +-- > fs/fat/fat_write.c | 8 +- > include/configs/rpi.h | 20 +++++ > 7 files changed, 112 insertions(+), 45 deletions(-) > Best regards, Lukasz Majewski -- DENX Software Engineering GmbH, Managing Director: Wolfgang Denk HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany Phone: (+49)-8142-66989-59 Fax: (+49)-8142-66989-80 Email: lu...@denx.de
pgpc5IEGVJ9vo.pgp
Description: OpenPGP digital signature