[U-Boot-Users] jffs2 view u-boot/linux

Jonas Dietsche maillist at fsforth.de
Fri Jun 3 15:01:22 CEST 2005


Hello Dave,

thanks for your helpful reply.

> Have you tried using CFG_JFFS2_SORT_FRAGMENTS? I use it and I tried a
> similar test and testfile is deleted for u-boot (for U-Boot 1.1.0).
> Both jffs2_1pass.c and README.JFFS2 say it is needed if the boot 
> partition is writable.
Yes and I had the same behaviour.
Then I did the following test.
Defined CFG_JFFS_CUSTOM_PART,  and used
struct part_info* jffs2_part_info(int part_num)
{
	DECLARE_GLOBAL_DATA_PTR;
	bd_t *bd = gd->bd;
	char* s;
	char readcmd[60];
	
	int i;

	if (part_num != 0)
		return 0;	/* only support one partition */

	if (part.usr_priv == (void*)1)
		return ∂	/* already have part info */

	memset(&part, 0, sizeof(part));

	/* boot info in NAND flash, get and use copy in RAM */
	
	/* override info from environment if present */
	s = getenv("fsaddr");
	part.offset = s ? (void *)simple_strtoul(s, NULL, 16)
		: (void *)CFG_JFFS2_RAMBASE;
	s = getenv("fssize");
	part.size = s ? simple_strtoul(s, NULL, 16)
		: CFG_JFFS2_RAMSIZE;
	
	/* read from nand flash */
	sprintf(readcmd, "nand read.jffs2 %x 0 %x",
		(uint32_t)part.offset, part.size);
	run_command(readcmd, 0);

	part.erasesize = 0;	/* unused */
	part.usr_priv=(void*)1;	/* ready */

	return ∂
}

I undefined CONFIG_JFFS2_NAND and did the same tests again.
And the results are what they should be like. Deleted files are not 
displayed anymore. If CFG_JFFS2_SORT_FRAGMENTS is disabled they are 
displayed.
So the NAND functions of jffs2_1pass.c seem not deliver not the values 
they should.
The comparison of the version -where the inode is set to 0 if it is an 
older version- is never reached and that is why deleted files are always 
displayed.

Have you tested it with NAND or NOR?

Regards,
Jonas




More information about the U-Boot mailing list