From: Vipin KUMAR <vipin.kumar@st.com>
To: u-boot@lists.denx.de
Subject: [U-Boot] [PATCH v3] NAND: environment offset in OOB (CONFIG_ENV_OFFSET_OOB)
Date: Thu, 01 Jul 2010 09:07:00 +0530 [thread overview]
Message-ID: <4C2C0D5C.7010702@st.com> (raw)
In-Reply-To: <1277933528-8335-1-git-send-email-bengardiner@nanometrics.ca>
On 7/1/2010 3:02 AM, Ben Gardiner wrote:
> This is a re-submission of the patch by Harald Welte
> <laforge@openmoko.org> with minor modifications for rebase and changes
> as suggested by Scott Wood <scottwood@freescale.com> [1] [2].
>
> This patch enables the environment partition to have a run-time dynamic
> location (offset) in the NAND flash. The reason for this is simply that
> all NAND flashes have factory-default bad blocks, and a fixed compile
> time offset would mean that sometimes the environment partition would
> live inside factory bad blocks. Since the number of factory default
> blocks can be quite high (easily 1.3MBytes in current standard
> components), it is not economic to keep that many spare blocks inside
> the environment partition.
>
> With this patch and CONFIG_ENV_OFFSET_OOB enabled, the location of the
> environment partition is stored in the out-of-band (OOB) data of the
> first block in flash. Since the first block is where most systems boot
> from, the vendors guarantee that the first block is not a factory
> default block.
>
> This patch introduces the 'nand env.oob' command, which can be called from
> the u-boot command line. 'nand env.oob get' reads the address of the
> environment partition from the OOB data,
> 'nand env.oob set {offset,partition-name}' allows the setting of the marker
> by specifying a numeric offset or a partition name.
>
Hello Ben,
This is a nice idea. I see that the logic needs 8bytes at offset 0 in block 0
oob area. This means that it would also overwrite the offset 5 (which is the
bad block marker in case of small page devices) and offset 0 (bad block marker
in large page devs)
Am I missing something here
Regards
Vipin
next prev parent reply other threads:[~2010-07-01 3:37 UTC|newest]
Thread overview: 104+ messages / expand[flat|nested] mbox.gz Atom feed top
2008-07-06 16:28 [U-Boot-Users] [PATCH, resend] Support dynamic/patched NAND ENV offset Harald Welte
2008-07-07 18:47 ` Scott Wood
2008-07-08 0:09 ` Harald Welte
2008-07-08 16:05 ` Scott Wood
2008-07-08 21:12 ` Wolfgang Denk
2008-07-09 0:23 ` Harald Welte
2008-07-09 7:05 ` Wolfgang Denk
2008-07-09 7:25 ` Harald Welte
2008-07-09 8:04 ` Wolfgang Denk
2008-07-09 12:13 ` Harald Welte
2010-06-01 20:23 ` [U-Boot] mtdparts: add bad-block skipping Ben Gardiner
2010-06-01 22:20 ` Wolfgang Denk
2010-06-01 22:34 ` Wolfgang Denk
2010-06-02 5:08 ` Ben Gardiner
2010-06-02 15:58 ` [U-Boot] [PATCH 0/4 v2] " Ben Gardiner
2010-07-05 21:43 ` [U-Boot] [PATCH v3 0/4] " Ben Gardiner
2010-07-12 19:06 ` Ben Gardiner
2010-08-09 20:43 ` [U-Boot] [PATCH v4 " Ben Gardiner
2010-08-30 17:38 ` [U-Boot] [PATCH v5 0/5] " Ben Gardiner
2010-08-30 17:38 ` [U-Boot] [PATCH v5 2/5] mtd: add an mtd method for get_len_incl_bad() Ben Gardiner
2010-08-30 20:57 ` Scott Wood
2010-08-31 13:50 ` Ben Gardiner
2010-08-31 21:48 ` [U-Boot] [PATCH v6 " Ben Gardiner
[not found] ` <1283185640-0-git-send-email-bengardiner@nanometrics.ca>
2010-08-30 17:38 ` [U-Boot] [PATCH v5 3/5] mtdparts: show net size in mtdparts list Ben Gardiner
2010-08-30 20:50 ` Scott Wood
2010-08-31 13:51 ` Ben Gardiner
2010-08-31 15:57 ` Scott Wood
2010-08-31 21:48 ` [U-Boot] [PATCH v6 " Ben Gardiner
2010-08-31 21:47 ` [U-Boot] [PATCH v6 0/5] mtdparts: add bad-block skipping Ben Gardiner
2010-09-09 20:54 ` Scott Wood
2010-08-09 20:43 ` [U-Boot] [PATCH v4 1/4] mtdparts: regroup calls to get_mtd_device_nm Ben Gardiner
2010-08-09 20:43 ` [U-Boot] [PATCH v4 2/4] mtdparts: show net size in mtdparts list Ben Gardiner
2010-08-26 18:57 ` Scott Wood
2010-08-27 13:51 ` Ben Gardiner
2010-08-27 15:44 ` Ben Gardiner
2010-08-27 16:02 ` Scott Wood
2010-08-27 16:45 ` Ben Gardiner
2010-08-09 20:43 ` [U-Boot] [PATCH v4 3/4] mtdparts: add new sub-command "spread" Ben Gardiner
2010-08-26 21:12 ` Scott Wood
2010-08-27 13:51 ` Ben Gardiner
2010-08-27 21:36 ` Ben Gardiner
2010-08-27 21:46 ` Scott Wood
2010-08-27 21:52 ` Ben Gardiner
2010-08-27 21:59 ` Scott Wood
2010-08-28 3:59 ` Ben Gardiner
2010-08-30 20:24 ` Scott Wood
2010-08-30 20:30 ` Ben Gardiner
2010-08-30 17:38 ` [U-Boot] [PATCH v5 4/5] " Ben Gardiner
2010-08-30 21:01 ` Scott Wood
2010-08-30 21:05 ` Scott Wood
2010-08-31 13:51 ` Ben Gardiner
2010-08-31 21:48 ` [U-Boot] [PATCH v6 " Ben Gardiner
2010-08-09 20:44 ` [U-Boot] [PATCH v4 4/4] mtdparts: new add.spread: add part skipping bad blocks Ben Gardiner
2010-08-26 22:26 ` Scott Wood
2010-08-27 13:52 ` Ben Gardiner
2010-08-30 17:39 ` [U-Boot] [PATCH v5 5/5] " Ben Gardiner
2010-08-31 21:48 ` [U-Boot] [PATCH v6 " Ben Gardiner
2010-07-05 21:43 ` [U-Boot] [PATCH v3 1/4] mtdparts: regroup calls to get_mtd_device_nm Ben Gardiner
2010-08-30 17:38 ` [U-Boot] [PATCH v5 1/5] " Ben Gardiner
2010-08-31 21:48 ` [U-Boot] [PATCH v6 " Ben Gardiner
2010-07-05 21:43 ` [U-Boot] [PATCH v3 2/4] mtdparts: show net size in mtdparts list Ben Gardiner
2010-08-07 20:08 ` Wolfgang Denk
2010-08-08 4:06 ` Harald Welte
2010-08-08 13:16 ` Wolfgang Denk
2010-08-09 14:45 ` Ben Gardiner
2010-09-18 19:42 ` Wolfgang Denk
2010-07-05 21:43 ` [U-Boot] [PATCH v3 3/4] mtdparts: add new sub-command "spread" Ben Gardiner
2010-08-07 20:12 ` Wolfgang Denk
2010-07-05 21:43 ` [U-Boot] [PATCH v3 4/4] mtdparts: new add.e: add part skipping bad blocks Ben Gardiner
2010-08-07 20:16 ` Wolfgang Denk
2010-06-02 15:58 ` [U-Boot] [PATCH 1/4 v2] mtdparts: regroup calls to get_mtd_device_nm Ben Gardiner
2010-06-02 15:58 ` [U-Boot] [PATCH 2/4 v2] mtdparts: show net size in mtdparts list Ben Gardiner
2010-06-02 15:58 ` [U-Boot] [PATCH 3/4 v2] mtdparts: add new sub-command "spread" Ben Gardiner
2010-06-02 15:58 ` [U-Boot] [PATCH 4/4 v2] mtdparts: new add.e: add part skipping bad blocks Ben Gardiner
2010-08-09 18:25 ` Scott Wood
2010-08-09 18:39 ` Ben Gardiner
2010-08-09 18:51 ` Scott Wood
2010-06-01 20:23 ` [U-Boot] [PATCH 1/4] mtdparts: regroup calls to get_mtd_device_nm Ben Gardiner
2010-06-02 7:06 ` Stefan Roese
2010-06-01 20:23 ` [U-Boot] [PATCH 2/4] mtdparts: show net size in mtdparts list Ben Gardiner
2010-06-02 7:15 ` Stefan Roese
2010-06-01 20:23 ` [U-Boot] [PATCH 3/4] mtdparts: add new sub-command "spread" Ben Gardiner
2010-06-01 20:23 ` [U-Boot] [PATCH 4/4] mtdparts: new add.e: add part skipping bad blocks Ben Gardiner
2008-07-09 0:18 ` [U-Boot-Users] [PATCH, resend] Support dynamic/patched NAND ENV offset Harald Welte
2008-07-09 5:28 ` Harald Welte
2008-07-09 7:07 ` Harald Welte
2008-07-09 8:11 ` [U-Boot-Users] [PATCH] " Harald Welte
2008-07-11 17:28 ` Scott Wood
2010-05-17 21:04 ` [U-Boot] [PATCH] NAND: Support dynamic location of enviromnent (CONFIG_ENV_OFFSET_OOB) Ben Gardiner
2010-05-26 22:58 ` Scott Wood
2010-05-26 23:38 ` Ben Gardiner
2010-05-31 21:29 ` [U-Boot] [PATCH v2] NAND: environment offset in OOB (CONFIG_ENV_OFFSET_OOB) Ben Gardiner
2010-06-30 21:32 ` [U-Boot] [PATCH v3] " Ben Gardiner
2010-06-30 21:41 ` Wolfgang Denk
2010-07-01 4:09 ` Ben Gardiner
2010-07-01 3:37 ` Vipin KUMAR [this message]
2010-07-01 5:29 ` Ben Gardiner
2010-07-01 7:17 ` Harald Welte
2010-07-05 13:57 ` Ben Gardiner
2010-07-05 17:27 ` [U-Boot] [PATCH v4] " Ben Gardiner
2010-07-12 16:17 ` Ben Gardiner
2010-07-12 16:19 ` Scott Wood
2010-07-13 19:26 ` Scott Wood
2010-07-13 21:17 ` Ben Gardiner
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=4C2C0D5C.7010702@st.com \
--to=vipin.kumar@st.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.