diff mbox

[U-Boot] fw_env.h: added a few missing defines

Message ID 1322746204-4393-1-git-send-email-fransmeulenbroeks@gmail.com
State Accepted
Commit 5d5cc384613e6182140101e7e1b0ee3d849291d1
Headers show

Commit Message

Frans Meulenbroeks Dec. 1, 2011, 1:30 p.m. UTC
The README file lists 4 defined that were not actually present in the .h
file but that were needed to get things working with settings compiled in.
They are
Added these to the .h file
(the values above are the ones from the README file)

Signed-off-by: Frans Meulenbroeks <fransmeulenbroeks@gmail.com>
---
 tools/env/fw_env.h |    4 ++++
 1 files changed, 4 insertions(+), 0 deletions(-)

Comments

Andreas Bießmann Dec. 1, 2011, 3:21 p.m. UTC | #1
Dear Frans Meulenbroeks,

Am 01.12.2011 14:30, schrieb Frans Meulenbroeks:
> The README file lists 4 defined that were not actually present in the .h
> file but that were needed to get things working with settings compiled in.
> They are
> Added these to the .h file
> (the values above are the ones from the README file)
> 
> Signed-off-by: Frans Meulenbroeks <fransmeulenbroeks@gmail.com>

I tend to NAK this.

> ---
>  tools/env/fw_env.h |    4 ++++
>  1 files changed, 4 insertions(+), 0 deletions(-)
> 
> diff --git a/tools/env/fw_env.h b/tools/env/fw_env.h
> index 9258c79..2dcb373 100644
> --- a/tools/env/fw_env.h
> +++ b/tools/env/fw_env.h
> @@ -34,8 +34,12 @@
>  #define DEVICE2_NAME      "/dev/mtd2"
>  #define DEVICE1_OFFSET    0x0000
>  #define ENV1_SIZE         0x4000
> +#define DEVICE1_ESIZE     0x4000
> +#define DEVICE1_ENVSECTORS     2

This change will overwrite the settings done by ENV1_SIZE ... and none
of the settings match my boards needs ;)

I would appreciate you test my patch
http://thread.gmane.org/gmane.comp.boot-loaders.u-boot/106972/focus=112948
or http://patchwork.ozlabs.org/patch/120372/

I guess you could fulfil your requirements with that patch too.

best regards

Andreas Bießmann
Frans Meulenbroeks Dec. 2, 2011, 8:24 a.m. UTC | #2
2011/12/1 Andreas Bießmann <andreas.devel@googlemail.com>

> Dear Frans Meulenbroeks,
>
> Am 01.12.2011 14:30, schrieb Frans Meulenbroeks:
> > The README file lists 4 defined that were not actually present in the .h
> > file but that were needed to get things working with settings compiled
> in.
> > They are
> > Added these to the .h file
> > (the values above are the ones from the README file)
> >
> > Signed-off-by: Frans Meulenbroeks <fransmeulenbroeks@gmail.com>
>
> I tend to NAK this.
>
> > ---
> >  tools/env/fw_env.h |    4 ++++
> >  1 files changed, 4 insertions(+), 0 deletions(-)
> >
> > diff --git a/tools/env/fw_env.h b/tools/env/fw_env.h
> > index 9258c79..2dcb373 100644
> > --- a/tools/env/fw_env.h
> > +++ b/tools/env/fw_env.h
> > @@ -34,8 +34,12 @@
> >  #define DEVICE2_NAME      "/dev/mtd2"
> >  #define DEVICE1_OFFSET    0x0000
> >  #define ENV1_SIZE         0x4000
> > +#define DEVICE1_ESIZE     0x4000
> > +#define DEVICE1_ENVSECTORS     2
>
> This change will overwrite the settings done by ENV1_SIZE ... and none
> of the settings match my boards needs ;)
>
> I would appreciate you test my patch
> http://thread.gmane.org/gmane.comp.boot-loaders.u-boot/106972/focus=112948
> or http://patchwork.ozlabs.org/patch/120372/
>
> I guess you could fulfil your requirements with that patch too.
>
> best regards
>

Hi Andreas, all

I have no particular preference to your patch, and I am not 100% sure about
the overwriting of ENV1_ESIZE.
Actually my understanding is that ENV1_SIZE specifies the size of the
environment and DEVICE1_ESIZE is the size of a sector (but I may be wrong
here)

What I noticed was that there is a difference with what is specified in the
tools/env/README file and what is in tools/env/fw_env.h

For my project I wanted to have the settings into the program and avoid the
file in /etc, hence I followed the README and bumped into the fact that
these two were missing. I've added them to make them compliant with the
README.

For my board of course the values were not correct either, so I patched
these locally, then tested my work and found it to work.
As it stands this could probably be replaced with your patch; can't test
that now as we are in the usual end-of-year stress to complete some
projects.  Yet an alternate solution could be to update the README file.

