Hi, I'm trying to track down a "syntax error" issue that gets triggered when erasing the U-Boot image in NOR flash. Symptoms look like this:
=> print update update=protect off 0xfc000000 +${filesize};erase 0xfc000000 +${filesize};cp.b 200000 0xfc000000 ${filesize};protect on 0xfc000000 +${filesize} => run update Un-Protected 2 sectors .. done Erased 2 sectors syntax error Protected 2 sectors => run update syntax error git bisect found commit 199adb6 "common/misc: sparse fixes" as culprit; breaking this down further showed a single line in common/cli_hush.c to trigger the problem. This patch fixes it: --- common/cli_hush.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/common/cli_hush.c b/common/cli_hush.c index 38da5a0..5bbcfe6 100644 --- a/common/cli_hush.c +++ b/common/cli_hush.c @@ -3127,7 +3127,7 @@ static void mapset(const unsigned char *set, int code) for (s=set; *s; s++) map[*s] = code; } -static void update_ifs_map(void) +void update_ifs_map(void) { /* char *ifs and char map[256] are both globals. */ ifs = (uchar *)getenv("IFS"); -- 1.8.3.1 But I still have bad feelings - symptoms indicate that this is actually a relocation issue, as it only gets triggered when erasing the U-Boot image in NOR flash, so probably there are still pointers to data in NOR being used. This patch here is not suited to fix the original cause of this issue. But then, I do not see where there might be a relocation problem. To be sure I even verified that "ifs" and "map[]" are really in RAM all the time. Has anybody an idea how to further track this down? Or is the patch above actually a real fix? If so, why? Best regards, Wolfgang Denk -- DENX Software Engineering GmbH, MD: Wolfgang Denk & Detlev Zundel HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany Phone: (+49)-8142-66989-10 Fax: (+49)-8142-66989-80 Email: w...@denx.de Old programmers never die, they just branch to a new address. _______________________________________________ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot