Re: [U-Boot] [PATCH] OMAP4: speed up booting on Pandaboard

2010-11-15 Thread Sergiy Kibrik
On 11/14/2010 11:18 PM, Wolfgang Denk wrote:
> Dear Sergiy Kibrik,
> 
> In message <4cd27f08.8060...@globallogic.com> you wrote:
>> Improved default config for OMAP4 Pandaboard for faster boot:
>>  -reduced environment size to speed up memory initialization;
>>  -USB TTY driver turned off;
>>  -tweaked blob load address to avoid image relocation (according to 
>> default uImage load address);
>>
>> Signed-off-by: Sergiy Kibrik 
>> ---
>>  include/configs/omap4_panda.h |8 
>>  1 files changed, 4 insertions(+), 4 deletions(-)
> ...
>> - * Total Size Environment - 256k
>> + * Total Size Environment - 2k
>>   * Malloc - add 256k
>>   */
>> -#define CONFIG_ENV_SIZE (256 << 10)
>> +#define CONFIG_ENV_SIZE (256 << 4)
> 
> I think we had this discussion before. "256 << 4" makes no sense when
> you mean 2 KiB - it requires the reader to actually perform the
> calculation, which means it makes it hard for him to understand the
> code. Without need. Please either write 2048, which everybody can
> parse easily, or write "2 << 10" which can be parsed easily well.
> 

I've considered advices you gave me in this thread:
http://marc.info/?t=12889762841&r=1&w=2

and resubmitted the patch
http://marc.info/?l=u-boot&m=128922349828119&w=2

Haven't you received that?

-regards,
Sergey
___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


Re: [U-Boot] [PATCH] OMAP4: speed up booting on Pandaboard

2010-11-14 Thread Wolfgang Denk
Dear Sergiy Kibrik,

In message <4cd27f08.8060...@globallogic.com> you wrote:
> Improved default config for OMAP4 Pandaboard for faster boot:
>   -reduced environment size to speed up memory initialization;
>   -USB TTY driver turned off;
>   -tweaked blob load address to avoid image relocation (according to 
> default uImage load address);
> 
> Signed-off-by: Sergiy Kibrik 
> ---
>  include/configs/omap4_panda.h |8 
>  1 files changed, 4 insertions(+), 4 deletions(-)
...
> - * Total Size Environment - 256k
> + * Total Size Environment - 2k
>   * Malloc - add 256k
>   */
> -#define CONFIG_ENV_SIZE  (256 << 10)
> +#define CONFIG_ENV_SIZE  (256 << 4)

I think we had this discussion before. "256 << 4" makes no sense when
you mean 2 KiB - it requires the reader to actually perform the
calculation, which means it makes it hard for him to understand the
code. Without need. Please either write 2048, which everybody can
parse easily, or write "2 << 10" which can be parsed easily well.

Best regards,

Wolfgang Denk

-- 
DENX Software Engineering GmbH, MD: Wolfgang Denk & Detlev Zundel
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
Phone: (+49)-8142-66989-10 Fax: (+49)-8142-66989-80 Email: w...@denx.de
"If a computer can't directly address all the RAM you can  use,  it's
just a toy." - anonymous comp.sys.amiga posting, non-sequitir
___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


Re: [U-Boot] [PATCH] OMAP4: speed up booting on Pandaboard

2010-11-05 Thread Sergiy Kibrik
On 11/05/2010 05:49 PM, Nishanth Menon wrote:
> lets drop this change for the timebeing then.
> 

agree =)

> 
>> Can you suggest a way to coordinate load addresses across kernel& 
>> bootloader build?
>>
> Hmm.. good point -> need to try an idea I am thinking at the moment -
> this info is present in the memory already -> just need to think how to
> drag it out

I'm also quite interested in it, so will be very glad to see your suggestions.

Thanks for your comments. I'll resubmit patch with different $subject.

-- 
Regards,
Sergey
___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


Re: [U-Boot] [PATCH] OMAP4: speed up booting on Pandaboard

