<-- Warning: charset 'ks_c_5601-1987' is not supported -->
Hi everyone !
I have ported the YAFFS on Samsung NAND 64MBytes.
Temporarily I use the EXT2 for Root file system and I want to use the YAFFS for data region.
But I found the problem that corrupt data is occurred input file from data region, YAFFS.
I use the MTD application, nanddump (about 4KB) for explaining at this example.
Another sample binary files apear the same situation.
I put the nanddump_CP on Root file system and copy from Root FS to data region (YAFFS).
And I put the same file, nanddump_yaffs has another file name, on data region (YAFFS) using the mkyaffs.
Of cource, YAFFS image made using the mkyaffsimage.
The nanddump is operated correctly, but nanddump1 is not operated.
Also another sample files are not operated in case of using the mkyaffs.
If I see the low level data of NAND memory using nanddump,
512 bytes data region of nanddump and nanddump1 are same except file header information and OOB data.
But if I test the coparision using cat command, two files are not same and some bytes are corrupted.
The file (nanddump_CP) that copy from Root FS on using the YAFFS is correct.
I attached two files here. But I'm not used the NAND ECC data in two files.
<<nanddump_yaffs>> <<nanddump_CP>>
And the following files are the information that displayed on using the cat command.
Some data are corrupted in the first part of two files.
<<nanddump_yaffs.txt>> <<nanddump_CP.txt>>
Also I include the /proc/yaffs information.
# cat /proc/yaffs
YAFFS built:Jan 29 2004 19:20:46
$Id: yaffs_fs.c,v 1.32 2003/10/29 20:42:34 charles Exp $
$Id: yaffs_guts.c,v 1.33 2003/11/16 07:40:42 charles Exp $
Device yaffs
startBlock......... 1
endBlock........... 3775
chunkGroupBits..... 1
chunkGroupSize..... 2
nErasedBlocks...... 3774
nTnodesCreated..... 100
nFreeTnodes........ 96
nObjectsCreated.... 100
nFreeObjects....... 93
nFreeChunks........ 120777
nPageWrites........ 15
nPageReads......... 66
nBlockErasures..... 0
nGCCopies.......... 0
garbageCollections. 0
passiveGCs......... 0
nRetriedWrites..... 0
nRetireBlocks...... 0
eccFixed........... 0
eccUnfixed......... 0
tagsEccFixed....... 0
tagsEccUnfixed..... 3775
cacheHits.......... 8
nDeletedFiles...... 0
nUnlinkedFiles..... 0
nBackgroudDeletions 0
useNANDECC......... 1
Please, help me!!!
I have developed the some day, but I don't know why it is corruped for data on using mkyaffs.
Best regards,
# cat nanddump_yaffs
xLT@ t
<
<
° åâ!à âëðG-@ á` áTãð5å?0àè>â
0C?0åèÊÐååà ãå ãp?ååà ã^âå, E?P
åà?å ã©Aëø åR?å
S
R?å
S
<åà?å ?/ ãåp?å
åà{?å ãëôÀ ãå
áìàåàÀå??T á
å ál? å0bàì0å0å á
å á`?@å ãpd
å áY@ á ãå áT@à@?@åPåàH ãP@å ãM0å å0åR* ãF å0åÓä0å ã?åE?ëð3åyP ?åà?å(?åPåXáÞ*¼cåå@à?å á?åt`å,?À
P
åà?å,?å* ã$??^?
å Y?ªt åPâÀ 0Üç`âlPåPâ`På
Pâd å â\`å?
`âHPå^âX å|PE?`å
â`âL å âD`åâpPå? Üç@â8 åÜçå áàÜ?@?åh@â@è@ÜçPÜç?å@å à`??`åàÜ@Üç??`å`Üç`åX?àÜ?`å ?`ÜçP??`åL`åÜçH?pÜç`ÜçD??åÀÜà
På@å(å,på0`å4ÀåÇ?å< ãå?åYá¨ÿÿ?å á?åëìååàå? ååå?0åP? å à@ å?å
åà?å?å ã?@åTãø åB
^â|PER?På%À`Üå á Úç0Üå4`åPÜåàÜ@?å`Üå
`åPÜåPå`Üå`PÜåPå `Üå`å
PÜå På
`Üå$`å
`Üå,`ååÀÜà?@å0À??å< ãÀPÜå ÚçÜå0ÜåàÜ@?å`Üå
`ååÀÜà<å?@åÀå`?å0 ãåV?åàR?À??\?À?ÿÿ:å[?åY ã?âð½
DM P\AdM
?tlibc-xflat.sop_startmainioctlprintfperrortolowerstrtouê¼??ê¸Át_varpê´Áê°Áê¬Á?ê¨Áê¤Á?ÿÿêð@-tc_unlockedexitopencloseØÁåêÔÁêÐÁêÌÁêÈÁêÄÁêÀÁ
@ áp ãêð@-
@ áp ãÁå
`ààâÀ ?ÀF\
`âVáøÿÿ: ãïpÆå??àà?
?
?????@à
P på?? ??ààà?
ààà?
???ÀÖ\ÀL\ÀÆÀÆ?½è?-
@ áp ã?å`à??àà?
?
?????@à
P på?? ??ààà?
ààà?
???åð½è ,8DP\ht`usage: %s <mtdname> <dumpname> [start addr] [length]
open flashMEMGETINFOUnknown flash (not normal NAND)
open outfileoobblock: %d
Would you like formatted output? Dumping data starting at 0x%08x and ending at 0x%08x...
pread0x%08x: %02x %02x %02x %02x %02x %02x %02x %02x %02x %02x %02x %02x %02x %02x %02x %02x
Dumping %lx
ioctl(MEMREADOOB) OOB Data: %02x %02x %02x %02x %02x %02x %02x %02x %02x %02x %02x %02x %02x %02x %02x %02x
OOB Data: %02x %02x %02x %02x %02x %02x %02x %02x
?@,@8@D@P@\@h@t@@@@@@@#
# cat nanddump_CP
xFLT@ t
<
<
° åâ!à âëðG-@ á` áTãð5å?0àè>â
0C?0åèÊÐååà ãå ãp?ååà ã^âå, E?P
åà?å ãëø åR?å
S
R?å
S
<åà?å ?/ ãåp?å
åà{?å ãëôÀ ãå
áìàåàÀå??T á
å ál? å0bàì0å0å á
å á`?@å ãpd
å áY@ á ãå áT@à@?@åPåàH ãP@å ãM0å å0åR* ãF å0åÓä0å ã?åE?ëð3åyP ?åà?å(?åPåXáÞ*¼cåå@à?å á?åt`å,?À
P
åà?å,?å* ã$??^?
å Y?ªt åPâÀ 0Üç`âlPåPâ`På
Pâd å â\`å?
`âHPå^âX å|PE?`å
â`âL å âD`åâpPå? Üç@â8 åÜçå áàÜ?@?åh@â@è@ÜçPÜç?å@å à`??`åàÜ@Üç??`å`Üç`åX?àÜ?`å ?`ÜçP??`åL`åÜçH?pÜç`ÜçD??åÀÜà
På@å(å,på0`å4ÀåÇ?å< ãå?åYá¨ÿÿ?å á?åëìååàå? ååå?0åP? å à@ å?å
åà?å?å ã?@åTãø åB
^â|PER?På%À`Üå á Úç0Üå4`åPÜåàÜ@?å`Üå
`åPÜåPå`Üå`PÜåPå `Üå`å
PÜå På
`Üå$`å
`Üå,`ååÀÜà?@å0À??å< ãÀPÜå ÚçÜå0ÜåàÜ@?å`Üå
`ååÀÜà<å?@åÀå`?å0 ãåV?åàR?À??\?À?ÿÿ:å[?åY ã?âð½
DM P\AdM
?tlibc-xflat.sop_startmainioctlprintfperrortolowerstrtouê¼Á?ê¸Át_varpê´Áê°Áê¬Á?ê¨Áê¤Á?ÿÿêð@-tc_unlockedexitopencloseØÁåêÔÁêÐÁêÌÁêÈÁêÄÁêÀÁ
@ áp ãêð@-
@ áp ãÁå
`ààâÀ ?ÀF\
`âVáøÿÿ: ãïpÆå??àà?
?
?????@à
P på?? ??ààà?
ààà?
???ÀÖ\ÀL\ÀÆÀÆ?½è?-
@ áp ã?å`à??àà?
?
?????@à
P på?? ??ààà?
ààà?
???åð½è ,8DP\ht`usage: %s <mtdname> <dumpname> [start addr] [length]
open flashMEMGETINFOUnknown flash (not normal NAND)
open outfileoobblock: %d
Would you like formatted output? Dumping data starting at 0x%08x and ending at 0x%08x...
pread0x%08x: %02x %02x %02x %02x %02x %02x %02x %02x %02x %02x %02x %02x %02x %02x %02x %02x
Dumping %lx
ioctl(MEMREADOOB) OOB Data: %02x %02x %02x %02x %02x %02x %02x %02x %02x %02x %02x %02x %02x %02x %02x %02x
OOB Data: %02x %02x %02x %02x %02x %02x %02x %02x
?@,@8@D@P@\@h@t@@@@@@@#