From mboxrd@z Thu Jan 1 00:00:00 1970 From: Detlev Zundel Date: Mon, 02 May 2011 18:19:24 +0200 Subject: [U-Boot] boot-up time optimization. Where to start? In-Reply-To: <201105021807.52142.alexander.stein@systec-electronic.com> (Alexander Stein's message of "Mon, 2 May 2011 18:07:51 +0200") References: <201105021640.27241.alexander.stein@systec-electronic.com> <201105021807.52142.alexander.stein@systec-electronic.com> Message-ID: List-Id: MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit To: u-boot@lists.denx.de Hi Alexander, [...] >> > 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 ;) > > Our 'fix' was removing the stated lines at all. That is not a fix but simply ignoring a problem. Maybe if you find out why these lines have such an unexpected run-time, you will solve more problems also. We have a mantra here on the mailing list, so let me introduce you to it: Solve the problems one by one in the order that you encounter them. Every ignored problem will come back later and catch you. Really, it will. Now repeat after me ;) Cheers Detlev -- There is no need to be rigid in carrying out policies about what changes to install. To do a good job of maintaining Emacs doesn't require acting like government bureaucrats. -- Richard Stallman -- 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