2010-11-05 Thread Nishanth Menon
Sergiy Kibrik wrote, on 11/05/2010 10:44 AM:
> On 11/05/2010 03:12 PM, Nishanth Menon wrote:
>> Sergiy Kibrik wrote, on 11/05/2010 08:35 AM:
>>> On 11/04/2010 05:46 PM, Nishanth Menon wrote:
 Sergiy Kibrik wrote, on 11/04/2010 05:38 AM:
> Improved default config for OMAP4 Pandaboard for faster boot:
>   -reduced environment size to speed up memory initialization;
>   -USB TTY driver turned off;
 Do we really want to do this?
>>>
>>> well, Pandaboard has serial port. It can be used instead of usbtty
>> how about all those folks who dont have a serial cable handy instead
>> would like to power the board + see the terminal over usb?
>
> you're right, it can be the reason not to touch usbtty now.
lets drop this change for the timebeing then.

>   -tweaked blob load address to avoid image relocation (according to
> default uImage load address);
>
> Signed-off-by: Sergiy Kibrik
 What kind of savings did we get? I am guessing we have some time x
 savings..

>>>
>>> reducing ENV_SIZE saves ~0.2 s.
>>> turning off usbtty saves ~0.2 s.
>>> changing loadaddr saves about a second. As shown my measurements, all
>>> introduced changes save
>>> about 1.3 - 1.5 seconds.
>> for what? getting to u-boot shell prompt? if so, I wonder how it does it
>> actually happen.
>>
>
> no, not getting shell, but jumping to kernel. But even in case of getting
 > shell, why we have to wait 1 more second?
aaah, it would be good to fix up $subject to reflect this. "speed up 
booting" can mean anything.

> ---
> include/configs/omap4_panda.h |8 
> 1 files changed, 4 insertions(+), 4 deletions(-)
>
> diff --git a/include/configs/omap4_panda.h
> b/include/configs/omap4_panda.h
> index 74defab..5aba424 100644
> --- a/include/configs/omap4_panda.h
> +++ b/include/configs/omap4_panda.h
> @@ -62,10 +62,10 @@
>
> /*
>  * Size of malloc() pool
> - * Total Size Environment - 256k
> + * Total Size Environment - 2k
>  * Malloc - add 256k
>  */
> -#define CONFIG_ENV_SIZE(256<<10)
> +#define CONFIG_ENV_SIZE(256<<4)
 /me likes the change, but not sure how it saves boot time.
