[PATCH v2 0/2] Add fixups for two-plane serial NAND flash
Miquel Raynal
miquel.raynal at bootlin.com
Fri Aug 23 08:48:43 PDT 2024
Hi Cheng,
linchengming884 at gmail.com wrote on Tue, 13 Aug 2024 14:02:44 +0800:
> Hi Miquel,
>
> Miquel Raynal <miquel.raynal at bootlin.com> 於 2024年8月12日 週一 下午4:56寫道:
> >
> > Hi Cheng,
> >
> > linchengming884 at gmail.com wrote on Thu, 18 Jul 2024 15:53:54 +0800:
> >
> > > From: Cheng Ming Lin <chengminglin at mxic.com.tw>
> > >
> > > Macronix serial NAND flash with a two-plane structure
> > > requires insertion of Plane Select bit into the column
> > > address during the write_to_cache operation.
> > >
> > > Additionally, for MX35{U,F}2G14AC, insertion of Plane
> > > Select bit into the column address is required during
> > > the read_from_cache operation.
> >
> > I guess if the plane bit is needed for your chips, it is also needed
> > for other whips with two planes? Could it be possible that we never had
> > support for devices with more than one plane and you just fall into a
> > common issue? Maybe we should always add the plane information when
> > there is more than one plane to address? Can you check whether this is
> > specific to Macronix or not?
> >
>
> I have reviewed the chips listed by each vendor.
>
> Micron offers MT29F2G01AB{A,B}GD, MT29F2G01AAAED with two planes;
> however, only MT29F2G01AAAED requires the plane select bit when performing
> program load or read from cache.
>
> Link: https://semiconductors.es/pdf-down/M/T/2/MT29F2G01AAAED-MicronTechnology.pdf
>
> Winbond provides W25N04KV with two planes, but it does not require the plane
> select bit for program load or cache read operations.
>
> Therefore, we should not always include the plane select bit when dealing with
> multiple planes.
>
> > In this case we wouldn't need a specific fixup.
> >
>
> Based on the above perspective, do we still need to use fixup, or can we use
> flags to determine whether the plane select bit is necessary?
I still prefer flags rather than invasive fixup hooks.
>
> > >
> > > These flashes have been validated on Xilinx zynq-picozed
> > > board which included Macronix SPI Host.
> > >
> > > Cheng Ming Lin (2):
> > > mtd: spinand: Add fixups for spinand
> > > mtd: spinand: macronix: Fixups for Plane Select bit
> > >
> > > drivers/mtd/nand/spi/core.c | 7 ++++
> > > drivers/mtd/nand/spi/macronix.c | 66 ++++++++++++++++++++++++++++++---
> > > include/linux/mtd/spinand.h | 17 +++++++++
> > > 3 files changed, 84 insertions(+), 6 deletions(-)
> > >
> >
> >
> > Thanks,
> > Miquèl
>
> Thanks,
> ChengMing Lin
Thanks,
Miquèl
More information about the linux-mtd
mailing list