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