OneNAND: Update OOB free table
Hi, Timo
Quoted 3 lines
Tested. This breaks reading OOB area and the clean marker from there. After OOB has been written without ECC it must be read without ECC too or we start to get ECC errors.
Yes, you're right. and the current code don't check the read error. It's similay problem in onenand_wait which can't report the read/write/erase error.
I think I need to change the logic.
First, fix the onenand_wait error report
Second, check the read error.
Anyway come back to main topic
How about the the change the JFFS2 logic to skip the eccpos in cleanmark check. In onenand_oob_64, it describes the eccpos. So the JFFS2 skip the eccpos
Is it possible?
Thank you,
Kyungmin Park
Quoted 12 lines · Kyungmin Park
Quoted 3 lines
Tested. This breaks reading OOB area and the clean marker from there. After OOB has been written without ECC it must be read without ECC too or we start to get ECC errors.
Yes, you're right. and the current code don't check the read error. It's similay problem in
onenand_waitwhich can't report the read/write/erase error.I think I need to change the logic.
First, fix the
onenand_waiterror report
Second, check the read error.
Quoted 6 lines
Anyway come back to main topic
How about the the change the JFFS2 logic to skip the eccpos in cleanmark check. In
onenand_oob_64, it describes the eccpos. So the JFFS2 skip the eccposIs it possible?
I suppose it's worth asking from JFFS2 people. The free OOB usage seems to be a bit broken in JFFS2 (it only uses the first pos/len pair of the OOB free table.
Cheers,
Timo
Kyungmin,
Quoted 2 lines · Kyungmin Park
How about the the change the JFFS2 logic to skip the eccpos in cleanmark check. In
onenand_oob_64, it describes the eccpos. So the JFFS2 skip the eccpos
May you refine what is the problem please?
Signature · 2 lines
Best regards, Artem Bityutskiy (Битюцкий Артём)
Quoted 5 lines · Artem Bityutskiy
Quoted 2 lines · Kyungmin Park
How about the the change the JFFS2 logic to skip the eccpos in cleanmark check. In
onenand_oob_64, it describes the eccpos. So the JFFS2 skip the eccposMay you refine what is the problem please?
jffs2_check_oob_empty() check that the whole OOB area contains only 0xff bytes except for the clean marker area. This is broken on OneNAND as writing clean marker to OOB area will change ECC bytes.
Also the clean marker is not written properly as only the first oobfree table element is used. But this is a different issue.
- Timo