All of lore.kernel.org
 help / color / mirror / Atom feed
From: Miquel RAYNAL <miquel.raynal@free-electrons.com>
To: Ezequiel Garcia <ezequiel@vanguardiasur.com.ar>
Cc: "Sean Nyekjær" <sean.nyekjaer@prevas.dk>,
	"linux-mtd@lists.infradead.org" <linux-mtd@lists.infradead.org>,
	"Kasper Revsbech (KREV)" <krev@triax.com>,
	"Ezequiel Garcia" <ezequiel.garcia@free-electrons.com>
Subject: Re: [BUG] pxa3xx: wait time out when scanning for bb
Date: Sun, 10 Dec 2017 15:17:34 +0100	[thread overview]
Message-ID: <20171210151734.7e1aac59@xps13> (raw)
In-Reply-To: <CAAEAJfBGG9wMVGnwSBfgr+tpr_E_weVBqTc=EvDGU6JUQveFQg@mail.gmail.com>

Hi Ezequiel,

> >> [    2.296924] nand: device found, Manufacturer ID: 0x2c, Chip ID:
> >> 0xda [    2.303311] nand: Micron MT29F2G08ABAEAH4
> >> [    2.307334] nand: 256 MiB, SLC, erase size: 128 KiB, page size:
> >> 2048, OOB size: 64
> >> [    2.314939] pxa3xx-nand f10d0000.flash: ECC strength 16, ECC
> >> step size 2048  
> >
> > In theory, Marvell NAND flash controller does support 16-bit
> > strength per 512 bytes over 2048 bytes pages. However, this
> > controller driver (pxa3xx_nand) does not. See [1] for the supported
> > configurations. 
> 
> Why do you say the driver does not support it?

My reading of the trace was incomplete as it is mentioned that the
16-bit correction applies on 2kiB chunks (a full page) while I was
referring to 512 bytes chunks.

Protecting 2kiB pages with BCH algorithm may prevent the flip of up to
16 bits per page, which may also be seen as 4 bits per 512 bytes.
Asking for 16-bit strength for 512 bytes (configuration I was referring
to) is supported by the controller but simply not implemented.

However, below code setting up ecc->strength to 16 while ecc_stepsize is
512 is, IMHO, wrong.

