Thanks with my great appreciation. Your reply is  much helpful.



2007/3/22, Glen Johnson <[EMAIL PROTECTED]>:

Yue Han wrote:
> Greetings
> My question as the subject.
>
> Here is the course what give me the question.
>
> When is use my jffs2 fs, the console  always tell me:
> ========
>     jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at
> 0x000e0000: 0x0101 instead
>     JFFS2: Erase block at 0x000e0000 is not formatted. It will be erased
> ========
> As the result, my flash cann't do any write command at all:
> ========
>     Last[2] is 1, datum is 85
>     Write clean marker to block at 0x000e0000 failed: -5
> ========
>
> My jffs2.img about 14 blocks(64K), it is 0xe0000 in to HEX.
> I's using 4M norflash, BASE_ADDRESS is 0xbfc00000.
> I'll put the jffs2.img to 0x40000.
> For test, I only give the os(mtd1) one block free space.
> So the mtd1 has 14+1 blocks.(0xf0000).
>
> The console information as below:
> =========
>     number of CFI chips: 1
>     Creating 3 MTD partitions on "Flash":
>     0x00000000-0x00040000 : "Bootloader"
>     mtd: Giving out device 0 to Bootloader
>     0x00040000-0x00130000 : "os"
>     mtd: Giving out device 1 to os
>     0x00130000-0x00400000 : "bkup"
> =========
>
> I dumped the flash at block 0xd0000:(0xbfcd10000 == 0xbfc00000 +
> 0x40000 + 0xd0000 , means this block has my jffs2.img )
>
>                             Memory Dump Result
>
==============================================================================
> 0xbfd10000 : 19 85 20 03 00 00 00 0c f0 60 dc 98 19 85 e0 02
> 0xbfd10010 : 00 00 06 80 6e bc 83 11 00 00 00 2c 00 00 00 08
> 0xbfd10020 : 00 00 81 ed 00 00 00 00 00 00 72 5c 45 b2 40 58
> 0xbfd10030 : 45 b2 40 58 45 b2 40 58 00 00 69 c4 00 00 06 3c
> 0xbfd10040 : 00 00 06 3c 00 00 00 00 d4 fd e1 04 d4 b0 ad b4
> 0xbfd10050 : 8c 21 ba 16 a9 02 e4 a1 7f 6e 48 b9 2b 82 ea dd
> 0xbfd10060 : 48 34 5a 18 d5 7a 54 89 0f ce 77 75 e5 67 95 cc
> 0xbfd10070 : 88 9f ec d4 b0 c7 9e e1 59 a9 66 6c 7c 56 c2 55
> 0xbfd10080 : 84 4d ee ae b8 41 a8 ed 28 a7 35 41 32 0b 9b 66
> 0xbfd10090 : 70 66 bb 2b a5 e2 c7 e0 2b f8 d8 be 52 e9 ee 62
> 0xbfd100a0 : 69 7f 71 df 81 42 e9 9e 89 fd 77 ef 29 e1 da 75
> 0xbfd100b0 : ad 59 db c9 c7 ed 9d 74 4e 5a 47 90 ec fb 7f 4c
> 0xbfd100c0 : aa 65 fe 89 ae 96 4a e2 c8 4f 9b b0 d6 5a e6 77
> 0xbfd100d0 : 7b af f5 f5 86 68 90 cc 44 ab ee a6 0a 72 5f bf
> 0xbfd100e0 : 3d e8 9f ed 03 5f 03 d7 b6 6c da bc e5 86 5f bb
> 0xbfd100f0 : 71 70 28 f7 eb 37 6d bd f9 96 e1 5b 7f e3 43 1f
>
==============================================================================
>
> then I dumped 0xe0000 where the error message placed:(0xbfd20000 ==
> 0xbfc00000 + 0x40000 + 0xe0000)
>
>                             Memory Dump Result
>
==============================================================================
> 0xbfd20000 : 01 01 ff ff ff ff ff ff ff ff ff ff ff ff ff ff
> 0xbfd20010 : ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
> 0xbfd20020 : ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
> 0xbfd20030 : ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
> 0xbfd20040 : ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
> 0xbfd20050 : ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
> 0xbfd20060 : ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
> 0xbfd20070 : ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
> 0xbfd20080 : ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
> 0xbfd20090 : ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
> 0xbfd200a0 : ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
> 0xbfd200b0 : ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
> 0xbfd200c0 : ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
> 0xbfd200d0 : ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
> 0xbfd200e0 : ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
> 0xbfd200f0 : ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
>
==============================================================================
>
> DOSE the bit mask error(0x1985) is the primary criminal who caused my
> jffs2 fs can't write?
>
> Is anyone can give me some advice? I am gonna crazy about this!!!
>
> Thank you!
>
>
>
>
> ------------------------------------------------------------------------
>
> _______________________________________________
> uClinux-dev mailing list
> [email protected]
> http://mailman.uclinux.org/mailman/listinfo/uclinux-dev
> This message was resent by [email protected]
> To unsubscribe see:
> http://mailman.uclinux.org/mailman/options/uclinux-dev
Mr. Han,
I too struggled with getting jffs2 working properly on my system.  Back
then a gentleman created this web page to help explain some of the
things that you are seeing.  So first read through this web page,
http://www.linux-mtd.infradead.org/faq/jffs2.html#L_magicnfound  .  I
found that it explained much of what you are seeing now.
In the end, I ended up making a small change to my map file.  The map
file I refer to is in uClinux-dist/linux-2.6.x/drivers/mtd/maps/
directory.  I eventually ended up modifying the file m520x.c to work for
me.  NOTE I am using an AMD29LV3200 flash chip.  Different flash chips
use different map driver files.  I had to dig around in this directory
until I found the right file for my chip set.
Lastly I ended up having to subtract one from the len of the flash in my
point() function.  I asked two mail lists about this but no one seems to
have an answer.  All I know is by subtracting one it forces the code to
read the flash.  Otherwise I can't find where it aught to read it.

Hope this is helpful,
Glen Johnson
_______________________________________________
uClinux-dev mailing list
[email protected]
http://mailman.uclinux.org/mailman/listinfo/uclinux-dev
This message was resent by [email protected]
To unsubscribe see:
http://mailman.uclinux.org/mailman/options/uclinux-dev

_______________________________________________
uClinux-dev mailing list
[email protected]
http://mailman.uclinux.org/mailman/listinfo/uclinux-dev
This message was resent by [email protected]
To unsubscribe see:
http://mailman.uclinux.org/mailman/options/uclinux-dev

Reply via email to