>>>
>>> again, it's about 0.2 seconds
>>
>> surprised how changing env saves 0.2 seconds - apologies, I dont have a
>> panda on hand at the moment to do some actual tests with the board and
>> patch :(
>
> I guess it's because of memory initializaion issues in mem_malloc_init(),
 > and because of 256k environment it takes longer to do memset.
>
interesting. thanks for the explanation.


> #define CONFIG_SYS_CONSOLE_IS_IN_ENV1
>
> /* Flash */
> @@ -146,7 +146,7 @@
> #define CONFIG_ENV_OVERWRITE
>
> #define CONFIG_EXTRA_ENV_SETTINGS \
> -"loadaddr=0x8200\0" \
> +"loadaddr=0x80007FC0\0" \
 btw, Dumb question: how did we decide on this address? building from
 kernel.org, I see System.map @ c0004000 ==>   80004000

 when I do make uImage,
 /bin/bash /home/nmenon/Src/opensource/linux-2.6/scripts/mkuboot.sh -A
 arm -O linux -T kernel -C none -a 0x80008000 -e 0x80008000 -n
 'Linux-2.6.37-rc1-5-gd88c092'

>>> 0x80007FC0 is kernel load address (0x80008000) minus size of u-boot
>>> header (64 bytes). So load address is exactly the same as image
>>> address inside loaded blob, and we avoid memmoving kernel to it's load
>>> address.
>> thanks for the clarification ->  it might be good for us to come up with
>> something a bit more automated as you can, in theory run mkuboot.sh with
>> a different address.
>>
>
> in theory yes, but practically it's just a default config for default uImage 
> target.
actually there are blokes who use it that way as well. for e.g., in the 
old days of using BuildRoot inside TI, it just did the mkimage outside 
instead of just doing make uImage.

> Can you suggest a way to coordinate load addresses across kernel&  bootloader 
> build?
>
Hmm.. good point -> need to try an idea I am thinking at the moment - 
this info is present in the memory already -> just need to think how to 
drag it out
-- 
Regards,
Nishanth Menon
___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


Re: [U-Boot] [PATCH] OMAP4: speed up booting on Pandaboard

2010-11-05 Thread Sergiy Kibrik
On 11/05/2010 03:12 PM, Nishanth Menon wrote:
> Sergiy Kibrik wrote, on 11/05/2010 08:35 AM:
>> On 11/04/2010 05:46 PM, Nishanth Menon wrote:
>>> Sergiy Kibrik wrote, on 11/04/2010 05:38 AM:
 Improved default config for OMAP4 Pandaboard for faster boot:
  -reduced environment size to speed up memory initialization;
  -USB TTY driver turned off;
>>> Do we really want to do this?
>>
>> well, Pandaboard has serial port. It can be used instead of usbtty
> how about all those folks who dont have a serial cable handy instead
> would like to power the board + see the terminal over usb?

you're right, it can be the reason not to touch usbtty now.

> 
>>
  -tweaked blob load address to avoid image relocation (according to
 default uImage load address);

 Signed-off-by: Sergiy Kibrik
>>> What kind of savings did we get? I am guessing we have some time x
>>> savings..
>>>
>>
>> reducing ENV_SIZE saves ~0.2 s.
>> turning off usbtty saves ~0.2 s.
>> changing loadaddr saves about a second. As shown my measurements, all
>> introduced changes save
>> about 1.3 - 1.5 seconds.
> for what? getting to u-boot shell prompt? if so, I wonder how it does it
> actually happen.
> 

no, not getting shell, but jumping to kernel. But even in case of getting 
shell, why we have to wait 1 more second?

>>
 ---
include/configs/omap4_panda.h |8 
1 files changed, 4 insertions(+), 4 deletions(-)

 diff --git a/include/configs/omap4_panda.h
 b/include/configs/omap4_panda.h
 index 74defab..5aba424 100644
 --- a/include/configs/omap4_panda.h
 +++ b/include/configs/omap4_panda.h
 @@ -62,10 +62,10 @@

/*
 * Size of malloc() pool
 - * Total Size Environment - 256k
 + * Total Size Environment - 2k
 * Malloc - add 256k
 */
 -#define CONFIG_ENV_SIZE(256<<   10)
 +#define CONFIG_ENV_SIZE(256<<   4)
>>> /me likes the change, but not sure how it saves boot time.
>>
>> again, it's about 0.2 seconds
> 
> surprised how changing env saves 0.2 seconds - apologies, I dont have a
> panda on hand at the moment to do some actual tests with the board and
> patch :(

I guess it's because of memory initializaion issues in mem_malloc_init(), and 
because of 256k environment it takes longer to do memset.

> 
>>
>>>
#define CONFIG_SYS_MALLOC_LEN(CONFIG_ENV_SIZE + (256<<  
 10))
/* initial data */
/* Vector Base */
 @@ -117,7 +117,7 @@

/* USB device configuration */
#define CONFIG_USB_DEVICE1
 -#define CONFIG_USB_TTY1
 +#undef CONFIG_USB_TTY
>>> do we need to have the undef? it might be better to just drop the define
>>> perhaps? what impact do we have on boot time with this change?
>>
>> if someone wants to turn usbtty again, he can simply #define variable
>> again,
>> in case we drop the whole line it may be slightly harder to find out
> proper
>> variable in the code and then #define it all over again. I just thought
>>keeping it will clarify config in some way.
> 
> adding a comment will help
> /* enable this to get tty over usb */

THX, I'l do that.

>>>
#define CONFIG_SYS_CONSOLE_IS_IN_ENV1

