All of lore.kernel.org
 help / color / mirror / Atom feed
From: Miquel Raynal <miquel.raynal@bootlin.com>
To: Kestrel seventyfour <kestrelseventyfour@gmail.com>
Cc: Richard Weinberger <richard@nod.at>,
	Vignesh Raghavendra <vigneshr@ti.com>,
	linux-mtd@lists.infradead.org, linux-kernel@vger.kernel.org
Subject: Re: [PATCH v2] mtd: rawnand: xway: No hardcoded ECC engine, use device tree setting
Date: Tue, 24 Aug 2021 19:22:03 +0200	[thread overview]
Message-ID: <20210824192203.076df55e@xps13> (raw)
In-Reply-To: <CAE9cyGTKFcMuxePo2SgxkBe_cWvP5nZ_SDcnuUtwaE5o9oVq3g@mail.gmail.com>

Hello,

Kestrel seventyfour <kestrelseventyfour@gmail.com> wrote on Tue, 24 Aug
2021 09:15:49 +0200:

> Hi Miquèl,
> 
> Am Mo., 23. Aug. 2021 um 17:24 Uhr schrieb Miquel Raynal
> <miquel.raynal@bootlin.com>:
> >
> > Hi Kestrel,
> >
> > Kestrel seventyfour <kestrelseventyfour@gmail.com> wrote on Mon, 23 Aug
> > 2021 13:19:43 +0200:
> >  
> > > Hi Miquèl,
> > >
> > > Am Do., 19. Aug. 2021 um 10:03 Uhr schrieb Miquel Raynal
> > > <miquel.raynal@bootlin.com>:  
> ...
> > >
> > > thank you for your response.
> > > If I remove the nand-ecc-xxx properties in the device tree, the device with
> > > the Toshiba NAND chip is working. However, the device with the Micron
> > > NAND fails with NO ECC functions supplied; hardware ECC not possible,
> > > seems to be at line 5367 or equivalent.
> > > https://elixir.bootlin.com/linux/latest/source/drivers/mtd/nand/raw/nand_base.c#L5367
> > >
> > > It looks like the micron nand driver supports on die only if its
> > > specified int the
> > > Device tree:
> > > https://elixir.bootlin.com/linux/latest/source/drivers/mtd/nand/raw/nand_micron.c#L511
> > > The Micron NAND driver probably needs to set the ECC type to ON DIE if the
> > > variable ondie contains the supported attribute?!  
> >
> > You're right but I don't see any easy upstream-able solution here.
> > Changing the behavior in the Xway driver would certainly break users,
> > changing the behavior in the Micron driver would certainly break even
> > more users. The root cause being an absence of proper description (the
> > integration changed). Honestly I feel stuck, maybe you can try to
> > register your device, if it fails, change the integration in the driver
> > (to an ondie ecc engine) then retry?
> >
> > Thanks,
> > Miquèl  
> 
> Do you think adding something like below at the following location
> https://elixir.bootlin.com/linux/latest/source/drivers/mtd/nand/raw/xway_nand.c#L223
> would be upstreamable (with or without device tree property?)?
> 
>         err = nand_scan(&data->chip, 1);
>         if (err /* && of_property_read_bool(np, "lantiq,retry-on-die") */) {
>                 data->chip.ecc.engine_type = NAND_ECC_ENGINE_TYPE_ON_DIE;
>                 err = nand_scan(&data->chip, 1);
>                 if (err) return err;
>         }
> 
> It still throws the kernel warning on first try, but the second try then works.

Can you please remind me what is xway/lantiq/your setup/how public it
is/who's using this driver?

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: Kestrel seventyfour <kestrelseventyfour@gmail.com>
Cc: Richard Weinberger <richard@nod.at>,
	Vignesh Raghavendra <vigneshr@ti.com>,
	linux-mtd@lists.infradead.org, linux-kernel@vger.kernel.org
Subject: Re: [PATCH v2] mtd: rawnand: xway: No hardcoded ECC engine, use device tree setting
Date: Tue, 24 Aug 2021 19:22:03 +0200	[thread overview]
Message-ID: <20210824192203.076df55e@xps13> (raw)
In-Reply-To: <CAE9cyGTKFcMuxePo2SgxkBe_cWvP5nZ_SDcnuUtwaE5o9oVq3g@mail.gmail.com>

Hello,

Kestrel seventyfour <kestrelseventyfour@gmail.com> wrote on Tue, 24 Aug
2021 09:15:49 +0200:

