Hi guys,
 
I just follow this command to mount yaffs img to a flash, but i just see lost+found directory. Can anyone see whats wrong with it? Thank you,
 

Setup environment

1 . Install mtd tools

sudo apt-get install mtd-utils

 

2. Install ¡°git¡± tool for download

sudo apt-get install git-core

 

3. Download newest yaffs2 filesystem code

sudo git clone git://www.aleph1.co.uk/yaffs2

 

Config yaffs2 filesystem

1. Generate yaffs.ko

cd xxx/yaffs2

cp ./ yportenv_multi.h ./yportenv.h

sudo make modules

These commands will generate yaffs2multi.ko

 

2. Insmod needed ko files

sudo modprobe mtd

sudo modprobe mtdchar

sudo modprobe mtdblock

cd xxx/yaffs2

insmod ./yaffs2multi.ko

Then, use ¡°cat /proc/filesystem ¡°, you will see that ¡°yaffs2¡± file system is listed in the supported filesystem.

 

3. Use nandsim to generate a simulated nand flash device

sudo modprobe nandsim first_id_byte=0x20 second_id_byte=0xa2 third_id_byte=0x00 fourth_id_byte=0x15

 

Generate a yaffs2image using mkyaffs2image

1. Create rootfs

Create  ¡°rootfs¡± dir anywhere, and add bin/, etc/, lib/, root/, tmp/  subdirectory,  ¡°hello.txt¡± file.

2. Generate

xxx/mkyaffs2image xxx/rootfs rootfs.image

The rootfs.image is needed to write to nand flash.

 

Mount yaffs2 image to nand flash

1. Erase flash

sudo flash_eraseall /dev/mtd0

 

2. Write image to flash

nandwrite -a -o /dev/mtd0 rootfs.image

 

3. Mount

Create xxx/yaffs2_mount

mount -t yaffs2 /dev/mtdblock0 xxx/yaffs2

cd xxx/yaffs2

You will see bin/, etc/, lib/, root/, tmp, and hello.txt, which are created when generating yaffs2 image file.