Hello,
I have mips board au1200 with a Samsung K9D1208V 64MB NAND flash which
is 528bytes/page and nor flash with 31M.
i have established a jffs2 filesystem as root filesystem in nor flash with 31M ,
my sytem is ok if only use nor flash . now i plan to mount nand flash under jffs2 filesystem .
I downloaded the newest yaffs code from "
http://www.aleph1.co.uk/cgi-bin/viewcvs.cgi/yaffs" and place it to
linux kernel 2.6.11. I select yafss and mtd support from muneconfig. After make, I got the error messages
at the end:
========================================================================================
[root@server linux2.6.hl]# make zImage
CHK include/linux/version.h
make[1]: `arch/mips/kernel/offset.s' is up to date.
CHK include/asm-mips/offset.h
CHK include/linux/compile.h
CHK usr/initramfs_list
CC fs/yaffs/yaffs_ecc.o
CC fs/yaffs/yaffs_fs.o
fs/yaffs/yaffs_fs.c:168: warning: initialization from incompatible pointer type
fs/yaffs/yaffs_fs.c: In function `yaffs_internal_read_super':
fs/yaffs/yaffs_fs.c:1280: warning: `dev' might be used uninitialized in this function
fs/yaffs/yaffs_fs.c: At top level:
fs/yaffs/yaffs_fs.c:690: warning: `yaffs_file_read' defined but not used
fs/yaffs/yaffs_fs.c:1492: warning: `yaffs_internal_read_super_ram' defined but not used
fs/yaffs/yaffs_fs.c:1562: warning: `my_proc_ram_write_entry' defined but not used
fs/yaffs/yaffs_fs.c:1636: warning: `yaffs_proc_ram_write' defined but not used
CC fs/yaffs/yaffs_guts.o
fs/yaffs/yaffs_guts.c: In function `yaffs_SoftDeleteWorker':
fs/yaffs/yaffs_guts.c:1120: warning: unused variable `chunkInInode'
fs/yaffs/yaffs_guts.c:1123: warning: unused variable `tags'
fs/yaffs/yaffs_guts.c:1124: warning: unused variable `found'
fs/yaffs/yaffs_guts.c:1125: warning: unused variable `chunkDeleted'
fs/yaffs/yaffs_guts.c: In function `yaffs_FlushFilesChunkCache':
fs/yaffs/yaffs_guts.c:3146: warning: unused variable `nBytes'
fs/yaffs/yaffs_guts.c:3142: warning: `lowest' might be used uninitialized in this function
fs/yaffs/yaffs_guts.c: At top level:
fs/yaffs/yaffs_guts.c:1922: warning: `yaffs_CheckObjectHashSanity' defined but not used
fs/yaffs/yaffs_guts.c:319: warning: `yaffs_CheckChunkErased' defined but not used
fs/yaffs/yaffs_guts.c:455: warning: `yaffs_RewriteBufferedBlock' defined but not used
fs/yaffs/yaffs_guts.c:484: warning: `yaffs_CheckWrittenBlock' defined but not used
fs/yaffs/yaffs_guts.c:2369: warning: `yaffs_DoUnlinkedFileDeletion' defined but not used
CC fs/yaffs/yaffs_mtdif.o
LD fs/yaffs/yaffs.o
LD fs/yaffs/built-in.o
LD fs/built-in.o
CC lib/zlib_inflate/infblock.o
CC lib/zlib_inflate/infcodes.o
CC lib/zlib_inflate/inffast.o
CC lib/zlib_inflate/inflate.o
CC lib/zlib_inflate/inftrees.o
CC lib/zlib_inflate/infutil.o
LD lib/zlib_inflate/zlib_inflate.o
LD lib/zlib_inflate/built-in.o
LD lib/built-in.o
CC lib/ctype.o
CC lib/string.o
AR lib/lib.a
AS arch/mips/lib/memcpy.o
AR arch/mips/lib/lib.a
GEN .version
CHK include/linux/compile.h
UPD include/linux/compile.h
CC init/version.o
LD init/built-in.o
LD .tmp_vmlinux1
fs/built-in.o(.text+0x92f74): In function `yaffs_internal_read_super':
: undefined reference to `nandmtd_WriteChunkToNAND'
fs/built-in.o(.text+0x92f78): In function `yaffs_internal_read_super':
: undefined reference to `nandmtd_WriteChunkToNAND'
fs/built-in.o(.text+0x92f7c): In function `yaffs_internal_read_super':
: undefined reference to `nandmtd_ReadChunkFromNAND'
fs/built-in.o(.text+0x92f80): In function `yaffs_internal_read_super':
: undefined reference to `nandmtd_ReadChunkFromNAND'
fs/built-in.o(.text+0x92f8c): In function `yaffs_internal_read_super':
: undefined reference to `nandmtd_EraseBlockInNAND'
fs/built-in.o(.text+0x92f90): In function `yaffs_internal_read_super':
: undefined reference to `nandmtd_EraseBlockInNAND'
fs/built-in.o(.text+0x92f94): In function `yaffs_internal_read_super':
: undefined reference to `nandmtd_InitialiseNAND'
fs/built-in.o(.text+0x92f98): In function `yaffs_internal_read_super':
: undefined reference to `nandmtd_InitialiseNAND'
make: *** [.tmp_vmlinux1] Error 1
what is somthing wrong ?
=========================================================================
then i downloaded the newest yaffs2
the following is my steps :
all of transport is passed
1. i boot my board using jffs2 filesystem as root filesystem
# cat /proc/mtd
dev: size erasesize name
mtd0: 03c00000 00020000 "User11 FS"
mtd1: 00100000 00020000 "YAMON"
mtd2: 002c0000 00020000 "raw kernel"
mtd3: 00800000 00004000 "NAND FSa 0"
mtd4: 03800000 00004000 "NAND FSa 1"
2. using the tools "flash_eraseall /dev/mtd6 ",passed
3. # mount -tyaffs /dev/mtdblock4 /mnt/
yaffs: dev is 32505860 name is "mtdblock4"
yaffs: Attempting MTD mount on 31.4, "mtdblock4"
4. then there are erros when copying data to mnt's directory
the questions :
when copy less 120k data , no errors,and the data is correct after i reboot
however , copying more 100k data ,there are the following errors:
===========================================
**>>mtd ecc error unfixed on chunk 113984:0
**>>mtd ecc error unfixed on chunk 113984:1
**>>Block 3562 marked for retirement
**>> yaffs chunk 114016 was not erased
**>> Erasure failed 3563
**>> Block 3563 retired
......
**>> yaffs chunk 416 was not erased
**>> Erasure failed 13
......
yaffs tragedy: no more eraased blocks
!!!!!!!!! Allocator out !!!!!!!!!!!!!!!!!
......
**>>mtd ecc error unfixed on chunk 1375:0
**>>mtd ecc error unfixed on chunk 1375:1
**>>Block 42 marked for retirement
yaffs tragedy: no more eraased blocks
!!!!!!!!! Allocator out !!!!!!!!!!!!!!!!!
=========================================
then i try to exc command "df"
/mnt # df
Filesystem 1k-blocks Used Available Use% Mounted on
/dev/mtdblock0 61440 27308 34132 44% /
tmpfs 512 60 452 12% /var
/dev/loop1 1244 1244 0 100% /root/test
/dev/mtdblock4 57344 57344 0 100% /mnt
exc command "reboot"
/mnt #df
Filesystem 1k-blocks Used Available Use% Mounted on
/dev/mtdblock0 61440 27308 34132 44% /
tmpfs 512 60 452 12% /var
/dev/loop1 1244 1244 0 100% /root/test
/dev/mtdblock4 57344 57344 0 100% /mnt
why ...
what is somthing wrong ?
please help me out ...
howhowwork
2006-12-13
howhowwork
2006-12-13