All of lore.kernel.org
 help / color / mirror / Atom feed
From: Scott Wood <scottwood@freescale.com>
To: u-boot@lists.denx.de
Subject: [U-Boot] [PATCH 4/9] imx: nand: Place BBT patterns into free OOB region
Date: Fri, 13 Apr 2012 12:19:11 -0500	[thread overview]
Message-ID: <4F88600F.90507@freescale.com> (raw)
In-Reply-To: <1334316061-26019-5-git-send-email-timo@exertus.fi>

On 04/13/2012 06:20 AM, Timo Ketola wrote:
> First two bytes of the first OOB of erase block are reserved for factory
> bad block marking, usually.
> 
> Signed-off-by: Timo Ketola <timo@exertus.fi>
> ---
>  drivers/mtd/nand/mxc_nand.c |   35 +++++++++++++++++++++++++++++++++++
>  1 files changed, 35 insertions(+), 0 deletions(-)

So what happened before?  The default is at offset 8, which doesn't
conflict with the bad block marker.  It seems the actual issue is a
conflict with ECC?

And NAND_USE_FLASH_BBT wasn't defined before, so a better subject line
for this patch would be "nand/mxc: support flash-based BBT".

> diff --git a/drivers/mtd/nand/mxc_nand.c b/drivers/mtd/nand/mxc_nand.c
> index 35e89a0..73813a2 100644
> --- a/drivers/mtd/nand/mxc_nand.c
> +++ b/drivers/mtd/nand/mxc_nand.c
> @@ -1302,12 +1302,47 @@ static void mxc_setup_config1(void)
>  #define mxc_setup_config1()
>  #endif
>  
> +#ifdef CONFIG_SYS_NAND_USE_FLASH_BBT
> +
> +static u8 bbt_pattern[] = {'B', 'b', 't', '0' };
> +static u8 mirror_pattern[] = {'1', 't', 'b', 'B' };
> +
> +static struct nand_bbt_descr bbt_main_descr = {
> +	.options = NAND_BBT_LASTBLOCK | NAND_BBT_CREATE | NAND_BBT_WRITE |
> +		   NAND_BBT_2BIT | NAND_BBT_VERSION | NAND_BBT_PERCHIP,
> +	.offs =	2,
> +	.len = 4,
> +	.veroffs = 6,
> +	.maxblocks = 4,
> +	.pattern = bbt_pattern,
> +};
> +
> +static struct nand_bbt_descr bbt_mirror_descr = {
> +	.options = NAND_BBT_LASTBLOCK | NAND_BBT_CREATE | NAND_BBT_WRITE |
> +		   NAND_BBT_2BIT | NAND_BBT_VERSION | NAND_BBT_PERCHIP,
> +	.offs =	2,
> +	.len = 4,
> +	.veroffs = 6,
> +	.maxblocks = 4,
> +	.pattern = mirror_pattern,
> +};
> +
> +#endif
> +

Won't veroffs = 6 conflict with ECC in the MXC_NFC_V1 case?

What about 8-bit small page support, in which case the bad block marker
is at offset 5?

