From mboxrd@z Thu Jan 1 00:00:00 1970 From: Sergiy Kibrik Date: Fri, 05 Nov 2010 14:35:31 +0200 Subject: [U-Boot] [PATCH] OMAP4: speed up booting on Pandaboard In-Reply-To: <4CD2D56D.70302@gmail.com> References: <4CD27F08.8060309@globallogic.com> <4CD2D56D.70302@gmail.com> Message-ID: <4CD3FA13.8090001@globallogic.com> List-Id: MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit To: u-boot@lists.denx.de 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_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? 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_ENV 1 >> >> /* Flash */ >> @@ -146,7 +146,7 @@ >> #define CONFIG_ENV_OVERWRITE >> >> #define CONFIG_EXTRA_ENV_SETTINGS \ >> - "loadaddr=0x82000000\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-00005-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