Best regards, Frans

PS (please keep me cc-ed, I've unsubscribed from the list a while ago due
to information overload because of being on too many lists)
(or talk to me on irc: eFfeM)
Andreas Bießmann Dec. 2, 2011, 10:13 a.m. UTC | #3
Dear Frans,

Am 02.12.2011 09:24, schrieb Frans Meulenbroeks:
> 
> 
> 2011/12/1 Andreas Bießmann <andreas.devel@googlemail.com
> <mailto:andreas.devel@googlemail.com>>
> 
>     Dear Frans Meulenbroeks,
> 
>     Am 01.12.2011 14:30, schrieb Frans Meulenbroeks:
>     > The README file lists 4 defined that were not actually present in
>     the .h
>     > file but that were needed to get things working with settings
>     compiled in.
>     > They are
>     > Added these to the .h file
>     > (the values above are the ones from the README file)
>     >
>     > Signed-off-by: Frans Meulenbroeks <fransmeulenbroeks@gmail.com
>     <mailto:fransmeulenbroeks@gmail.com>>
> 
>     I tend to NAK this.
> 
>     > ---
>     >  tools/env/fw_env.h |    4 ++++
>     >  1 files changed, 4 insertions(+), 0 deletions(-)
>     >
>     > diff --git a/tools/env/fw_env.h b/tools/env/fw_env.h
>     > index 9258c79..2dcb373 100644
>     > --- a/tools/env/fw_env.h
>     > +++ b/tools/env/fw_env.h
>     > @@ -34,8 +34,12 @@
>     >  #define DEVICE2_NAME      "/dev/mtd2"
>     >  #define DEVICE1_OFFSET    0x0000
>     >  #define ENV1_SIZE         0x4000
>     > +#define DEVICE1_ESIZE     0x4000
>     > +#define DEVICE1_ENVSECTORS     2
> 
>     This change will overwrite the settings done by ENV1_SIZE ... and none
>     of the settings match my boards needs ;)
> 
>     I would appreciate you test my patch
>     http://thread.gmane.org/gmane.comp.boot-loaders.u-boot/106972/focus=112948
>     or http://patchwork.ozlabs.org/patch/120372/
> 
>     I guess you could fulfil your requirements with that patch too.
> 
>     best regards
> 
> 
> Hi Andreas, all
> 
> I have no particular preference to your patch, and I am not 100% sure
> about the overwriting of ENV1_ESIZE.
> Actually my understanding is that ENV1_SIZE specifies the size of the
> environment and DEVICE1_ESIZE is the size of a sector (but I may be
> wrong here)

Well, I shortly overflow the code and saw around line 1240 in fw_env.c
the envdevices[0] values set by ENV1_SIZE are overwritten by
DEVICE1_ESIZE. But you are right, ENVx_SIZE is size of environment,
DEVICEx_SIZE is erase-size. Current code assumes erase-size == env-size
with one sector. Beside that fw_printenv requires /etc/fw_env.config by
default.

> What I noticed was that there is a difference with what is specified in
> the tools/env/README file and what is in tools/env/fw_env.h
> 
> For my project I wanted to have the settings into the program and avoid
> the file in /etc, hence I followed the README and bumped into the fact
> that these two were missing. I've added them to make them compliant with
> the README.

We do need compiled in parameters too, but I found it cumbersome to
change the code in repository to have correct parameters for my board.
Cause everyone need to patch the default configuration I found it easy
to provide a generic way to inject a specific configuration.
The http://patchwork.ozlabs.org/patch/120372/ is about three month old
but no one cares. Therefore the pointer to that patch ...

> For my board of course the values were not correct either, so I patched
> these locally, then tested my work and found it to work.
> As it stands this could probably be replaced with your patch; can't test
> that now as we are in the usual end-of-year stress to complete some
> projects.  Yet an alternate solution could be to update the README file.

I guess this would be best.

best regards

Andreas Bießmann
diff mbox

Patch

diff --git a/tools/env/fw_env.h b/tools/env/fw_env.h
index 9258c79..2dcb373 100644
--- a/tools/env/fw_env.h
+++ b/tools/env/fw_env.h
@@ -34,8 +34,12 @@ 
 #define DEVICE2_NAME      "/dev/mtd2"
 #define DEVICE1_OFFSET    0x0000
 #define ENV1_SIZE         0x4000
+#define DEVICE1_ESIZE     0x4000
+#define DEVICE1_ENVSECTORS     2
 #define DEVICE2_OFFSET    0x0000
 #define ENV2_SIZE         0x4000
+#define DEVICE2_ESIZE     0x4000
+#define DEVICE2_ENVSECTORS     2
 
 #define CONFIG_BAUDRATE		115200
 #define CONFIG_BOOTDELAY	5	/* autoboot after 5 seconds	*/