All of lore.kernel.org
 help / color / mirror / Atom feed
From: Miquel Raynal <miquel.raynal@bootlin.com>
To: Kursad Oney <kursad.oney@broadcom.com>
Cc: Vignesh Raghavendra <vigneshr@ti.com>,
	Boris Brezillon <bbrezillon@kernel.org>,
	Richard Weinberger <richard@nod.at>,
	Marek Vasut <marek.vasut@gmail.com>,
	linux-mtd@lists.infradead.org,
	Brian Norris <computersforpeace@gmail.com>,
	David Woodhouse <dwmw2@infradead.org>,
	David Regan <david.regan@broadcom.com>
Subject: Re: Number of bytes for spi-nand bad block marker
Date: Thu, 9 Jan 2020 18:52:18 +0100	[thread overview]
Message-ID: <20200109185218.685fb746@xps13> (raw)
In-Reply-To: <CAMm8Nh3dccj9iAQvHhXbRcO22ROhoSmQ48bFqCC80+NiBXoTDA@mail.gmail.com>

Hi Kursad,

Kursad Oney <kursad.oney@broadcom.com> wrote on Thu, 9 Jan 2020
12:49:00 -0500:

> Hi Miquèl,
> 
> On Thu, Jan 9, 2020 at 11:36 AM Miquel Raynal <miquel.raynal@bootlin.com> wrote:
> >
> > Hi Kursad,
> >
> > Kursad Oney <kursad.oney@broadcom.com> wrote on Mon, 12 Aug 2019
> > 16:24:57 -0400:
> >  
> > > Hi,
> > >
> > > The spi-nand driver in both linux and u-boot check 2 bytes for bad
> > > block markers in spinand_isbad(). However, the datasheet for
> > > W25N01GVxxIG says 'A “Bad Block Marker” is a non-FFh data byte stored
> > > at Byte 0 of Page 0 for each bad block. An additional marker is also
> > > stored in the first byte of the 64-Byte spare area.' which is
> > > basically one byte for BBM in spare.
> > >
> > > Boris says they have used the same pattern for parallel NAND because
> > > some NANDs are interfaces through a 16-bit bus.
> > >
> > > Here is the situation I am facing: We rolled our own own spi-nand
> > > kernel/bootloader drivers before the kernel spi-nand driver was
> > > integrated, and set BBM size to 1 byte for this type of flash. This
> > > means the 2nd byte is available for use. Some devices in the field
> > > utilize the extra byte for the jffs2 clean marker.
> > >
> > > We would like to migrate to the mainline drivers but this presents an
> > > issue. When we flash an image with the mainline u-boot spi-nand
> > > driver, it thinks the cleaned jffs2 blocks are "bad blocks" since one
> > > of the bytes includes the clean marker.
> > >
> > > Marek suggested we do a one-time upgrade script where we rewrite the
> > > OOB but it's a risky operation, especially in the field. Boris asked
> > > me to email the MTD list and continue the discussion here. I
> > > appreciate any opinions/suggestions.  
> >
> > Sorry for the very very late reply.
> >
> > How did you manage this situation?
> >  
> 
> No problem with the late reply. I am adding David Regan on copy who is
> more familiar with our SPI-NAND driver and the plans going forward.
> 
> > As you have a very specific need which is not actually related to
> > hardware support but more a problem of coherence between your old
> > drivers and mainline, what about writing support for 1-byte BBM in
> > spi-nand? If it is too invasive I don't think it can be mainlined, but
> > at least you could use a mainline driver with a small change on top of
> > it on your old-running in-the-field boards?
> >  
> 
> Yes, exactly. I think this might be the way we will go forward. As for
> mainlining, there were questions about whether this is something that
> can/should be done in the device tree or as a Kconfig or some other
> way. If there is an acceptable solution, we can implement and send it
> for a review.

I don't know what would be the "less worse". Maybe it won't be mainline
at all. But you can share as an RFC what you've done, that might help
others!

Thanks,
Miquèl

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

      reply	other threads:[~2020-01-09 17:52 UTC|newest]

Thread overview: 4+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-08-12 20:24 Number of bytes for spi-nand bad block marker Kursad Oney
2020-01-09 16:36 ` Miquel Raynal
2020-01-09 17:49   ` Kursad Oney
2020-01-09 17:52     ` Miquel Raynal [this message]

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=20200109185218.685fb746@xps13 \
    --to=miquel.raynal@bootlin.com \
    --cc=bbrezillon@kernel.org \
    --cc=computersforpeace@gmail.com \
    --cc=david.regan@broadcom.com \
    --cc=dwmw2@infradead.org \
    --cc=kursad.oney@broadcom.com \
    --cc=linux-mtd@lists.infradead.org \
    --cc=marek.vasut@gmail.com \
    --cc=richard@nod.at \
    --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.