Mount of jffs2 partition fails
Robin Gilks
robin.gilks at tait.co.nz
Wed Oct 15 17:34:10 EDT 2003
David Woodhouse wrote:
> On Tue, 2003-10-14 at 17:53 +0000, Robin Gilks wrote:
>
>
>>/ # mount -t jffs2 /dev/mtdblock1 /mnt
>>Write clean marker to block at 0x000d0000 failed: -30
>
>
> -30 is also -EROFS but we don't normally see it there so we don't have a
> nice helpful message telling you the reason :)
>
> I have no clue why your flash allows erases but not writes. This is a
> flash hardware/driver problem, not JFFS2. Can you do more testing on the
> raw /dev/mtd0 device itself using
> read/write/ioctl(MEMERASE)/ioctl(MEMUNLOCK) to see what you need to do
> to make it work?
I've concluded that the ST chip I'm using, although being Intel command
set compatible, requires a different approach. That being the case I
enabled the ST chip option and on booting I now get the following.
Physically mapped flash: Found 1 x16 devices at 0x0 in 16-bit mode
kmod: failed to exec /sbin/modprobe -s -k cfi_cmdset_0003, errno = 2
Support for command set 0003 not present
gen_probe: No supported Vendor Command Set found
kmod: failed to exec /sbin/modprobe -s -k jedec_probe, errno = 2
kmod: failed to exec /sbin/modprobe -s -k map_rom, errno = 2
The items to note here are
1. cfi_cmdset_0003 does not exist, its replaced (as far as I can see) by
cfi_cmdset_0020
2. I'm not using any modules so why is the kernel trying to load some!!
3. when I try to use the alternate Jedec probe method, I get a compile
error in jedec_probe.c of:
jedec_probe.c:1756: error: parse error before "jedec_probe_init"
jedec_probe.c:1757: warning: return type defaults to `int'
jedec_probe.c:1762: error: parse error before "jedec_probe_exit"
jedec_probe.c:1763: warning: return type defaults to `int'
jedec_probe.c:1767: warning: type defaults to `int' in declaration of
`module_init'
jedec_probe.c:1767: warning: parameter names (without types) in function
declaration
jedec_probe.c:1767: warning: data definition has no type or storage class
jedec_probe.c:1768: warning: type defaults to `int' in declaration of
`module_exit'
jedec_probe.c:1768: warning: parameter names (without types) in function
declaration
jedec_probe.c:1768: warning: data definition has no type or storage class
I take it that the code concerned has only ever been tested as modules?
I'll try that in the meantime but that will require major work on my
root filesystem :-((
--
Robin Gilks
Senior Design Engineer Phone: (+64)(3) 357 1569
Tait Electronics Fax : (+64)(3) 359 4632
PO Box 1645 Christchurch Email : robin.gilks at tait.co.nz
New Zealand
More information about the linux-mtd
mailing list