/* Flash */
 @@ -146,7 +146,7 @@
#define CONFIG_ENV_OVERWRITE

#define CONFIG_EXTRA_ENV_SETTINGS \
 -"loadaddr=0x8200\0" \
 +"loadaddr=0x80007FC0\0" \
>>> btw, Dumb question: how did we decide on this address? building from
>>> kernel.org, I see System.map @ c0004000 ==>  80004000
>>>
>>> when I do make uImage,
>>> /bin/bash /home/nmenon/Src/opensource/linux-2.6/scripts/mkuboot.sh -A
>>> arm -O linux -T kernel -C none -a 0x80008000 -e 0x80008000 -n
>>> 'Linux-2.6.37-rc1-5-gd88c092'
>>>
>> 0x80007FC0 is kernel load address (0x80008000) minus size of u-boot
>> header (64 bytes). So load address is exactly the same as image
>> address inside loaded blob, and we avoid memmoving kernel to it's load
>> address.
> thanks for the clarification -> it might be good for us to come up with
> something a bit more automated as you can, in theory run mkuboot.sh with
> a different address.
> 

in theory yes, but practically it's just a default config for default uImage 
target.
Can you suggest a way to coordinate load addresses across kernel & bootloader 
build?


___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


Re: [U-Boot] [PATCH] OMAP4: speed up booting on Pandaboard

2010-11-05 Thread Nishanth Menon
Sergiy Kibrik wrote, on 11/05/2010 08:35 AM:
> On 11/04/2010 05:46 PM, Nishanth Menon wrote:
>> Sergiy Kibrik wrote, on 11/04/2010 05:38 AM:
>>> Improved default config for OMAP4 Pandaboard for faster boot:
>>>  -reduced environment size to speed up memory initialization;
>>>  -USB TTY driver turned off;
>> Do we really want to do this?
>
> well, Pandaboard has serial port. It can be used instead of usbtty
how about all those folks who dont have a serial cable handy instead 
would like to power the board + see the terminal over usb?

>
>>>  -tweaked blob load address to avoid image relocation (according to
>>> default uImage load address);
>>>
>>> Signed-off-by: Sergiy Kibrik
>> What kind of savings did we get? I am guessing we have some time x
>> savings..
>>
>
> reducing ENV_SIZE saves ~0.2 s.
> turning off usbtty saves ~0.2 s.
> changing loadaddr saves about a second. As shown my measurements, all 
> introduced changes save
 > about 1.3 - 1.5 seconds.
for what? getting to u-boot shell prompt? if so, I wonder how it does it 
actually happen.

>
>>> ---
>>>include/configs/omap4_panda.h |8 
>>>1 files changed, 4 insertions(+), 4 deletions(-)
>>>
>>> diff --git a/include/configs/omap4_panda.h
>>> b/include/configs/omap4_panda.h
>>> index 74defab..5aba424 100644
>>> --- a/include/configs/omap4_panda.h
>>> +++ b/include/configs/omap4_panda.h
>>> @@ -62,10 +62,10 @@
>>>
>>>/*
>>> * Size of malloc() pool
>>> - * Total Size Environment - 256k
>>> + * Total Size Environment - 2k
>>> * Malloc - add 256k
>>> */
>>> -#define CONFIG_ENV_SIZE(256<<   10)
>>> +#define CONFIG_ENV_SIZE(256<<   4)
>> /me likes the change, but not sure how it saves boot time.
>
> again, it's about 0.2 seconds