>  int board_nand_init(struct nand_chip *this)
>  {
>  	struct mtd_info *mtd;
>  	uint16_t tmp;
>  	int err = 0;
>  
> +#ifdef CONFIG_SYS_NAND_USE_FLASH_BBT
> +
> +	this->options = NAND_USE_FLASH_BBT;
> +	this->bbt_td = &bbt_main_descr;
> +	this->bbt_md = &bbt_mirror_descr;
> +
> +#endif

Please remove those blank lines inside the ifdef.

-Scott

  reply	other threads:[~2012-04-13 17:19 UTC|newest]

Thread overview: 110+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-04-12  9:33 [U-Boot] [PATCH 0/8] i.MX25: Miscellaneus fixes Timo Ketola
2012-04-12  9:33 ` [U-Boot] [PATCH 1/8] i.MX25: add mxc_get_clock infrastructure Timo Ketola
2012-04-12  9:33 ` [U-Boot] [PATCH 2/8] i.MX: Add target flashable to offset 0 Timo Ketola
2012-04-12 11:11   ` Stefano Babic
2012-04-12 11:21     ` Timo Ketola
2012-04-12  9:33 ` [U-Boot] [PATCH 3/8] Build: Ignore build tree and IDE control file Timo Ketola
2012-04-12 11:13   ` Stefano Babic
2012-04-12 11:24     ` Timo Ketola
2012-04-12 12:00       ` Stefano Babic
2012-04-12 12:04         ` Timo Ketola
2012-08-09 20:26   ` Wolfgang Denk
2012-08-13  5:43     ` Timo Ketola
2012-04-12  9:33 ` [U-Boot] [PATCH 4/8] i.MX25: Has a GPIO4 too Timo Ketola
2012-04-12 11:15   ` Stefano Babic
2012-04-12 12:10   ` Wolfgang Denk
2012-04-12 12:20     ` Timo Ketola
2012-04-12 13:09       ` Detlev Zundel
2012-04-13  4:58         ` Timo Ketola
2012-04-12  9:33 ` [U-Boot] [PATCH 5/8] MXC FEC: Resolve speed before configuring gasket Timo Ketola
2012-04-12 12:05   ` Stefano Babic
2012-04-12 13:16     ` Timo Ketola
2012-04-12 14:31       ` Stefano Babic
2012-04-12 12:12   ` Wolfgang Denk
2012-04-12 19:59   ` Troy Kisky
2012-04-12 20:12     ` Timo Ketola
2012-04-12  9:33 ` [U-Boot] [PATCH 6/8] i.MX25: Add Exertus EXE4026 board Timo Ketola
2012-04-12 10:43   ` Fabio Estevam
2012-04-12 10:57     ` Timo Ketola
2012-04-12 12:06   ` Stefano Babic
2012-04-12 12:09     ` Timo Ketola
2012-04-12 12:40       ` Stefano Babic
2012-04-12  9:33 ` [U-Boot] [PATCH 7/8] MXC NAND: Place BBT patterns into free OOB region Timo Ketola
2012-04-12  9:33 ` [U-Boot] [PATCH 8/8] i.MX25: This model has almost the same USB-controller as i.MX31 Timo Ketola
2012-04-13 11:20 ` [U-Boot] [PATCH 0/9 v2] i.MX25: Miscellaneus fixes Timo Ketola
2012-04-13 11:20   ` [U-Boot] [PATCH 1/9] i.MX25: esdhc: Add mxc_get_clock infrastructure Timo Ketola
2012-04-13 11:20   ` [U-Boot] [PATCH 2/9] i.MX25: This architecture has a GPIO4 too Timo Ketola
2012-04-13 11:20   ` [U-Boot] [PATCH 3/9] imx: fec: Resolve speed before configuring gasket Timo Ketola
2012-04-13 11:20   ` [U-Boot] [PATCH 4/9] imx: nand: Place BBT patterns into free OOB region Timo Ketola
2012-04-13 17:19     ` Scott Wood [this message]
2012-04-13 18:12       ` Timo Ketola
2012-04-13 18:17         ` Scott Wood
2012-04-13 18:39           ` Timo Ketola
2012-04-16  6:41           ` Timo Ketola
2012-04-16 14:43             ` Scott Wood
2012-04-13 11:20   ` [U-Boot] [PATCH 5/9] i.MX25: This architecture has almost the same USB-controller as i.MX31 Timo Ketola
2012-04-13 11:20   ` [U-Boot] [PATCH 6/9] imx: usb: There is no such register Timo Ketola
2012-04-13 11:20   ` [U-Boot] [PATCH 7/9] imx: esdhc: Needed to use in imx-regs.h defined address Timo Ketola
2012-04-13 11:21   ` [U-Boot] [PATCH 8/9] imx: nand: Don't invent new configuration variable Timo Ketola
2012-04-13 17:21     ` Scott Wood
2012-04-13 18:28       ` Timo Ketola
2012-04-13 11:21   ` [U-Boot] [PATCH 9/9] imx: Add u-boot.imx as target for ARM9 i.MX SOCs Timo Ketola
2012-04-18  7:57 ` [U-Boot] [PATCH 0/8 v3] i.MX25: Miscellaneus fixes Timo Ketola
2012-04-18  7:57   ` [U-Boot] [PATCH 1/9] i.MX25: esdhc: Add mxc_get_clock infrastructure Timo Ketola
2012-04-18  9:23     ` Wolfgang Denk
2012-04-18 10:42       ` Timo Ketola
2012-04-18  7:57   ` [U-Boot] [PATCH 2/9] i.MX25: This architecture has a GPIO4 too Timo Ketola
2012-04-18  7:57   ` [U-Boot] [PATCH 3/9] imx: fec: Resolve speed before configuring gasket Timo Ketola
2012-04-18  7:57   ` [U-Boot] [PATCH 4/9] imx: nand: Support flash based BBT Timo Ketola
2012-04-18 16:30     ` Scott Wood
2012-04-18  7:57   ` [U-Boot] [PATCH 5/9] i.MX25: This architecture has almost the same USB-controller as i.MX31 Timo Ketola
2012-04-18  7:57   ` [U-Boot] [PATCH 6/9] imx: usb: There is no such register Timo Ketola
2012-04-18  9:05     ` Stefano Babic
2012-04-18  9:15       ` Timo Ketola
2012-04-18 10:32         ` Stefano Babic
2012-04-18  7:57   ` [U-Boot] [PATCH 7/9] imx: esdhc: Needed to use in imx-regs.h defined address Timo Ketola
2012-04-18  8:43     ` Stefano Babic
2012-04-18  9:11       ` Timo Ketola
2012-04-18 10:30         ` Stefano Babic
2012-04-18 11:05           ` Timo Ketola
2012-04-18 15:05             ` Stefano Babic
2012-04-18 16:27               ` Timo Ketola
2012-04-18 16:59                 ` Timo Ketola
2012-04-18  7:57   ` [U-Boot] [PATCH 8/9] imx: Add u-boot.imx as target for ARM9 i.MX SOCs Timo Ketola
2012-04-18  8:13   ` [U-Boot] [PATCH 0/8 v3] i.MX25: Miscellaneus fixes Timo Ketola
2012-04-18  8:40   ` Stefano Babic
2012-04-19  8:55 ` [U-Boot] [PATCH V4 0/8] i.MX25: Preparing new board with miscellaneus fixes Timo Ketola
2012-04-19  8:55   ` [U-Boot] [PATCH V4 1/8] i.MX25: esdhc: Add mxc_get_clock infrastructure Timo Ketola
2012-04-19 16:15     ` Stefano Babic
2012-05-06 17:24     ` Stefano Babic
2012-04-19  8:55   ` [U-Boot] [PATCH V4 2/8] i.MX25: This architecture has a GPIO4 too Timo Ketola
2012-04-19 16:17     ` Stefano Babic
2012-05-06 17:17     ` Stefano Babic
2012-04-19  8:55   ` [U-Boot] [PATCH V4 3/8] imx: fec: Resolve speed before configuring gasket Timo Ketola
2012-04-19 16:16     ` Stefano Babic
2012-04-19 19:27     ` Troy Kisky
2012-04-19 20:18       ` Timo Ketola
2012-04-19 21:13         ` Troy Kisky
2012-04-19 21:23           ` Troy Kisky
2012-04-20  4:35             ` Timo Ketola
2012-04-20  7:30               ` Stefano Babic
2012-04-20  8:54                 ` Timo Ketola
2012-04-23  7:55                   ` Stefano Babic
2012-04-23  8:17                     ` Timo Ketola
2012-04-19 21:28     ` Troy Kisky
2012-04-20  4:25       ` Timo Ketola
2012-04-19  8:55   ` [U-Boot] [PATCH V4 4/8] imx: nand: Support flash based BBT Timo Ketola
2012-04-19 15:27     ` Scott Wood
2012-05-06 17:18     ` Stefano Babic
2012-04-19  8:55   ` [U-Boot] [PATCH V4 5/8] i.MX25: usb: Set PORTSCx register Timo Ketola
2012-04-19 16:16     ` Stefano Babic
2012-05-01 19:46       ` Marek Vasut
2012-05-06 17:19     ` Stefano Babic
2012-04-19  8:55   ` [U-Boot] [PATCH V4 6/8] imx: usb: There is no such register Timo Ketola
2012-04-19 16:17     ` Stefano Babic
2012-05-06 17:20     ` Stefano Babic
2012-04-19  8:55   ` [U-Boot] [PATCH V4 7/8] i.MX2: Include asm/types.h in arch-mx25/imx-regs.h Timo Ketola
2012-04-19 16:17     ` Stefano Babic
2012-05-06 17:21     ` Stefano Babic
2012-04-19  8:55   ` [U-Boot] [PATCH V4 8/8] imx: Add u-boot.imx as target for ARM9 i.MX SOCs Timo Ketola
2012-04-19 16:17     ` Stefano Babic

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=4F88600F.90507@freescale.com \
    --to=scottwood@freescale.com \
    --cc=u-boot@lists.denx.de \
    /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.