This is the mail archive of the ecos-discuss@sources.redhat.com mailing list for the eCos project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

cannot mount effs2 filesystem at boot


Hi, i'm writing an application for the xscale pxa architecture. It's a sort of
shell which runs on eCos - it is linked against the eCos build. On the xscale
board there is a flash memory where i used to store a RomFS image, and it worked
well with my application; ecos successfully mounted it under the root directory.
Now i'm trying to use jffs2 to implement a 'create' command in my shell, but i
don't find how to mount the filesystem under the root directory at boot. I tried
to modify packages/fs/jffs2/v2_0/src/fs-ecos.c adding this:

#define FS_BASE_ADDRESS 0x50300000 // address of the image in flash

  MTAB_ENTRY(	jffs2_mte,	// structure name
 		"/",		  // mount point
 		"jffs2",	// Filesystem type
 		"/dev/flash", // hardware device
    (CYG_ADDRWORD) FS_BASE_ADDRESS	// Address in ROM
   );

It compiles, but doesn't work. I then compiled and ran the jffs2 test program
and this is the output:

RedBoot> go
<5>jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00000000: 0x6972
instead
<5>jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00000004: 0x7542
instead
<5>jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00000008: 0x7265
instead
<5>jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x0000000c: 0x002c
instead
<5>jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00000010: 0x2800
instead
<5>jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00000014: 0x0001
instead
<5>jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00000018: 0x7465
instead
<5>jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x0000001c: 0x6f63
instead
<5>jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00000020: 0x676e
instead
<5>jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00000024: 0x2814
instead
<5>Further such events for this erase block will not be printed
<4>Empty flash at 0x0000d1e0 ends at 0x0000d1e4
<4>Empty flash at 0x0001598c ends at 0x00015990
<4>Empty flash at 0x00018cf4 ends at 0x00018cf8
<4>Empty flash at 0x00019cb0 ends at 0x00019cb4
<4>Empty flash at 0x0001ac80 ends at 0x0001ac84
<4>Empty flash at 0x0001b184 ends at 0x0001b188
<4>Empty flash at 0x00039928 ends at 0x0003992c
<5>jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00040004: 0x0001
instead
<5>jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00040008: 0x5454
instead
<5>jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x0004000c: 0x4142
instead
<5>jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00040010: 0x454d
instead
<5>jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00040014: 0x444f
instead
<5>jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00040018: 0x0100
instead
<5>jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x0004001c: 0x1000
instead
<5>jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00040020: 0x5054
instead
<5>jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00040024: 0x4441
instead
<5>jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00040028: 0x5145
instead
<5>Further such events for this erase block will not be printed
<5>jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00080000: 0x0400
instead
<5>jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00080004: 0x4929
instead
<5>jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00080008: 0x6707
instead
<5>jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x0008000c: 0x6f4c
instead
<5>jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00080010: 0x0001
instead
<5>jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00080014: 0x2949
instead
<5>jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00080018: 0x0900
instead
<5>jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x0008001c: 0x4f74
instead
<5>jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00080020: 0x6365
instead
<5>jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00080024: 0x1500
instead
<5>Further such events for this erase block will not be printed
<4>Empty flash at 0x0008c4c4 ends at 0x0008c4c8
<4>Empty flash at 0x0008c4cc ends at 0x0008c4d0
<5>jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x000c0000: 0x0001
instead
<5>jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x000c0004: 0x2b00
instead
<5>jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x000c0008: 0x616a
instead
<5>jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x000c000c: 0x752f
instead
<5>jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x000c0010: 0x2f6c
instead
<5>jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x000c0014: 0x6b6e
instead
<5>jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x000c0018: 0x694c
instead
<5>jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x000c001c: 0x4c3b
instead
<5>jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x000c0020: 0x6176
instead
<5>jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x000c0024: 0x6e61
instead
<5>Further such events for this erase block will not be printed
<5>Cowardly refusing to erase blocks on filesystem with no valid JFFS2 nodes
<5>empty_blocks 0, bad_blocks 0, c->nr_blocks 4
<FAIL>: mount() returned -1 I/O error

It seems is looks for a filesystem in the wrong position. Maybe i have to use
another device? I tried /dev/mtd but with no success.


--
Before posting, please read the FAQ: http://ecos.sourceware.org/fom/ecos
and search the list archive: http://ecos.sourceware.org/ml/ecos-discuss


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]