Re: [PATCH 2/5] mtd: rawnand: qcom: Add initial support for qspi nand

From: Boris Brezillon
Date: Thu Oct 29 2020 - 05:07:59 EST


Hello,

On Sat, 10 Oct 2020 11:01:39 +0530
Md Sadre Alam <mdalam@xxxxxxxxxxxxxx> wrote:

> This change will add initial support for qspi (serial nand).
>
> QPIC Version v.2.0 onwards supports serial nand as well so this
> change will initialize all required register to enable qspi (serial
> nand).
>
> This change is supporting very basic functionality of qspi nand flash.
>
> 1. Reset device (Reset QSPI NAND device).
>
> 2. Device detection (Read id QSPI NAND device).

Unfortunately, that's not going to work in the long term. You're
basically hacking the raw NAND framework to make SPI NANDs fit. I do
understand the rationale behind this decision (re-using the code for
ECC and probably other things), but that's not going to work. So I'd
recommend doing the following instead:

1/ implement a SPI-mem controller driver
2/ implement an ECC engine driver so the ECC logic can be shared
between the SPI controller and raw NAND controller drivers
3/ convert the raw NAND driver to the exec_op() interface (none of
this hack would have been possible if the driver was using the new
API)

Regards,

Boris