All of lore.kernel.org
 help / color / mirror / Atom feed
From: Miquel Raynal <miquel.raynal@bootlin.com>
To: "Shivamurthy Shastri (sshivamurthy)" <sshivamurthy@micron.com>
Cc: Vignesh Raghavendra <vigneshr@ti.com>,
	Boris Brezillon <bbrezillon@kernel.org>,
	Shivamurthy Shastri <shiva.linuxworks@gmail.com>,
	Richard Weinberger <richard@nod.at>,
	"linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>,
	Frieder Schrempf <frieder.schrempf@kontron.de>,
	"linux-mtd@lists.infradead.org" <linux-mtd@lists.infradead.org>
Subject: Re: [EXT] Re: [PATCH 3/4] mtd: spinand: Add M70A series Micron SPI NAND devices
Date: Tue, 21 Jan 2020 14:40:34 +0100	[thread overview]
Message-ID: <20200121144034.05a8f49d@xps13> (raw)
In-Reply-To: <MN2PR08MB6397062A37D39287E820A0D8B80D0@MN2PR08MB6397.namprd08.prod.outlook.com>

Hi Shivamurthy,

"Shivamurthy Shastri (sshivamurthy)" <sshivamurthy@micron.com> wrote on
Tue, 21 Jan 2020 12:23:20 +0000:

> Hi Miquel,
> 
> > 
> > Hi Shiva,
> > 
> > This is remark common to the four patches: you miss the 'v2' prefix in
> > the object.
> >   
> 
> Sorry for this mistake.
> I recognized this after sending out the patches.
> 
> > shiva.linuxworks@gmail.com wrote on Sun, 19 Jan 2020 15:54:31 +0100:
> >   
> > > From: Shivamurthy Shastri <sshivamurthy@micron.com>
> > >
> > > Add device table for M70A series Micron SPI NAND devices.
> > >
> > > While at it, disable the Continuous Read feature which is enabled by
> > > default.  
> > 
> > Can you please give us more detail on why this is an issue?  
> 
> "Continuous Read" is the new feature added by the Micron for 
> M70A series devices. If this feature is enabled, the READ command 
> doesn't output the OOB area. The following short description
> describes this feature.
> 
> Description:
> If the Continuous Read feature is enabled, the device provides 
> the capability to read the whole block with a single command.
> However, the read command doesn't output the OOB area.
> 
> Read command behavior (if Continuous Read enabled):
> The READ CACHE command doesn't require the starting column address.
> The device always output the data starting from the first column of the
> cache register, and once the end of the cache register reached, the data
> output continues through the next page. With the continuous read mode,
> it is possible to read out the entire block using a single READ command, and
> once the end of the block reached, the output pins become High-Z state.

Ok I understand better. In this case there is no need to split this
commit, instead just reword the commit log to something like:

--->8---
Add device table for M70A series Micron SPI-NAND devices.

As opposed to the M60A series already supported, M70A parts have the
"Continuous Read" feature enabled by default which does not fit the
subsystem needs.

<here explain the feature>.

Hence, we disable the feature at probe time.
---8<---

However, below, you disable this bit for all the parts. Is this really
ok? Souldn't we make it more specific to this series?

