JFFS problems for the Am29LV065D
Luke
luke_epsilon at yahoo.com
Sat Aug 25 01:35:26 EDT 2001
Hello,
I have "successfully" gotten linux to recognize my second flash chip. The system I am building
has 2 flash chips with the first one containing the kernel, initrd, and bios and some room for
some data. I have decided for the moment to get this 2nd flash chip working before trying to
partition the first one to use a middle chunk for data storage.
Upon booting I see:
physmap flash device: 800000 at 10000000
Physically mapped flash: Found 1 x8 devices at 0x0 in 8-bit mode
Amd/Fujitsu Extended Query Table v1.1 at 0x0040
number of CFI chips: 1
mtd: Giving out device 0 to Physically mapped flash
and if I cat /proc/mtd I see:
dev: size erasesize name
mtd0 00800000 00010000 "physically mapped flash"
I created a mount point at /mnt/flash1 and then mounted:
#mount -t jffs2 /dev/mtdblock0 /mnt/flash1
mtdblock_open
ok
JFFS2: Erase black at 0x00000000 is not formatted. It will be erased
JFFS2: Erase black at 0x00000000 is not formatted. It will be erased
JFFS2: Erase black at 0x00000000 is not formatted. It will be erased
...
...
JFFS2: Erase black at 0x007e0000 is not formatted. It will be erased
JFFS2: Erase black at 0x007f0000 is not formatted. It will be erased
#df -k
Filesystem 1k-blocks Used Available Use% Mounted on
/dev/ram0 3963 711 3252 18% /
/dev/mtdblock0 8192 0 8192 0% /mnt/flash1
I then proceeded to unmount (which took 3-4 minutes)
I then decided to mount again and see what happened:
#mount -t jffs2 /dev/mtdblock0 /mnt/flash1
mtdblock_open
ok
jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x000f0000: 0x8366 instead
jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x000f0004: 0xfb59 instead
jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x000f0008: 0xcb24 instead
jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x000f000c: 0xb964 instead
jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x000f0010: 0x21d2 instead
jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x000f0014: 0xb734 instead
jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x000f0018: 0x5cd7 instead
jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x000f001c: 0x3b29 instead
jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x000f0020: 0x0eaf instead
jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x000f0024: 0xf64d instead
Further such events for this erase block will not be printed
JFFS2: Erase block at 0x000f0000 is not formatted. It will be erased
#
# df -k
Filesystem 1k-blocks Used Available Use% Mounted on
/dev/ram0 3963 711 3252 18% /
/dev/mtdblock0 8192 388 7804 5% /mnt/flash1
#
# waiting for erase to complete timed out.<4>Erase at 0x000f0000 failed immediately: -5
#
Is this 388 Used supposed to be there? Is this some space that jffs2 has grabbed for its use?
I then created a 1 line test file and tried to copy it over and got this:
# cp test /mnt/flash1
Waiting for chip to read, status = 4
---
At this point my system is completely hung (at least it has been
waiting to copy for over 30 minutes and I can't break out.)
At this point, I need to hard reset and reboot. :-(
Any ideas on what is wrong? I am using the mtd cvs snapshot from 8-24-01 and kernel 2.4.8-ac9
(patched with the mtd snapshot).
The flash chip is a Am29LV065D:
- 64 Megabit (8M x 8-bit)
- uniform sector flash memory
- 128 64 Kbyte sectors
- CFI compliant
Thanks,
Luke
ps. What does the following line from the linux boot mean anyway - was this something detected?
"Amd/Fujitsu Extended Query Table v1.1 at 0x0040"
__________________________________________________
Do You Yahoo!?
Make international calls for as low as $.04/minute with Yahoo! Messenger
http://phonecard.yahoo.com/
More information about the linux-mtd
mailing list