Re: [PATCH] staging:mt29f_spinand: MT29F2G failing as only 16-bit arguments and variables used for addressing.

From: Miquel Raynal
Date: Wed Aug 01 2018 - 09:55:34 EST


Hi Dan,

Dan Carpenter <dan.carpenter@xxxxxxxxxx> wrote on Wed, 1 Aug 2018
15:05:51 +0300:

> On Wed, Aug 01, 2018 at 11:24:19AM +0800, Jheng-Jhong Wu wrote:
> > For NAND flash chips with more than 1Gbit (e.g. MT29F2G) more than 16 bits
> > are necessary to address the correct page. The driver sets the address for
> > more than 16 bits, but it uses 16-bit arguments and variables (these are
> > page_id, block_id, row) to do address operations. Obviously, these
> > arguments and variables cannot deal with more than 16-bit address.
> >
> > Signed-off-by: Jheng-Jhong Wu <goodwater.wu@xxxxxxxxx>
>
> This seems reasonable... It would be needed to make commit 6efb21d6d0e7
> ("staging:mt29f_spinand: MT29F2G failing as only 16 bits used for
> addressing.") work. It also fixes a static checker warning.
>
> My only concern is that the mtd/nand code seems to use -1 as a magical
> page_id. For example:

I guess you missed Boris' comment: this driver is very likely to be
removed. A SPI-NAND framework has been added. It does not use the raw
NAND framework anymore, which was wrong anyway.

Thanks,
MiquÃl