[U-Boot] boot-up time optimization. Where to start?

Alexander Stein
2011-05-02T14:40:26Z

Dear Wolfgang,

Am Mittwoch, 27. April 2011, 21:08:50 schrieb Wolfgang Denk:
> In message <201104271759.11818.alexander.stein@systec-electronic.com> you
wrote:
> > Setting stdin, stdout and stderr takes a lot of time (IIRC ~500ms). Which
> > IMO is useless on a bootloader without LCD support.
>
> Statements like this are completely worhtless if you don;t tell
> exactly on which architecture and board, and with which exact version
> of U-Boot such numbers have been measured.

Ok, let me be more precise on this.
We used U-Boot v2010.09 on a custom board running on an I.MX35 (ARM1136).
We noticed the following code snippet took relatively long.
From common/console.c in console_init_r(void):

> /* Setting environment variables */
> for (i = 0; i < 3; i++) {
> setenv(stdio_names[i], stdio_devices[i]->name);
> }

We added PIN toggling around this part of code and measured something >100ms.
A collegue said it was ~100ms, I remembered ~500ms. Dunno who is right.

Regards,
Alexander