> Hi Miquèl,
> 
> Am Mo., 23. Aug. 2021 um 17:24 Uhr schrieb Miquel Raynal
> <miquel.raynal@bootlin.com>:
> >
> > Hi Kestrel,
> >
> > Kestrel seventyfour <kestrelseventyfour@gmail.com> wrote on Mon, 23 Aug
> > 2021 13:19:43 +0200:
> >  
> > > Hi Miquèl,
> > >
> > > Am Do., 19. Aug. 2021 um 10:03 Uhr schrieb Miquel Raynal
> > > <miquel.raynal@bootlin.com>:  
> ...
> > >
> > > thank you for your response.
> > > If I remove the nand-ecc-xxx properties in the device tree, the device with
> > > the Toshiba NAND chip is working. However, the device with the Micron
> > > NAND fails with NO ECC functions supplied; hardware ECC not possible,
> > > seems to be at line 5367 or equivalent.
> > > https://elixir.bootlin.com/linux/latest/source/drivers/mtd/nand/raw/nand_base.c#L5367
> > >
> > > It looks like the micron nand driver supports on die only if its
> > > specified int the
> > > Device tree:
> > > https://elixir.bootlin.com/linux/latest/source/drivers/mtd/nand/raw/nand_micron.c#L511
> > > The Micron NAND driver probably needs to set the ECC type to ON DIE if the
> > > variable ondie contains the supported attribute?!  
> >
> > You're right but I don't see any easy upstream-able solution here.
> > Changing the behavior in the Xway driver would certainly break users,
> > changing the behavior in the Micron driver would certainly break even
> > more users. The root cause being an absence of proper description (the
> > integration changed). Honestly I feel stuck, maybe you can try to
> > register your device, if it fails, change the integration in the driver
> > (to an ondie ecc engine) then retry?
> >
> > Thanks,
> > Miquèl  
> 
> Do you think adding something like below at the following location
> https://elixir.bootlin.com/linux/latest/source/drivers/mtd/nand/raw/xway_nand.c#L223
> would be upstreamable (with or without device tree property?)?
> 
>         err = nand_scan(&data->chip, 1);
>         if (err /* && of_property_read_bool(np, "lantiq,retry-on-die") */) {
>                 data->chip.ecc.engine_type = NAND_ECC_ENGINE_TYPE_ON_DIE;
>                 err = nand_scan(&data->chip, 1);
>                 if (err) return err;
>         }
> 
> It still throws the kernel warning on first try, but the second try then works.

Can you please remind me what is xway/lantiq/your setup/how public it
is/who's using this driver?

Thanks,
Miquèl

  reply	other threads:[~2021-08-24 17:23 UTC|newest]

Thread overview: 42+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-08-08  7:26 [PATCH v2] mtd: rawnand: xway: No hardcoded ECC engine, use device tree setting Daniel Kestrel
2021-08-08  7:26 ` Daniel Kestrel
2021-08-16  7:31 ` Miquel Raynal
2021-08-16  7:31   ` Miquel Raynal
2021-08-19  7:21   ` Kestrel seventyfour
2021-08-19  7:21     ` Kestrel seventyfour
2021-08-19  8:03     ` Miquel Raynal
2021-08-19  8:03       ` Miquel Raynal
2021-08-23 11:19       ` Kestrel seventyfour
2021-08-23 11:19         ` Kestrel seventyfour
2021-08-23 15:24         ` Miquel Raynal
2021-08-23 15:24           ` Miquel Raynal
2021-08-24  7:15           ` Kestrel seventyfour
2021-08-24  7:15             ` Kestrel seventyfour
2021-08-24 17:22             ` Miquel Raynal [this message]
2021-08-24 17:22               ` Miquel Raynal
2021-08-25  8:47               ` Kestrel seventyfour
2021-08-25  8:47                 ` Kestrel seventyfour
2021-08-25  8:51                 ` Miquel Raynal
2021-08-25  8:51                   ` Miquel Raynal
2021-08-25 14:07                   ` Kestrel seventyfour
2021-08-25 14:07                     ` Kestrel seventyfour
2021-08-25 15:31                     ` Miquel Raynal
2021-08-25 15:31                       ` Miquel Raynal
2021-08-26  5:27                       ` Kestrel seventyfour
2021-08-26  5:27                         ` Kestrel seventyfour
2021-09-16 19:38 ` Jan Hoffmann
2021-09-16 19:38   ` Jan Hoffmann
2021-09-17 17:01   ` Miquel Raynal
2021-09-17 17:01     ` Miquel Raynal
2021-09-17 17:45     ` Jan Hoffmann
2021-09-17 17:45       ` Jan Hoffmann
2021-09-17 19:32       ` Miquel Raynal
2021-09-17 19:32         ` Miquel Raynal
2021-09-18 21:26         ` Jan Hoffmann
2021-09-18 21:26           ` Jan Hoffmann
2021-09-27 16:31           ` Miquel Raynal
2021-09-27 16:31             ` Miquel Raynal
2021-09-27 20:32             ` Jan Hoffmann
2021-09-27 20:32               ` Jan Hoffmann
2021-09-28  8:49               ` Miquel Raynal
2021-09-28  8:49                 ` 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=20210824192203.076df55e@xps13 \
    --to=miquel.raynal@bootlin.com \
    --cc=kestrelseventyfour@gmail.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-mtd@lists.infradead.org \
    --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.