All of lore.kernel.org
 help / color / mirror / Atom feed
From: Huang Shijie <b32955@freescale.com>
To: <dedekind1@gmail.com>
Cc: Fabio Estevam <fabio.estevam@freescale.com>,
	Huang Shijie <shijie8@gmail.com>,
	linux-mtd@lists.infradead.org, marex.vasut@denx.de,
	kernel@pengutronix.de, shawn.guo@linaro.org,
	Fabio Estevam <festevam@gmail.com>,
	dwmw2@infradead.org
Subject: Re: [PATCH 1/2] nand: nand_bbt: Export nand_update_bbt
Date: Tue, 28 Aug 2012 10:19:33 +0800	[thread overview]
Message-ID: <503C2AB5.30108@freescale.com> (raw)
In-Reply-To: <1346081158.2848.363.camel@sauron.fi.intel.com>

于 2012年08月27日 23:25, Artem Bityutskiy 写道:
> On Thu, 2012-08-23 at 11:36 -0400, Huang Shijie wrote:
>>> Why this driver redefined ->block_markbad() at all, it is not supposed
>> For hardware reason, in mx23, the bad block mark is stored in the
>> first byte of the nand page;
>> in mx28/mx50/mx6q, the bad block mark is stored in the first byte of the OOB.
>>
>> That's why the driver redefined the ->block_markbad().
> OK. Would you please tell about the driver some more, I am particularly
> interested how th mx23 case works.
>
> * So the bad block marker is the first byte of the eraseblock set to 0?
yes.

> * What if the user data stars with zero? Or you hide the first NAND page
>    from the user?

Please see the picture in the common_nfc_set_geometry().
It's a real nand page layout.
The `M` is metadata, it's about 10 byte len.
The bad block marker is stored in the metadata, not the the
  `data` section which save the user's data.

We do not hide the first NAND page.

> * Can you point me to the code where you check if the eraseblock is bad
>    or not at the initialization time (sorry, I could find myself,
>    by trying to save time).
>
Please see the mx23_boot_init().

When mx23 reads a new nand chip in the first time, it will scan all
the nand chip. If it finds a bad block, it will call the 
nand->block_markbad() which
is just the gpmi_block_markbad(). the gpmi_block_markbad() will mark the 
first byte
of the nand page to 0 (the mx23 does not support the `swap` feature). So 
NAND boot mode,
the ROM of mx23 will check the first byte of the NAND page, if it finds 
a 0, it knows that
this is a bad block.

thanks
Huang Shijie

  reply	other threads:[~2012-08-28  2:17 UTC|newest]

Thread overview: 15+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-07-28 22:29 [PATCH] nand: Kconfig: Allow MTD_NAND_GPMI_NAND to be built as module Fabio Estevam
2012-07-28 22:29 ` [PATCH 1/2] nand: nand_bbt: Export nand_update_bbt Fabio Estevam
2012-08-23 15:08   ` Artem Bityutskiy
2012-08-23 15:36     ` Huang Shijie
2012-08-24  6:41       ` Artem Bityutskiy
2012-08-24 10:35         ` Huang Shijie
2012-08-24 10:35           ` Huang Shijie
2012-08-24 22:57           ` Brian Norris
2012-08-26 13:05             ` Huang Shijie
2012-08-27 15:25       ` Artem Bityutskiy
2012-08-28  2:19         ` Huang Shijie [this message]
2012-08-28 13:02   ` Artem Bityutskiy
  -- strict thread matches above, loose matches on Subject: below --
2012-07-28 22:30 [PATCH 2/2] nand: Kconfig: Allow MTD_NAND_GPMI_NAND to be built as module Fabio Estevam
2012-07-28 22:30 ` [PATCH 1/2] nand: nand_bbt: Export nand_update_bbt Fabio Estevam
2012-08-14 22:50   ` Fabio Estevam
2012-08-15 12:59     ` Artem Bityutskiy

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=503C2AB5.30108@freescale.com \
    --to=b32955@freescale.com \
    --cc=dedekind1@gmail.com \
    --cc=dwmw2@infradead.org \
    --cc=fabio.estevam@freescale.com \
    --cc=festevam@gmail.com \
    --cc=kernel@pengutronix.de \
    --cc=linux-mtd@lists.infradead.org \
    --cc=marex.vasut@denx.de \
    --cc=shawn.guo@linaro.org \
    --cc=shijie8@gmail.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.