[Yaffs] NAND ECC working now on my 2.4.20 (Was: Re: Writing a
single file marks entire device as bad)
Martin Egholm Nielsen
martin at egholm-nielsen.dk
Fri Jul 29 11:13:13 BST 2005
Hi there,
Finally, I stumbled over the patch that made it all work at last:
http://stoneboat.aleph1.co.uk/pipermail/yaffs/2004q4/000868.html
So now I can use USE_NANDECC without having MTD whinging about it.
Further, I added some "#include <linux/config.h>" to all the c-files, as
there seemed to be a problem there...
Thanks (Charles, Nick, and Luc - and tglx for helping Aras back in 2004)
Martin Egholm
>>>>> Now, new strange things are happening!
>>>>> I enabled "CONFIG_MTD_NAND_VERIFY_WRITE=y" in the kernel, and
>>>>> suddenly it begun working!!
>>>>> However, I get these kernel messages (alot) whenever I try to
>>>>> read/write anything:
>>>>>
>>>>> === 8< 8< 8< ===
>>>>> Writing data without ECC to NAND-FLASH is not recommended
>>>>> Writing data without ECC to NAND-FLASH is not recommended
>>>>> Writing data without ECC to NAND-FLASH is not recommended
>>>>> Writing data without ECC to NAND-FLASH is not recommended
>>>>> Reading data from NAND FLASH without ECC is not recommended
>>>>> Is there really no ECC running now? I thought that config-option
>>>>> for MTD did the job?
>>>>
>>>> You should only do this if yaffs is doing the ECC instead.
>>>
>>> So, this is how I have the configuration in order to get it to work:
>>>
>>> YAFFS_USE_NANDECC=n
>>> CONFIG_MTD_NAND_VERIFY_WRITE=y
>>>
>>> My questions now are then:
>>> 1) Is there any ECC enabled now?
>>
>>
>>
>> I think it's not:
>> - yaffs' ECC is disabled (YAFFS_USE_NANDECC=n)
>> - from my understanding, the MTD ECC depend of your MTD NAND chip
>> (the field eccmode of nand_chip,
>> this value is set to NAND_ECC_NONE, NAND_ECC_SOFT,
>> NAND_ECC_HW6_512, ...)
>> You can only receive the message "Writing data without ECC to
>> NAND-FLASH is not recommended"
>> if eccmode is set to NAND_ECC_NONE.
>>
>> What type of nand chip you use?
>
> Samsung K9F5608U0C - 32Mx8...
>
>> Have tried the options CONFIG_MTD_NAND_VERIFY_WRITE=y &&
>> YAFFS_USE_NANDECC=y ?
>
> Yes... I started with;
> CONFIG_USE_NANDECC=y
> CONFIG_MTD_NAND_VERIFY_WRITE=n
>
> that didn't work... Then I tried [y,y] - that didn't work either. And
> finally, I ended up with [n,y] - and got alot of whinging! :-)
>
> // Martin
More information about the yaffs
mailing list