JFFS2 for ST M29W320DT

Yuzuru Nitta nitta at hht.co.jp
Wed Feb 25 21:19:59 EST 2004


Hi all,

I am trying to install an JFFS2 filesystem on our original 
board(CPU SH3).

It is fine about jffs2 filesystem on "ST M29W640DT",
but it doesn't work very well about "ST M29W320DT" ...


Here is the memory map(FlashROM).
/---------------------------------------------------------
   address               size   device          buswidth
/---------------------------------------------------------
0x00000000 - 0x01FFFFFF  32MB   ST M29W640DT x4  (32bit)
/---------------------------------------------------------
0x02000000 - 0x027FFFFF  8MB    ST M29W320DT x2  (32bit)
/---------------------------------------------------------


The boot log is:
/============================================================================
Kernel command line: root=/dev/mtdblock2 sh_mv=ToughSoB console=ttySC2,115200
ether=11,0x300,0,0,eth0

...

JFFS2 version 2.1. (C) 2001 Red Hat, Inc., designed by Axis
Communications AB.

...

TOUGHSOB FLASH: Found 2 x16 devices at 0x1000000 in 32-bit mode
 Amd/Fujitsu Extended Query Table v0.3 at 0x0040
TOUGHSOB FLASH: JEDEC Device ID is 0xDE. Assuming broken CFI table.
TOUGHSOB FLASH: Swapping erase regions for broken CFI table.
number of CFI chips: 2
cfi_cmdset_0002: Disabling fast programming due to code brokenness.
 Amd/Fujitsu Extended Query Table v1.0 at 0x0040
TOUGHSOB FLASH(LOG AREA): JEDEC Device ID is 0xCA. Assuming broken CFI table.
TOUGHSOB FLASH(LOG AREA): Swapping erase regions for broken CFI table.
number of CFI chips: 1
cfi_cmdset_0002: Disabling fast programming due to code brokenness.
Creating 3 MTD partitions on "TOUGHSOB FLASH":
0x00000000-0x00020000 : "IPL"
mtd: Giving out device 0 to IPL
0x00020000-0x00120000 : "KERNEL IMAGE"
mtd: Giving out device 1 to KERNEL IMAGE
0x00120000-0x02000000 : "FS IMAGE"
mtd: Giving out device 2 to FS IMAGE
Creating 1 MTD partitions on "TOUGHSOB FLASH(LOG AREA)":
0x00000000-0x00800000 : "LOG AREA"
mtd: Giving out device 3 to LOG AREA

....

ToughSoB login:
/============================================================================

And, I mounted the LOG AREA ...

/============================================================================
> mount -t jffs2 /dev/mtdblock3  /mnt/mtd3
root at ToughSoB:~# mount -t jffs2 /dev/mtdblock3 /mnt/mtd3/mtdblock_open
ok
jffs2_scan_eraseblock(): Node at 0x00000000 {0x1985, 0xe002, 0x0000002b) has invalid CRC 0xfddb6ee6 
(calculated 0xfbb21c48)
jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00000004: 0x002b instead
jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00000008: 0x6ee6 instead
jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x0000000c: 0x0001 instead
jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00000014: 0x0002 instead
jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00000018: 0x4762 instead
jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x0000001c: 0x0403 instead
jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00000020: 0x0065 instead
jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00000024: 0xa45a instead
jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00000028: 0x6d74 instead
Further such events for this erase block will not be printed
Old JFFS2 bitmask found at 0x000082b8
You cannot use older JFFS2 filesystems with newer kernels
JFFS2: Erase block at 0x00000000 is not formatted. It will be erased

...

JFFS2: Erase block at 0x00020000 is not formatted. It will be erased

...
...
...

JFFS2: Erase block at 0x005e0000 is not formatted. It will be erased
Inode #6 was a directory with children - removing those too...
Inode #12 was a directory with children - removing those too...
Inode #13 was a directory with children - removing those too...
Inode #14 was a directory with children - removing those too...
Inode #45 was a directory with children - removing those too...
Inode #46 was a directory with children - removing those too...
Inode #49 was a directory with children - removing those too...
Inode #50 was a directory with children - removing those too...
Inode #51 was a directory with children - removing those too...
root at ToughSoB:~# Newly-erased block contained word 0x2003ffff at offset 0x00660000
Newly-erased block contained word 0x2003ffff at offset 0x00640000
root at ToughSoB:~#
/============================================================================

so, I copy some textfile to /mnt/mtd3 ,and remount /mnt/mtd3,
I get the following message ...

/============================================================================
root at ToughSoB:/mnt/mtd3# ls -l
Unknown INCOMPAT nodetype FFFF at 005613B8

...

Unknown INCOMPAT nodetype FFFF at 00560558
jffs2_read_inode(): No data nodes found for ino #652
ls: sometextfile: Input/output error
total 0
root at ToughSoB:/mnt/mtd3# 
/============================================================================


I just mistake making 'Mapping drivers for chip access' ?
I can't find where the plobrem is.


Thanks
Joe

---
Yuzuru (Joe) Nitta
HIJI HIGH-TECH CO.,LTD.
System Solution Group

mailto: nitta at hht.co.jp
http://www.hht.co.jp




More information about the linux-mtd mailing list