[PATCH] mtd: spinand: macronix: Add support for serial NAND flash
Miquel Raynal
miquel.raynal at bootlin.com
Mon Jun 7 08:13:15 CEST 2021
Hi zhengxunli at mxic.com.tw,
zhengxunli at mxic.com.tw wrote on Mon, 31 May 2021 10:16:24 +0800:
> Hi Miquel,
>
> "Miquel Raynal" <miquel.raynal at bootlin.com> wrote on 2021/05/27 下午
> 04:58:45:
>
> > "Miquel Raynal" <miquel.raynal at bootlin.com>
> > 2021/05/27 下午 04:59
> >
> > To
> >
> > "Jaime Liao" <jaimeliao at mxic.com.tw>,
> >
> > cc
> >
> > u-boot at lists.denx.de, jagan at amarulasolutions.com, vigneshr at ti.com,
> > zhengxunli at mxic.com.tw, ycllin at mxic.com.tw
> >
> > Subject
> >
> > Re: [PATCH] mtd: spinand: macronix: Add support for serial NAND flash
> >
> > Hi Jaime,
> >
> > Jaime Liao <jaimeliao at mxic.com.tw> wrote on Thu, 27 May 2021 16:51:12
> > +0800:
> >
> > > Macronix NAND Flash devices are available in different configurations
> > > and densities.
> > >
> > > MX"35" means SPI NAND
> > > MX35"LF"/"UF" , LF means 3V and UF meands 1.8V
> > > MX35LF"2G" , 2G means 2Gbits
> > > MX35LF2G"E4"/"24"/"14",
> > > E4 means internal ECC and Quad I/O(x4)
> > > 24 means 8-bit ecc requirement and Quad I/O(x4)
> > > 14 means 4-bit ecc requirement and Quad I/O(x4)
> > >
> > > MX35LF2G14AC is 3V 2Gbit serial NAND flash device
> > > (without on-die ECC)
> > > https://www.mxic.com.tw/Lists/Datasheet/Attachments/7926/
> > MX35LF2G14AC,%203V,%202Gb,%20v1.1.pdf
> > >
> > > MX35UF4G24AD/MX35UF2G24AD/MX35UF1G24AD is 1.8V 4Gbit serial NAND
> > flash device
> > > (without on-die ECC)
> > > https://www.mxic.com.tw/Lists/Datasheet/Attachments/7980/
> > MX35UF4G24AD,%201.8V,%204Gb,%20v0.00.pdf
> > >
> > > MX35UF4GE4AD/MX35UF2GE4AD/MX35UF1GE4AD are 1.8V 4G/2Gbit serial
> > > NAND flash device with 8-bit on-die ECC
> > > https://www.mxic.com.tw/Lists/Datasheet/Attachments/7983/
> > MX35UF4GE4AD,%201.8V,%204Gb,%20v0.00.pdf
> > >
> > > MX35UF2GE4AC/MX35UF1GE4AC are 1.8V 2G/1Gbit serial
> > > NAND flash device with 8-bit on-die ECC
> > > https://www.mxic.com.tw/Lists/Datasheet/Attachments/7974/
> > MX35UF2GE4AC,%201.8V,%202Gb,%20v1.0.pdf
> > >
> > > MX35UF2G14AC/MX35UF1G14AC are 1.8V 2G/1Gbit serial
> > > NAND flash device (without on-die ECC)
> > > https://www.mxic.com.tw/Lists/Datasheet/Attachments/7931/
> > MX35UF2G14AC,%201.8V,%202Gb,%20v1.1.pdf
> > >
> > > Validated via normal(default) and QUAD mode by read, erase, read back,
> > > on Xilinx Zynq PicoZed FPGA board which included Macronix
> > > SPI Host(drivers/spi/spi-mxic.c).
> > >
> > > Signed-off-by: Jaime Liao <jaimeliao at mxic.com.tw>
> > > ---
> > > drivers/mtd/nand/spi/macronix.c | 100 +++++++++++++++++++++++++++
> > +++++++++++++
> > > 1 file changed, 100 insertions(+)
> > >
> > > diff --git a/drivers/mtd/nand/spi/macronix.c b/drivers/mtd/nand/
> > spi/macronix.c
> > > index 215f09a..8a33dce 100644
> > > --- a/drivers/mtd/nand/spi/macronix.c
> > > +++ b/drivers/mtd/nand/spi/macronix.c
> > > @@ -114,6 +114,106 @@ static const struct spinand_info
> > macronix_spinand_table[] = {
> > > &update_cache_variants),
> > > SPINAND_HAS_QE_BIT,
> > > SPINAND_ECCINFO(&mx35lfxge4ab_ooblayout, NULL)),
> > > + SPINAND_INFO("MX35LF2G14AC", 0x20,
> > > + NAND_MEMORG(1, 2048, 64, 64, 2048, 2, 1, 1),
> > > + NAND_ECCREQ(4, 512),
> > > + SPINAND_INFO_OP_VARIANTS(&read_cache_variants,
> > > + &write_cache_variants,
> > > + &update_cache_variants),
> > > + SPINAND_HAS_QE_BIT,
> > > + SPINAND_ECCINFO(&mx35lfxge4ab_ooblayout,
> > > + mx35lf1ge4ab_ecc_get_status)),
> >
> > This looks like a copy of your previous patch, with the SPINAND_ID
> > macro dropped.
> >
> > It would be great if you could clarify your intentions when sending
> > patches. This means:
> > - Counting up patch versions
> > - Explaining their differences and why
> >
> > So, what is the purpose of this patch give the fact that I already
> > applied one very similar yesterday?
> >
> > Thanks,
> > Miquèl
>
> Forward my colleague(Jaime)'s mail as below:
>
> "It is grateful for your comments.
>
> Two patches are different for linux kernel and u-boot.
>
> In this u-boot patch, my purpose is add SPI-NAND IDs in u-boot.
Sorry for the misunderstanding, I thought this was intended for Linux.
> For patching reasonable, I have a question.
>
> AFAIK u-boot didn't include sw-ecc engine.
True.
> Is it suitable for Flash which are sw-ecc requirement?"
Not yet, if there are no on-die ECC engine the parts cannot be used in
U-Boot yet.
Thanks,
Miquèl
More information about the U-Boot
mailing list