[U-Boot] [PATCH 1/1] arm: clean sizes.h
Jean-Christophe PLAGNIOL-VILLARD
plagnioj at jcrosoft.com
Sat May 2 21:40:09 CEST 2009
On 20:32 Sat 02 May , Wolfgang Denk wrote:
> Dear Jean-Christophe PLAGNIOL-VILLARD,
>
> In message <1241219918-22846-1-git-send-email-plagnioj at jcrosoft.com> you wrote:
> > remove duplicated and clean it
>
> Please just remove this. I mean, without attempting to clean it up.
>
> [And not only on ARM, but everywhere.]
Actually For ARM we ask us tp use it so to simplify the import from linux
this "helper" are also imported
>
>
> I never understood why "SZ_8K" would be better than 8192 or 8*1024 ?
Honnestly it's not my goal here. My goal is to rationalize the sizes.h file
content and location to be the same as the kernel
>
>
> Note that, apart from personal preferences, these "helpful" defi-
> nitions are misleading and at least sometimes even plain wrong. See
> below for details.
>
> ....
> > --- a/include/asm-arm/sizes.h
> > +++ b/include/asm-arm/sizes.h
> > @@ -16,7 +16,7 @@
> > /* DO NOT EDIT!! - this file automatically generated
> > * from .s file by awk -f s2h.awk
> ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
>
> It seems you ignore this warning? Is this a wise thing to do?
I've import the last linux version of it
>
> > /* handy sizes */
> > +#define SZ_16 0x00000010
> > +#define SZ_256 0x00000100
> > +#define SZ_512 0x00000200
>
> NAK. I will not accept a patch that adds such definitions. That's
> ridiculous. What is the problem of writing "16" when you mean "16"?
> Why would "SZ_512" be any better than plain "512" - except that it's
> twice as much to type.
>
>
> > #define SZ_1K 0x00000400
> > #define SZ_4K 0x00001000
> > #define SZ_8K 0x00002000
>
> Please keep in mind that "K", "M", and "G" are non-standard prefixes,
> and it is not clear if they refer to decimal or binary multiples.
> This makes their use in the code a PITA.
I do not choose it
>
> We should try to be precise, and we should follow existing standards.
>
> Prefixes and symbols for binary multiples are standardized in IEC
> 60027-2. [They are not part of the SI metric system of units,
> though.] Correct names for 1024 = (1 << 10), 1024*1024 = ( 1 << 20)
> and 1024*1024*1024 = (1 << 30) are "kibi" (kilobinary, abbreviated as
> "Ki"), "mebi" (megabinary, "Mi"), and "gibi" (gigabinary, "Gi"),
> respective. Note that this is "Ki", not "K".
I known but it's the linux implementation choice not mine
>
> So if you think youmust define something that means 8192, then please
> name it "8 Ki", as "Ki" is the correct, standardized symbol for the
> name "kibi", meaning "kilobinary".
Honnestly I think I'll let you try to deal it with Russel
>
>
> With "8 K", nobody ever knows for sure what is meant - is it 8*10**3
> or is it 8*2**10.
>
> Thus my urgent recommendation: let's get rid of all this ambiguous
> SZ_* definitions and use numbers. "8 * 1024" is at least as readable
> as "SZ_8K", and it leaves no doubt what might be meant.
To simplify linux import I'll not prefer it
Best Regards,
J.
More information about the U-Boot
mailing list