> 
> > 
> > Shall we backport it to stable?  
> 
> This is not a bug fix and applicable only to M70A series devices, there is no
> need to backport.
> (FYI, the previously enabled device was M79A series)
> 
> > 
> > As a rule of thumb, when you start a sentence by "while at it" in a
> > commit message and this is not a trivial change : split the patch,
> > please. Unless this is really related and in this case explain how and
> > why in the commit message.  
> 
> Okay, I will explain in my next version.
> 
> >   
> > >
> > > Signed-off-by: Shivamurthy Shastri <sshivamurthy@micron.com>
> > > ---
> > >  drivers/mtd/nand/spi/micron.c | 31  
> > +++++++++++++++++++++++++++++++  
> > >  1 file changed, 31 insertions(+)
> > >
> > > diff --git a/drivers/mtd/nand/spi/micron.c  
> > b/drivers/mtd/nand/spi/micron.c  
> > > index 5fd1f921ef12..45fc37c58f8a 100644
> > > --- a/drivers/mtd/nand/spi/micron.c
> > > +++ b/drivers/mtd/nand/spi/micron.c
> > > @@ -131,6 +131,26 @@ static const struct spinand_info  
> > micron_spinand_table[] = {  
> > >  		     0,
> > >  		     SPINAND_ECCINFO(&micron_8_ooblayout,
> > >  				     micron_8_ecc_get_status)),
> > > +	/* M70A 4Gb 3.3V */
> > > +	SPINAND_INFO("MT29F4G01ABAFD", 0x34,
> > > +		     NAND_MEMORG(1, 4096, 256, 64, 2048, 40, 1, 1, 1),
> > > +		     NAND_ECCREQ(8, 512),
> > > +		     SPINAND_INFO_OP_VARIANTS(&read_cache_variants,
> > > +					      &write_cache_variants,
> > > +					      &update_cache_variants),
> > > +		     0,
> > > +		     SPINAND_ECCINFO(&micron_8_ooblayout,
> > > +				     micron_8_ecc_get_status)),
> > > +	/* M70A 4Gb 1.8V */
> > > +	SPINAND_INFO("MT29F4G01ABBFD", 0x35,
> > > +		     NAND_MEMORG(1, 4096, 256, 64, 2048, 40, 1, 1, 1),
> > > +		     NAND_ECCREQ(8, 512),
> > > +		     SPINAND_INFO_OP_VARIANTS(&read_cache_variants,
> > > +					      &write_cache_variants,
> > > +					      &update_cache_variants),
> > > +		     0,
> > > +		     SPINAND_ECCINFO(&micron_8_ooblayout,
> > > +				     micron_8_ecc_get_status)),
> > >  };
> > >
> > >  static int micron_spinand_detect(struct spinand_device *spinand)
> > > @@ -153,8 +173,19 @@ static int micron_spinand_detect(struct  
> > spinand_device *spinand)  
> > >  	return 1;
> > >  }
> > >
> > > +static int micron_spinand_init(struct spinand_device *spinand)
> > > +{
> > > +	/*
> > > +	 * M70A device series enable Continuous Read feature at Power-up,
> > > +	 * which is not supported. Disable this bit to avoid any possible
> > > +	 * failure.
> > > +	 */
> > > +	return spinand_upd_cfg(spinand, CFG_QUAD_ENABLE, 0);
> > > +}
> > > +
> > >  static const struct spinand_manufacturer_ops  
> > micron_spinand_manuf_ops = {  
> > >  	.detect = micron_spinand_detect,
> > > +	.init = micron_spinand_init,
> > >  };
> > >
> > >  const struct spinand_manufacturer micron_spinand_manufacturer = {  
> > 
> > Thanks,
> > Miquèl  
> 
> Thanks,
> Shiva




Thanks,
Miquèl

______________________________________________________
Linux MTD discussion mailing list
http://lists.infradead.org/mailman/listinfo/linux-mtd/

WARNING: multiple messages have this Message-ID (diff)
From: Miquel Raynal <miquel.raynal@bootlin.com>
To: "Shivamurthy Shastri (sshivamurthy)" <sshivamurthy@micron.com>
Cc: Richard Weinberger <richard@nod.at>,
	Vignesh Raghavendra <vigneshr@ti.com>,
	Boris Brezillon <bbrezillon@kernel.org>,
	Frieder Schrempf <frieder.schrempf@kontron.de>,
	"linux-mtd@lists.infradead.org" <linux-mtd@lists.infradead.org>,
	"linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>,
	Shivamurthy Shastri <shiva.linuxworks@gmail.com>
Subject: Re: [EXT] Re: [PATCH 3/4] mtd: spinand: Add M70A series Micron SPI NAND devices
Date: Tue, 21 Jan 2020 14:40:34 +0100	[thread overview]
Message-ID: <20200121144034.05a8f49d@xps13> (raw)
In-Reply-To: <MN2PR08MB6397062A37D39287E820A0D8B80D0@MN2PR08MB6397.namprd08.prod.outlook.com>

Hi Shivamurthy,

"Shivamurthy Shastri (sshivamurthy)" <sshivamurthy@micron.com> wrote on
Tue, 21 Jan 2020 12:23:20 +0000:

> Hi Miquel,
> 
> > 
> > Hi Shiva,
> > 
> > This is remark common to the four patches: you miss the 'v2' prefix in
> > the object.
> >   
> 
> Sorry for this mistake.
> I recognized this after sending out the patches.
> 
> > shiva.linuxworks@gmail.com wrote on Sun, 19 Jan 2020 15:54:31 +0100:
> >   
> > > From: Shivamurthy Shastri <sshivamurthy@micron.com>
> > >
> > > Add device table for M70A series Micron SPI NAND devices.
> > >
> > > While at it, disable the Continuous Read feature which is enabled by
> > > default.  
> > 
> > Can you please give us more detail on why this is an issue?  
> 
> "Continuous Read" is the new feature added by the Micron for 
> M70A series devices. If this feature is enabled, the READ command 
> doesn't output the OOB area. The following short description
> describes this feature.
> 
> Description:
> If the Continuous Read feature is enabled, the device provides 
> the capability to read the whole block with a single command.
> However, the read command doesn't output the OOB area.
> 
> Read command behavior (if Continuous Read enabled):
> The READ CACHE command doesn't require the starting column address.
> The device always output the data starting from the first column of the
> cache register, and once the end of the cache register reached, the data
> output continues through the next page. With the continuous read mode,
> it is possible to read out the entire block using a single READ command, and
> once the end of the block reached, the output pins become High-Z state.

Ok I understand better. In this case there is no need to split this
commit, instead just reword the commit log to something like:

--->8---
Add device table for M70A series Micron SPI-NAND devices.

As opposed to the M60A series already supported, M70A parts have the
"Continuous Read" feature enabled by default which does not fit the
subsystem needs.

<here explain the feature>.

Hence, we disable the feature at probe time.
---8<---

However, below, you disable this bit for all the parts. Is this really
ok? Souldn't we make it more specific to this series?

> 
> > 
> > Shall we backport it to stable?  
> 
> This is not a bug fix and applicable only to M70A series devices, there is no
> need to backport.
> (FYI, the previously enabled device was M79A series)
> 
> > 
> > As a rule of thumb, when you start a sentence by "while at it" in a
> > commit message and this is not a trivial change : split the patch,
> > please. Unless this is really related and in this case explain how and
> > why in the commit message.  
> 
> Okay, I will explain in my next version.
> 
> >   
> > >
> > > Signed-off-by: Shivamurthy Shastri <sshivamurthy@micron.com>
> > > ---
> > >  drivers/mtd/nand/spi/micron.c | 31  
> > +++++++++++++++++++++++++++++++  
> > >  1 file changed, 31 insertions(+)
> > >
> > > diff --git a/drivers/mtd/nand/spi/micron.c  
> > b/drivers/mtd/nand/spi/micron.c  
> > > index 5fd1f921ef12..45fc37c58f8a 100644
> > > --- a/drivers/mtd/nand/spi/micron.c
> > > +++ b/drivers/mtd/nand/spi/micron.c
> > > @@ -131,6 +131,26 @@ static const struct spinand_info  
> > micron_spinand_table[] = {  
> > >  		     0,
> > >  		     SPINAND_ECCINFO(&micron_8_ooblayout,
> > >  				     micron_8_ecc_get_status)),
> > > +	/* M70A 4Gb 3.3V */
> > > +	SPINAND_INFO("MT29F4G01ABAFD", 0x34,
> > > +		     NAND_MEMORG(1, 4096, 256, 64, 2048, 40, 1, 1, 1),
> > > +		     NAND_ECCREQ(8, 512),
> > > +		     SPINAND_INFO_OP_VARIANTS(&read_cache_variants,
> > > +					      &write_cache_variants,
> > > +					      &update_cache_variants),
> > > +		     0,
> > > +		     SPINAND_ECCINFO(&micron_8_ooblayout,
> > > +				     micron_8_ecc_get_status)),
> > > +	/* M70A 4Gb 1.8V */
> > > +	SPINAND_INFO("MT29F4G01ABBFD", 0x35,
> > > +		     NAND_MEMORG(1, 4096, 256, 64, 2048, 40, 1, 1, 1),
> > > +		     NAND_ECCREQ(8, 512),
> > > +		     SPINAND_INFO_OP_VARIANTS(&read_cache_variants,
> > > +					      &write_cache_variants,
> > > +					      &update_cache_variants),
> > > +		     0,
> > > +		     SPINAND_ECCINFO(&micron_8_ooblayout,
> > > +				     micron_8_ecc_get_status)),
> > >  };
> > >
> > >  static int micron_spinand_detect(struct spinand_device *spinand)
> > > @@ -153,8 +173,19 @@ static int micron_spinand_detect(struct  
> > spinand_device *spinand)  
> > >  	return 1;
> > >  }
> > >
> > > +static int micron_spinand_init(struct spinand_device *spinand)
> > > +{
> > > +	/*
> > > +	 * M70A device series enable Continuous Read feature at Power-up,
> > > +	 * which is not supported. Disable this bit to avoid any possible
> > > +	 * failure.
> > > +	 */
> > > +	return spinand_upd_cfg(spinand, CFG_QUAD_ENABLE, 0);
> > > +}
> > > +
> > >  static const struct spinand_manufacturer_ops  
> > micron_spinand_manuf_ops = {  
> > >  	.detect = micron_spinand_detect,
> > > +	.init = micron_spinand_init,
> > >  };
> > >
> > >  const struct spinand_manufacturer micron_spinand_manufacturer = {  
> > 
> > Thanks,
> > Miquèl  
> 
> Thanks,
> Shiva




Thanks,
Miquèl

  reply	other threads:[~2020-01-21 13:41 UTC|newest]

Thread overview: 30+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-01-19 14:54 [PATCH 0/4] Add new series Micron SPI NAND devices shiva.linuxworks
2020-01-19 14:54 ` shiva.linuxworks
2020-01-19 14:54 ` [PATCH 1/4] mtd: spinand: Generalize the OOB layout structure and function names shiva.linuxworks
2020-01-19 14:54   ` shiva.linuxworks
2020-01-30  8:30   ` Miquel Raynal
2020-01-30  8:30     ` Miquel Raynal
2020-01-19 14:54 ` [PATCH 2/4] mtd: spinand: Add new Micron SPI NAND devices shiva.linuxworks
2020-01-19 14:54   ` shiva.linuxworks
2020-01-19 14:54 ` [PATCH 3/4] mtd: spinand: Add M70A series " shiva.linuxworks
2020-01-19 14:54   ` shiva.linuxworks
2020-01-20 10:16   ` Miquel Raynal
2020-01-20 10:16     ` Miquel Raynal
2020-01-21 12:23     ` [EXT] " Shivamurthy Shastri (sshivamurthy)
2020-01-21 12:23       ` Shivamurthy Shastri (sshivamurthy)
2020-01-21 13:40       ` Miquel Raynal [this message]
2020-01-21 13:40         ` Miquel Raynal
2020-01-21 14:59         ` Shivamurthy Shastri (sshivamurthy)
2020-01-21 14:59           ` Shivamurthy Shastri (sshivamurthy)
2020-01-21 15:27           ` Miquel Raynal
2020-01-21 15:27             ` Miquel Raynal
2020-01-23  9:01             ` Shivamurthy Shastri (sshivamurthy)
2020-01-23  9:01               ` Shivamurthy Shastri (sshivamurthy)
2020-01-19 14:54 ` [PATCH 4/4] mtd: spinand: Add new Micron SPI NAND devices with multiple dies shiva.linuxworks
2020-01-19 14:54   ` shiva.linuxworks
2020-01-20 10:22   ` Miquel Raynal
2020-01-20 10:22     ` Miquel Raynal
2020-01-21 12:23     ` [EXT] " Shivamurthy Shastri (sshivamurthy)
2020-01-21 12:23       ` Shivamurthy Shastri (sshivamurthy)
2020-01-21 13:44       ` Miquel Raynal
2020-01-21 13:44         ` Miquel Raynal

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20200121144034.05a8f49d@xps13 \
    --to=miquel.raynal@bootlin.com \
    --cc=bbrezillon@kernel.org \
    --cc=frieder.schrempf@kontron.de \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-mtd@lists.infradead.org \
    --cc=richard@nod.at \
    --cc=shiva.linuxworks@gmail.com \
    --cc=sshivamurthy@micron.com \
    --cc=vigneshr@ti.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.