
Hi Patrick,
I discover some limitation on DFU stack when I play on my ARM board with DFU for my external SDCARD : 16GB
It is mainly caused by the 'long' type (32 bits on ARMv7) used for size in dfu.c
I solve the issue with the 2 first patches of this serie
- manage size and result correctly in get_medium_size()
- change size to u64
The 2 next patch of the serie are not directly related to the issue. It is a cleanup and code factorization of dfu.c code
Patrick Delaunay (4): dfu: allow dfu read on partition greater than 2GB dfu: remove limitation on partition size dfu: factorize transaction cleanup dfu: add common function to initiate transaction
Thanks for your patches and fixing DFU.
I've build tested them: https://travis-ci.org/lmajewski/u-boot-dfu/builds
And it is OK.
Acked-by: Lukasz Majewski lukma@denx.de Tested-by: Lukasz Majewski lukma@denx.de
Test HW (DFU):
am335x BBB (Beagle Bone Black).
I've applied this code to u-boot-dfu tree.
drivers/dfu/dfu.c | 100 ++++++++++++++++++++++--------------------------- drivers/dfu/dfu_mmc.c | 20 +++++----- drivers/dfu/dfu_nand.c | 6 ++- drivers/dfu/dfu_ram.c | 6 ++- drivers/dfu/dfu_sf.c | 6 ++- include/dfu.h | 4 +- 6 files changed, 69 insertions(+), 73 deletions(-)