From: Detlev Zundel <dzu@denx.de>
To: u-boot@lists.denx.de
Subject: [U-Boot] boot-up time optimization. Where to start?
Date: Mon, 02 May 2011 17:31:15 +0200 [thread overview]
Message-ID: <m2k4e9f7b0.fsf@ohwell.denx.de> (raw)
In-Reply-To: <201105021640.27241.alexander.stein@systec-electronic.com> (Alexander Stein's message of "Mon, 2 May 2011 16:40:26 +0200")
Hi Alexander,
> 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.
It doesn't really matter who is right - 100ms is way off for setting
these variables. Looking into common/cmd_nvedit.c, these variables have
a special handling and there are ifdef's involved, so its not
straightforward to read. You should really find out, where in there the
time is spent for your board and fix the problem ;)
Cheers
Detlev
--
I can understand that things like user-level libraries have to take crazy people
into account, but the kernel internal libraries definitely do not.
-- Linus Torvalds
--
DENX Software Engineering GmbH, MD: Wolfgang Denk & Detlev Zundel
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
Phone: (+49)-8142-66989-40 Fax: (+49)-8142-66989-80 Email: dzu at denx.de
next prev parent reply other threads:[~2011-05-02 15:31 UTC|newest]
Thread overview: 27+ messages / expand[flat|nested] mbox.gz Atom feed top
2011-04-27 13:39 [U-Boot] boot-up time optimization. Where to start? Simon Schwarz
2011-04-27 14:37 ` Tabi Timur-B04825
2011-04-27 15:10 ` Eric Cooper
2011-04-27 15:27 ` Mike Frysinger
2011-04-27 15:59 ` Alexander Stein
2011-04-27 16:37 ` Mike Frysinger
2011-04-27 19:08 ` Wolfgang Denk
[not found] ` <BANLkTimQzo7mMMb0DjqX0c78pcNHnDXPLg@mail.gmail.com>
2011-04-27 21:19 ` Wolfgang Denk
2011-04-28 8:12 ` Simon Schwarz
2011-05-02 14:40 ` Alexander Stein
2011-05-02 15:31 ` Detlev Zundel [this message]
2011-05-02 16:07 ` Alexander Stein
2011-05-02 16:19 ` Detlev Zundel
2011-05-02 17:02 ` Wolfgang Denk
2011-05-02 17:00 ` Wolfgang Denk
2011-05-03 6:48 ` Alexander Stein
2011-05-03 8:08 ` Stefano Babic
2011-05-05 5:32 ` Wolfgang Denk
2011-05-05 7:06 ` Alexander Stein
2011-05-05 7:27 ` Wolfgang Denk
2011-05-06 8:54 ` Stefano Babic
2011-05-05 18:10 ` Charles Manning
2011-05-05 20:18 ` Simon Glass
2011-05-09 10:49 ` Detlev Zundel
2011-05-10 7:29 ` Simon Schwarz
2011-05-11 5:12 ` Simon Glass
2011-04-27 19:07 ` Wolfgang Denk
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=m2k4e9f7b0.fsf@ohwell.denx.de \
--to=dzu@denx.de \
--cc=u-boot@lists.denx.de \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox