* OMAP NAND Driver ECC Read broken
@ 2015-03-26 8:13 Gabor Janak (g.janak@agilion.de)
2015-03-27 7:52 ` Sascha Hauer
0 siblings, 1 reply; 2+ messages in thread
From: Gabor Janak (g.janak@agilion.de) @ 2015-03-26 8:13 UTC (permalink / raw)
To: barebox
Hello,
on all Platforms which using
drivers/mtd/nand/nand_omap_gpmc.c
with ECC Mode OMAP_ECC_HAMMING_CODE_HW_ROMCODE
(in DTS: bch8_hw_romcode ) the Code is only check the first part of a block page.
The special Read-function read always a whole page, but only the ECC results oft he first block is checked.
Any Error after first 512Byte are not detected and not corrected.
I'm Using barebox-2014.09 on am335x . But it looks in the current HEAD same ...
A fast Workaround hack :
In function omap_correct_bch:
Settings blocks always to 4 and because eccsize is 13
Changing at the end:
calc_ecc = calc_ecc + eccsize;
read_ecc = read_ecc + eccsize+1; //add 1 because in Flash 13+1 is written
dat += 512;
I know this ist he wrong way.... ;)
If i have some time, i will try to search a better solution, but currently i have not much time.
Bye,
Gabor
[Hannover Messe]<http://www.hannovermesse.de/aussteller/agilion/H465093?source=dl_ban>
_______________________________________________
barebox mailing list
barebox@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/barebox
^ permalink raw reply [flat|nested] 2+ messages in thread
* Re: OMAP NAND Driver ECC Read broken
2015-03-26 8:13 OMAP NAND Driver ECC Read broken Gabor Janak (g.janak@agilion.de)
@ 2015-03-27 7:52 ` Sascha Hauer
0 siblings, 0 replies; 2+ messages in thread
From: Sascha Hauer @ 2015-03-27 7:52 UTC (permalink / raw)
To: Gabor Janak (g.janak@agilion.de); +Cc: barebox
Hi Gabor,
On Thu, Mar 26, 2015 at 08:13:38AM +0000, Gabor Janak (g.janak@agilion.de) wrote:
> Hello,
>
> on all Platforms which using
> drivers/mtd/nand/nand_omap_gpmc.c
> with ECC Mode OMAP_ECC_HAMMING_CODE_HW_ROMCODE
> (in DTS: bch8_hw_romcode ) the Code is only check the first part of a block page.
>
> The special Read-function read always a whole page, but only the ECC results oft he first block is checked.
> Any Error after first 512Byte are not detected and not corrected.
>
> I'm Using barebox-2014.09 on am335x . But it looks in the current HEAD same ...
>
> A fast Workaround hack :
> In function omap_correct_bch:
> Settings blocks always to 4 and because eccsize is 13
>
> Changing at the end:
> calc_ecc = calc_ecc + eccsize;
> read_ecc = read_ecc + eccsize+1; //add 1 because in Flash 13+1 is written
> dat += 512;
>
>
> I know this ist he wrong way.... ;)
>
> If i have some time, i will try to search a better solution, but currently i have not much time.
It would be great if you could find the time to write a patch. Thanks
for noting this issue anyway, it may safe other peoples time.
Sascha
--
Pengutronix e.K. | |
Industrial Linux Solutions | http://www.pengutronix.de/ |
Peiner Str. 6-8, 31137 Hildesheim, Germany | Phone: +49-5121-206917-0 |
Amtsgericht Hildesheim, HRA 2686 | Fax: +49-5121-206917-5555 |
_______________________________________________
barebox mailing list
barebox@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/barebox
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2015-03-27 7:52 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2015-03-26 8:13 OMAP NAND Driver ECC Read broken Gabor Janak (g.janak@agilion.de)
2015-03-27 7:52 ` Sascha Hauer
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox