Le mar. 19 mai 2020 à 17:01, Boris Brezillon
<boris.brezillon@xxxxxxxxxxxxx> a écrit :
On Tue, 19 May 2020 16:52:27 +0200
Paul Cercueil <paul@xxxxxxxxxxxxxxx> wrote:
Hi Boris,
Le lun. 18 mai 2020 à 21:24, Boris Brezillon
<boris.brezillon@xxxxxxxxxxxxx> a écrit :
> On Mon, 18 May 2020 19:50:04 +0200
> Paul Cercueil <paul@xxxxxxxxxxxxxxx> wrote:
>
>> Hi Boris,
>>
>> Le lun. 18 mai 2020 à 18:56, Boris Brezillon
>> <boris.brezillon@xxxxxxxxxxxxx> a écrit :
>> > Let's convert the driver to exec_op() to have one less driver
>> relying
>> > on the legacy interface.
>>
>> Great work, thanks for that.
>>
>> However it does not work :( nand_scan() returns error -145.
>
> Looks like the R/B signal is inverted. Can you try with the
> following diff applied?
Still doesn't work properly. I get -ENODEV in nand_detect(), at the
"second ID read did not match..." pr_info().
The R/B signal doesn't seem to be the primary cause, if I use
nand_soft_waitrdy() it doesn't work any better.
Well, it does solve the ETIMEDOUT issue, so we're one step further
;-).
Can you print the returned ID?
It reads 00/00, so it doesn't seem to be able to read any data.
One thing I noticed that jz4780_nemc_assert() is called with
assert=true unconditionally, while before it was called with (ctrl &
NAND_NCE), whatever that is. Whether or not that's a problem, I
have no
idea.
Yes, we really want to assert the CE signal unconditionally here, but
maybe we should add a delay after asserting it/before de-asserting it.
I added some udelay() here and there, unfortunately it didn't change
anything.
-Paul
______________________________________________________
Linux MTD discussion mailing list
http://lists.infradead.org/mailman/listinfo/linux-mtd/