Re: [Yaffs] Problem mounting due to auto selection of yaffs1…

Top Page
Attachments:
Message as email
+ (text/plain)
Delete this message
Reply to this message
Author: Charles Manning
Date:  
To: yaffs
Subject: Re: [Yaffs] Problem mounting due to auto selection of yaffs1 when yaffs2 img given
On Sunday 14 July 2013 18:07:05 Andrew Case wrote:
> I have a kernel I compiled using debian sources and following the
> guide on the yaffs homepage ( http://yaffs.net/building-yaffs-linux ).
>
> I am trying to mount images from the android emulator, which are
> yaffs2, but when I mount them, I put in these commands:
>
> modprobe mtd
> modprobe mtdblock
> modprobe nandsim first_id_byte=0xec second_id_byte=0xa1
> third_id_byte=0x00 fourth_id_byte=0x15
> nandwrite --autoplace --oob /dev/mtd0 out/target/product/generic/system.img
> mount -o ro -t yaffs2 /dev/mtdblock0 /mnt/nand/
>


It looks like the geometry of the nand device you extracted the image from
does not match the geometry of the device you are simulating.

What type of part did the image come from? How many data bytes per page? How
many oob bytes available?



> I get the output of:
>
> [ 1407.434167] yaffs: dev is 32505856 name is "mtdblock0" ro
> [ 1407.434170] yaffs: passed flags ""
> [ 1407.434173] yaffs: yaffs: Attempting MTD mount of 31.0,"mtdblock0"
> [ 1407.434175] yaffs: auto selecting yaffs1
> [ 1407.434181] yaffs: NAND geometry problems: chunk size 512, type is
> yaffs, inband_tags 1


Yaffs is autoselecting yaffs1 because it thinks the devicen page size is too
small and that you are not using inband tags.

>
> so it does not mount. This is the yaffs entries from my kernel config:
>
> # Linux/x86_64 3.2.46yaffs Kernel Configuration
> CONFIG_YAFFS_FS=m
> CONFIG_YAFFS_YAFFS1=y
> # CONFIG_YAFFS_9BYTE_TAGS is not set
> CONFIG_YAFFS_DOES_ECC=y
> # CONFIG_YAFFS_ECC_WRONG_ORDER is not set
> CONFIG_YAFFS_YAFFS2=y
> CONFIG_YAFFS_AUTO_YAFFS2=y
> # CONFIG_YAFFS_DISABLE_TAGS_ECC is not set
> # CONFIG_YAFFS_ALWAYS_CHECK_CHUNK_ERASED is not set
> # CONFIG_YAFFS_EMPTY_LOST_AND_FOUND is not set
> CONFIG_YAFFS_DISABLE_BLOCK_REFRESHING=y
> # CONFIG_YAFFS_DISABLE_BACKGROUND is not set
> CONFIG_YAFFS_DISABLE_BAD_BLOCK_MARKING=y
> CONFIG_YAFFS_XATTR=y
>
> I have auto select yaffs2 enabled but it obviously is not. Also, I
> manually tried to disable version 1 but the kernel won't compile since
> config_yaffs_fs depends on yaffs1 config option...
>
> Can anyone spot what I am doing wrong? Really could use some help!
>
> _______________________________________________
> yaffs mailing list
>
> http://lists.aleph1.co.uk/cgi-bin/mailman/listinfo/yaffs