
Hello Stephen,
add Lukasz to Cc ...
Am 12.09.2014 16:53, schrieb Stephen Warren:
On 09/12/2014 12:27 AM, Heiko Schocher wrote:
when uplaoding a file, at least from a nand partition, the complete mtd nand partition size is transferred. This leads in a wrong md5sum as the filesize is different between the downloaded file and the uploaded file. Limit the uploaded filesize to the downloaded fixes this.
I was going to say that it'd be better to fix U-Boot's NAND code to transfer the correct amount of data. However, I suppose the correct amount *is* the whole partition for anything other than a filesystem file. As such, I'd suggest replacing "nand" in the patch description with something else, since presumably the exact same issue applies to partitions on eMMC. The issue applies to any partition.
Yes, you are right.
I wonder if there's a way to distinguish between file tests and partition tests in dfu_gadget_test.sh, so that the $N_FILE_FULL -> $N_FILE conversion can be applied only for partitions. Otherwise, a file upload/download test could end up changing (increasing) the file length and this bug wouldn't be detected.
Lukasz could better comment on this ... currently filesize is changed on a raw partition, as the test download for example 960 bytes, and reads back the hole partition size ... which leads in a wrong md5sum.
It would be good to have in the DFU protcol a length parameter ... so a device could at transfer start decide, if the filesize fits into the partition, if not, no need to tranfser the hole file, and detect this error at the end (with a broken partition now) ...
bye, Heiko