Re: [PATCH 0/3] mtd: Ingenic NAND fix for JZ4740

Paul Cercueil
2021-11-07T18:43:50Z

Hi Nikolaus,

Le dim., nov. 7 2021 at 14:47:43 +0100, H. Nikolaus Schaller
<hns@goldelico.com> a écrit :
> Hi Paul,
>
>> Am 09.10.2021 um 20:49 schrieb Paul Cercueil <paul@crapouillou.net>:
>>
>> Hi,
>>
>> Looks like NAND support has been broken on the JZ4740 SoC for a
>> while;
>
> Yes, I remember someone telling that something was fundamentally
> broken
> and impossible to be fixed a while ago.

You mean MLC NAND, and that's still broken.

>> it looks like it comes from the fact that the "hw_oob_first"
>> mechanism
>> was dropped from the NAND core and moved to the Davinci driver.
>>
>> It turns out the JZ4740 SoC needs it too; I didn't notice it when
>> writing the new ingenic-nand driver (to replace the old jz4740-nand
>> driver) most likely because my Device Tree had the "nand-ecc-mode"
>> set
>> to "hw_oob_first".
>>
>> I am not very sure about patch [1/3]; to me the original code does
>> not
>> make sense, and it didn't work out-of-the-box on the JZ4740 without
>> it.
>> By applying patch [1/3] the function
>> nand_read_page_hwecc_oob_first()
>> can be reused for the JZ4740 SoC as well. But I did not test patch
>> [1/3]
>> on Davinci.
>
> would this also work for jz4780 NAND?

The JZ4780 NAND driver does work, but UBI refuses to use the CI20's
NAND as it's a MLC.

-Paul