> 
> It's automatically selecting this:
> 
>         /*
>          * Required ECC: 4-bit correction per 512 bytes
>          * Select: 16-bit correction per 2048 bytes
>          */
>         } else if (strength == 4 && ecc_stepsize == 512 && page_size
> == 2048) { info->ecc_bch = 1;
>                 info->chunk_size = 2048;
>                 info->spare_size = 32;
>                 info->ecc_size = 32;
>                 ecc->mode = NAND_ECC_HW;
>                 ecc->size = info->chunk_size;
>                 ecc->layout = &ecc_layout_2KB_bch4bit;
>                 ecc->strength = 16;
> 
> Otherwise, you would have seen the "ECC strength ... at page size ...
> is not supported"
> 
> > The ECC strength shown here is probably the best to use with this
> > type of NAND device but I suggest you try with 4b/512B by using
> > these two properties like in [2]:
> >
> >         nand-ecc-strength = <4>;
> >         nand-ecc-step-size = <512>;
> >
> >
> > Thanks,
> > Miquèl
> >
> > [1]
> > http://elixir.free-electrons.com/linux/v4.14/source/drivers/mtd/nand/pxa3xx_nand.c#L1575
> >
> > [2]
> > http://elixir.free-electrons.com/linux/v4.14/source/arch/arm/boot/dts/armada-385-db-ap.dts#L172
> >
> > ______________________________________________________
> > Linux MTD discussion mailing list
> > http://lists.infradead.org/mailman/listinfo/linux-mtd/  
> 
> 
> 



-- 
Miquel Raynal, Free Electrons
Embedded Linux and Kernel engineering
http://free-electrons.com

  reply	other threads:[~2017-12-10 14:18 UTC|newest]

Thread overview: 85+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-11-28  9:12 [BUG] pxa3xx: wait time out when scanning for bb Sean Nyekjær
2017-11-28 13:02 ` Miquel RAYNAL
2017-11-28 13:12   ` Sean Nyekjær
2017-11-28 13:30     ` Miquel RAYNAL
2017-11-28 13:42       ` Sean Nyekjær
2017-11-28 14:04         ` Miquel RAYNAL
2017-11-29  7:14           ` Sean Nyekjær
2017-11-29  8:03             ` Miquel RAYNAL
2017-11-30 12:00               ` Sean Nyekjær
2017-11-30 17:18                 ` Miquel RAYNAL
2017-11-30 18:13                   ` Sean Nyekjær
2017-12-01  8:15                     ` Miquel RAYNAL
2017-12-01  8:54                       ` Sean Nyekjær
2017-12-07 20:38                         ` Miquel RAYNAL
2017-12-08  9:04                           ` Sean Nyekjær
2017-12-08  9:21                             ` Miquel RAYNAL
2017-12-11  8:25                               ` Sean Nyekjær
2017-12-11  8:45                                 ` Sean Nyekjær
2017-12-11  9:53                                 ` Miquel RAYNAL
2017-12-11 10:20                                   ` Sean Nyekjær
2017-12-11 11:35                                     ` Sean Nyekjær
2017-12-11 13:22                                       ` Sean Nyekjær
2017-12-11 14:02                                         ` Miquel RAYNAL
2017-12-11 14:09                                           ` Miquel RAYNAL
2017-12-11 14:49                                             ` Boris Brezillon
2017-12-12  8:44                                             ` Sean Nyekjær
2017-12-12  8:51                                               ` Miquel RAYNAL
2017-12-12  8:56                                                 ` Sean Nyekjær
2017-12-12 10:12                                                   ` Miquel RAYNAL
2017-12-12 10:55                                                     ` Sean Nyekjær
2017-12-12 11:08                                                       ` Miquel RAYNAL
2017-12-12 11:28                                                         ` Sean Nyekjær
2017-12-12 11:35                                                           ` Miquel RAYNAL
2017-12-12 11:49                                                             ` Sean Nyekjær
2017-12-12 12:47                                                               ` Miquel RAYNAL
2017-12-12 13:09                                                                 ` Sean Nyekjær
2017-12-12 13:35                                                                   ` Miquel RAYNAL
2017-12-12 18:10                                                                     ` Sean Nyekjær
2017-12-12 18:23                                                                       ` Miquel RAYNAL
2017-12-13  6:25                                                                         ` Sean Nyekjær
2017-12-13  8:41                                                                           ` Miquel RAYNAL
2017-12-13  9:31                                                                             ` Sean Nyekjær
2017-12-15 17:25                                                                             ` Miquel RAYNAL
2017-12-15 18:56                                                                               ` Sean Nyekjær
2017-12-15 19:19                                                                                 ` Miquel RAYNAL
2017-12-17 11:56                                                                                   ` Sean Nyekjaer
2017-12-17 13:19                                                                                     ` Boris Brezillon
2017-12-17 21:47                                                                                       ` Sean Nyekjaer
2017-12-17 22:00                                                                                         ` Boris Brezillon
2017-12-17 22:15                                                                                           ` [SPAM] " Sean Nyekjær
2017-12-17 22:19                                                                                             ` Boris Brezillon
2017-12-17 22:19                                                                                             ` Miquel RAYNAL
2017-12-18  6:23                                                                                               ` Sean Nyekjær
2017-12-18  8:56                                                                                                 ` Miquel RAYNAL
2017-12-18  9:26                                                                                                   ` Sean Nyekjær
2017-12-18  9:35                                                                                                     ` Miquel RAYNAL
2017-12-18 10:12                                                                                                       ` Sean Nyekjær
2017-12-18 10:19                                                                                                         ` Miquel RAYNAL
2017-12-18 10:26                                                                                                           ` Sean Nyekjær
2017-12-18 10:45                                                                                                             ` Boris Brezillon
2017-12-18 10:48                                                                                                               ` Sean Nyekjær
2017-12-18 12:43                                                                                                                 ` Boris Brezillon
2017-12-18  8:57                                                                                                 ` [SPAM] " Boris Brezillon
2017-12-17 13:48                                                                                     ` Boris Brezillon
2017-12-11 20:11                                     ` Miquel RAYNAL
2017-12-09 23:18       ` Ezequiel Garcia
2017-12-10 14:17         ` Miquel RAYNAL [this message]
2017-12-11 12:30           ` Ezequiel Garcia
2017-12-11 13:13             ` Miquel RAYNAL
2017-12-11 16:08               ` Ezequiel Garcia
2017-12-11 16:41                 ` Miquel RAYNAL
     [not found]             ` <CAL92e2W7fLjVOWFgH2PpRLRP7Tf5L1vta0jduWm+bTVm647MNQ@mail.gmail.com>
2017-12-11 16:24               ` Ezequiel Garcia
2017-12-11 16:45                 ` Boris Brezillon
2017-12-11 21:16                 ` Boris Brezillon
2017-12-12  6:01                   ` Greg Cook
2017-12-12  7:09                     ` Ezequiel Garcia
2017-12-12  7:30                       ` Greg Cook
2017-12-12  8:15                         ` Boris Brezillon
2017-12-12 16:22                           ` Ezequiel Garcia
2017-12-12  6:36               ` Sean Nyekjær
2017-12-12  6:50                 ` Ezequiel Garcia
2017-12-12  7:17                   ` Greg Cook
2017-12-09 23:04   ` Ezequiel Garcia
2017-12-09 23:22 ` Ezequiel Garcia
2017-12-09 23:24   ` Ezequiel Garcia

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=20171210151734.7e1aac59@xps13 \
    --to=miquel.raynal@free-electrons.com \
    --cc=ezequiel.garcia@free-electrons.com \
    --cc=ezequiel@vanguardiasur.com.ar \
    --cc=krev@triax.com \
    --cc=linux-mtd@lists.infradead.org \
    --cc=sean.nyekjaer@prevas.dk \
    /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.