surprised how changing env saves 0.2 seconds - apologies, I dont have a 
panda on hand at the moment to do some actual tests with the board and 
patch :(

>
>>
>>>#define CONFIG_SYS_MALLOC_LEN(CONFIG_ENV_SIZE + (256<<   10))
>>>/* initial data */
>>>/* Vector Base */
>>> @@ -117,7 +117,7 @@
>>>
>>>/* USB device configuration */
>>>#define CONFIG_USB_DEVICE1
>>> -#define CONFIG_USB_TTY1
>>> +#undef CONFIG_USB_TTY
>> do we need to have the undef? it might be better to just drop the define
>> perhaps? what impact do we have on boot time with this change?
>
> if someone wants to turn usbtty again, he can simply #define variable again,
 > in case we drop the whole line it may be slightly harder to find out 
proper
 > variable in the code and then #define it all over again. I just thought
 >keeping it will clarify config in some way.

adding a comment will help
/* enable this to get tty over usb */
>>
>>>#define CONFIG_SYS_CONSOLE_IS_IN_ENV1
>>>
>>>/* Flash */
>>> @@ -146,7 +146,7 @@
>>>#define CONFIG_ENV_OVERWRITE
>>>
>>>#define CONFIG_EXTRA_ENV_SETTINGS \
>>> -"loadaddr=0x8200\0" \
>>> +"loadaddr=0x80007FC0\0" \
>> btw, Dumb question: how did we decide on this address? building from
>> kernel.org, I see System.map @ c0004000 ==>  80004000
>>
>> when I do make uImage,
>> /bin/bash /home/nmenon/Src/opensource/linux-2.6/scripts/mkuboot.sh -A
>> arm -O linux -T kernel -C none -a 0x80008000 -e 0x80008000 -n
>> 'Linux-2.6.37-rc1-5-gd88c092'
>>
> 0x80007FC0 is kernel load address (0x80008000) minus size of u-boot header 
> (64 bytes). So load address is exactly the same as image address inside 
> loaded blob, and we avoid memmoving kernel to it's load address.
thanks for the clarification -> it might be good for us to come up with 
something a bit more automated as you can, in theory run mkuboot.sh with 
a different address.

-- 
Regards,
Nishanth Menon
___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


Re: [U-Boot] [PATCH] OMAP4: speed up booting on Pandaboard

2010-11-05 Thread Sergiy Kibrik
On 11/04/2010 05:46 PM, Nishanth Menon wrote:
> Sergiy Kibrik wrote, on 11/04/2010 05:38 AM:
>> Improved default config for OMAP4 Pandaboard for faster boot:
>> -reduced environment size to speed up memory initialization;
>> -USB TTY driver turned off;
> Do we really want to do this?

well, Pandaboard has serial port. It can be used instead of usbtty

>> -tweaked blob load address to avoid image relocation (according to
>> default uImage load address);
>>
>> Signed-off-by: Sergiy Kibrik
> What kind of savings did we get? I am guessing we have some time x
> savings..
> 

reducing ENV_SIZE saves ~0.2 s.
turning off usbtty saves ~0.2 s.
changing loadaddr saves about a second. As shown my measurements, all 
introduced changes save about 1.3 - 1.5 seconds.

>> ---
>>   include/configs/omap4_panda.h |8 
>>   1 files changed, 4 insertions(+), 4 deletions(-)
>>
>> diff --git a/include/configs/omap4_panda.h
>> b/include/configs/omap4_panda.h
>> index 74defab..5aba424 100644
>> --- a/include/configs/omap4_panda.h
>> +++ b/include/configs/omap4_panda.h
>> @@ -62,10 +62,10 @@
>>
>>   /*
>>* Size of malloc() pool
>> - * Total Size Environment - 256k
>> + * Total Size Environment - 2k
>>* Malloc - add 256k
>>*/
>> -#define CONFIG_ENV_SIZE(256<<  10)
>> +#define CONFIG_ENV_SIZE(256<<  4)
> /me likes the change, but not sure how it saves boot time.

again, it's about 0.2 seconds

> 
>>   #define CONFIG_SYS_MALLOC_LEN(CONFIG_ENV_SIZE + (256<<  10))
>>   /* initial data */
>>   /* Vector Base */
>> @@ -117,7 +117,7 @@
>>
>>   /* USB device configuration */
>>   #define CONFIG_USB_DEVICE1
>> -#define CONFIG_USB_TTY1
>> +#undef CONFIG_USB_TTY
> do we need to have the undef? it might be better to just drop the define
> perhaps? what impact do we have on boot time with this change?

if someone wants to turn usbtty again, he can simply #define variable again, in 
case we drop the whole line it may be slightly harder to find out proper 
variable in the code and then #define it all over again. I just thought keeping 
it will clarify config in some way.
> 
>>   #define CONFIG_SYS_CONSOLE_IS_IN_ENV1
>>
>>   /* Flash */
>> @@ -146,7 +146,7 @@
>>   #define CONFIG_ENV_OVERWRITE
>>
>>   #define CONFIG_EXTRA_ENV_SETTINGS \
>> -"loadaddr=0x8200\0" \
>> +"loadaddr=0x80007FC0\0" \
> btw, Dumb question: how did we decide on this address? building from
> kernel.org, I see System.map @ c0004000 ==> 80004000
> 
> when I do make uImage,
> /bin/bash /home/nmenon/Src/opensource/linux-2.6/scripts/mkuboot.sh -A
> arm -O linux -T kernel -C none -a 0x80008000 -e 0x80008000 -n
> 'Linux-2.6.37-rc1-5-gd88c092'
> 
0x80007FC0 is kernel load address (0x80008000) minus size of u-boot header (64 
bytes). So load address is exactly the same as image address inside loaded 
blob, and we avoid memmoving kernel to it's load address.

-regards,
Sergey
___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


Re: [U-Boot] [PATCH] OMAP4: speed up booting on Pandaboard

2010-11-04 Thread Nishanth Menon
Sergiy Kibrik wrote, on 11/04/2010 05:38 AM:
> Improved default config for OMAP4 Pandaboard for faster boot:
>   -reduced environment size to speed up memory initialization;
>   -USB TTY driver turned off;
Do we really want to do this?
>   -tweaked blob load address to avoid image relocation (according to 
> default uImage load address);
>
> Signed-off-by: Sergiy Kibrik
What kind of savings did we get? I am guessing we have some time x savings..

> ---
>   include/configs/omap4_panda.h |8 
>   1 files changed, 4 insertions(+), 4 deletions(-)
>
> diff --git a/include/configs/omap4_panda.h b/include/configs/omap4_panda.h
> index 74defab..5aba424 100644
> --- a/include/configs/omap4_panda.h
> +++ b/include/configs/omap4_panda.h
> @@ -62,10 +62,10 @@
>
>   /*
>* Size of malloc() pool
> - * Total Size Environment - 256k
> + * Total Size Environment - 2k
>* Malloc - add 256k
>*/
> -#define CONFIG_ENV_SIZE  (256<<  10)
> +#define CONFIG_ENV_SIZE  (256<<  4)
/me likes the change, but not sure how it saves boot time.

>   #define CONFIG_SYS_MALLOC_LEN   (CONFIG_ENV_SIZE + (256<<  10))
>   /* initial data */
>   /* Vector Base */
> @@ -117,7 +117,7 @@
>
>   /* USB device configuration */
>   #define CONFIG_USB_DEVICE   1
> -#define CONFIG_USB_TTY   1
> +#undef CONFIG_USB_TTY
do we need to have the undef? it might be better to just drop the define 
perhaps? what impact do we have on boot time with this change?

>   #define CONFIG_SYS_CONSOLE_IS_IN_ENV1
>
>   /* Flash */
> @@ -146,7 +146,7 @@
>   #define CONFIG_ENV_OVERWRITE
>
>   #define CONFIG_EXTRA_ENV_SETTINGS \
> - "loadaddr=0x8200\0" \
> + "loadaddr=0x80007FC0\0" \
btw, Dumb question: how did we decide on this address? building from 
kernel.org, I see System.map @ c0004000 ==> 80004000

when I do make uImage,
/bin/bash /home/nmenon/Src/opensource/linux-2.6/scripts/mkuboot.sh -A 
arm -O linux -T kernel -C none -a 0x80008000 -e 0x80008000 -n 
'Linux-2.6.37-rc1-5-gd88c092'


Regards,
Nishanth Menon
___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot