From: Johannes Stezenbach <js@sig21.net>
To: Robert Schwebel <r.schwebel@pengutronix.de>
Cc: Denys Vlasenko <vda.linux@googlemail.com>,
linux-kernel@vger.kernel.org, linux-embedded@vger.kernel.org,
Arjan van de Ven <arjan@linux.intel.com>,
Tim Bird <tim.bird@am.sony.com>,
kernel@pengutronix.de
Subject: Re: New fast(?)-boot results on ARM
Date: Sat, 15 Aug 2009 12:35:32 +0200 [thread overview]
Message-ID: <20090815103532.GA5596@sig21.net> (raw)
In-Reply-To: <20090814204305.GA31727@pengutronix.de>
On Fri, Aug 14, 2009 at 10:43:05PM +0200, Robert Schwebel wrote:
> On Fri, Aug 14, 2009 at 10:04:57PM +0200, Denys Vlasenko wrote:
> > > rsc@thebe:~$ microcom | ptx_ts "U-Boot 2.0.0-rc9"
Now that microcom is in Debian sid (thanks!), where can I find ptx_ts?
It seems to be quite useful.
> > > [ 0.874559] < 0.003967> Hit any key to stop autoboot: 0
> >
> > boot loader is not fast. considering its simple task, it can be made
> > faster.
>
> Yup, will check. Almost 1 s seems really long.
I'm working on a SoC with a 200MHz ARM926EJ-S. We managed to get
to 1.5sec from power-on to "starting init". The main difference to
your platform seems to be that we use NOR flash. The kernel is
not optimized, it still has some debug options turned on and
is used during development. (however, the 1.5sec is with "quiet")
The root fs is cramfs. The kernel version is 2.6.20.
For u-boot we enabled the D-cache which gave a decent speed up
(on ARM926EJ-S this requires one to set up page tables and enable
MMU, but it's not that difficult). I don't have the numbers here
but I think it still takes ~300ms in u-boot, and ~1.2s for the kernel boot.
> > > [ 1.326621] < 0.452062> loaded zImage from /dev/nand0.kernel.bb with size 1679656
> > > [ 2.009996] < 0.683375> Uncompressing Linux............................................................................................................... done, booting the kernel.
> > > [ 2.416999] < 0.407003> Linux version 2.6.31-rc4-g056f82f-dirty (sha@octopus) (gcc version 4.3.2 (OSELAS.Toolchain-1.99.3) ) #1 PREEMPT Thu Aug 6 08:37:19 CEST 2009
> >
> > Other people already commented on this (kernel is too big)
>
> Not sure (the kernel is already customized for the board), but I'll take
> a look again.
We are booting an uncomressed kernel (~2.8MB). Uncompressing (running the uncompressor
XIP in NOR flash) took ~0.5s longer than copying 2.8MB from flash to RAM.
BTW, we are using uImage and set verify=no in u-boot. We use u-boot-1.3.0.
> > > [ 5.082616] < 0.007992> RPC: Registered tcp transport module.
> > > [ 5.605159] < 0.522543> eth0: config: auto-negotiation on, 100FDX, 100HDX, 10FDX, 10HDX.
What is happening here? Waiting for eth link negotiation?
> > > [ 6.602621] < 0.997462> IP-Config: Complete:
> > > [ 6.606638] < 0.004017> device=eth0, addr=192.168.23.197, mask=255.255.0.0, gw=192.168.23.2,
> > > [ 6.614588] < 0.007950> host=192.168.23.197, domain=, nis-domain=(none),
> > > [ 6.618652] < 0.004064> bootserver=192.168.23.2, rootserver=192.168.23.2, rootpath=
> >
> > Well, this ~1 second is not really kernel's fault, it's DHCP delay.
> > But, do you need to do it at this moment?
> > You do not seem to be using networking filesystems.
> > You can run DHCP client in userspace.
>
> The board has ip autoconfig configured in, because we also use tftp/nfs
> boot for development. But it had been disabled on the commandline:
>
> ip=192.168.23.197:192.168.23.2:192.168.23.2:255.255.0.0:::
>
> That shouldn't do dhcp, right?
Try to boot with eth cable unplugged, see if it hangs in IP-config.
If it were doing static configuration it would be faster.
However, unless you need ethernet to boot (NFS root) I'd suggest
doing eth config in userspace.
> > > [ 7.137924] < 0.059316> starting udev
> > > [ 7.147925] < 0.010001> mounting tmpfs at /dev
> > > [ 7.182299] < 0.034374> creating static nodes
> > > [ 7.410613] < 0.228314> starting udevd...done
> > > [ 8.811097] < 1.400484> waiting for devices...done
And suddenly devtmpfs sounds like a good idea ;-)
We use static device nodes during boot, and later
setup busybox mdev for hotplug.
Johannes
next prev parent reply other threads:[~2009-08-15 10:35 UTC|newest]
Thread overview: 43+ messages / expand[flat|nested] mbox.gz Atom feed top
2009-08-14 17:02 New fast(?)-boot results on ARM Robert Schwebel
2009-08-14 18:19 ` Zan Lynx
2009-08-14 18:46 ` Jamie Lokier
2009-08-14 18:58 ` Robert Schwebel
2009-08-14 18:57 ` Robert Schwebel
2009-08-14 21:01 ` Linus Walleij
2009-08-14 21:15 ` Robert Schwebel
2009-08-14 21:35 ` Zan Lynx
2009-08-15 6:21 ` Artem Bityutskiy
2009-08-14 20:04 ` Denys Vlasenko
2009-08-14 20:43 ` Robert Schwebel
2009-08-15 5:59 ` Dirk Behme
2009-08-15 10:35 ` Johannes Stezenbach [this message]
2009-08-18 10:06 ` Marco Stornelli
2009-08-18 10:21 ` Robert Schwebel
2009-08-18 10:34 ` Alex Riesen
2009-08-18 10:44 ` Robert Schwebel
2009-08-18 10:48 ` Alex Riesen
2009-08-18 10:53 ` Robert Schwebel
2009-09-04 16:16 ` Wolfram Sang
2009-09-09 14:33 ` Johannes Stezenbach
2009-09-10 0:03 ` Denys Vlasenko
2009-08-17 19:15 ` Tim Bird
2009-08-17 22:35 ` new ipdelay= option for faster netboot (was Re: New fast(?)-boot results on ARM) Tim Bird
2009-08-18 1:03 ` new ipdelay= option for faster netboot David Miller
2009-08-18 1:24 ` Tim Bird
2009-08-18 1:27 ` David Miller
2009-08-18 1:40 ` Tim Bird
2009-08-18 1:56 ` David Miller
2009-08-19 11:57 ` Jamie Lokier
2009-08-18 4:56 ` Denys Vlasenko
2009-08-18 5:00 ` David Miller
2009-08-18 1:31 ` Rick Jones
2009-08-18 2:45 ` david
2009-08-18 4:56 ` Willy Tarreau
2009-08-15 6:14 ` New fast(?)-boot results on ARM Artem Bityutskiy
2009-08-18 14:06 ` Sascha Hauer
2009-08-18 15:31 ` Dirk Behme
2009-08-18 16:34 ` Marco Stornelli
2009-08-18 18:23 ` Tim Bird
2009-08-19 7:21 ` Sascha Hauer
2009-08-19 16:20 ` Dirk Behme
2009-08-20 8:57 ` Sascha Hauer
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=20090815103532.GA5596@sig21.net \
--to=js@sig21.net \
--cc=arjan@linux.intel.com \
--cc=kernel@pengutronix.de \
--cc=linux-embedded@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=r.schwebel@pengutronix.de \
--cc=tim.bird@am.sony.com \
--cc=vda.linux@googlemail.com \
/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;
as well as URLs for NNTP newsgroup(s).