From a7ce2ef8da47f68d3b866cf61ec2889d7906d55e Mon Sep 17 00:00:00 2001 From: mvoelkel Date: Fri, 24 Feb 2017 15:27:14 +0100 Subject: [PATCH] Verify flash after writing --- apps/octonet/ddflash.c | 21 +++++++++++++-------- 1 file changed, 13 insertions(+), 8 deletions(-) diff --git a/apps/octonet/ddflash.c b/apps/octonet/ddflash.c index 3205a9c..5d35c55 100644 --- a/apps/octonet/ddflash.c +++ b/apps/octonet/ddflash.c @@ -510,12 +510,12 @@ static int check_fw(struct ddflash *ddf, char *fn, uint32_t *fw_off) goto out; } } else if (!strcasecmp(key, "Version")) { - if (strchr(val,'.')) { - int major = 0, minor = 0; - sscanf(val,"%d.%d",&major,&minor); - version = (major << 16) + minor; - } else - sscanf(val, "%x", &version); + if (strchr(val,'.')) { + int major = 0, minor = 0; + sscanf(val,"%d.%d",&major,&minor); + version = (major << 16) + minor; + } else + sscanf(val, "%x", &version); } else if (!strcasecmp(key, "Length")) { sscanf(val, "%u", &length); } @@ -570,8 +570,13 @@ static int update_image(struct ddflash *ddf, char *fn, if (res < 0) goto out; res = flashwrite(ddf, fs, adr, len, fw_off); - if (res == 0) - res = 1; + if (res == 0) { + res = flashcmp(ddf, fs, adr, len, fw_off); + if (res == -2) { + res = 1 + } + } + out: close(fs); return res;