[U-Boot-Users] Problem with JFFS2 summary on NOR-flash

Hello, I tried to use the summary feature of JFFS2 on NOR-flash and ended up with U-boot failing to read the filesystem. The reason for this turned out to be that the JFFS2 scanning code in U-boot makes a write to the flash memory area.
Unlinked dirents are not marked obsolete when summary is enabled and this leads U-Boot to the line "jOld->ino = 0;" in compare_dirents(). jOld points to flash memory in the case of NOR-flash.
Without dcache this problem is not noticed as 0x00 seems to be a NOOP. But with dcache you get either an exception if you have ROM protection enabled or the flash chip might flip into read query mode when the cache line is written. The latter happened for me.
I tried implementing get_fl_mem() with malloc() similar to the NAND code but this made things VERY slow. I'm guessing that removing the problematic line and making the code somehow sort out the highest version of the dirents is better?
Regards, Anders
participants (1)
-
Anders Grafstrom