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
next prev parent 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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox