From: Bruce Ashfield <bruce.ashfield@windriver.com>
To: Yu Pan <panyu2000@gmail.com>
Cc: yocto@yoctoproject.org
Subject: Re: Preempt-rt kernel build for beagleboard
Date: Tue, 27 Nov 2012 10:24:15 -0500 [thread overview]
Message-ID: <50B4DB1F.2070904@windriver.com> (raw)
In-Reply-To: <CAPeyoXbwyKCE2r3R24D5UW2zHTcqkAS1Po+ZKRUqaG4PsJoqOA@mail.gmail.com>
On 12-11-27 05:23 AM, Yu Pan wrote:
> I started looking at Yocto 2 weeks back. Despite the complexity in
> kernel building, I found it quite hard to locate information on
> preempt-rt build. I was trying to build linux-yocto-rt for beagleboard
> from "danny" and the linux-yocto-3.4 kernel, and it seems to be working.
> I'd like to share how one can do that in this thread.
>
> Since the kernel does not include an official preempt-rt branch for
> beagleboard yet, I choose to directly use the standard/preempt-rt/base
> branch. I guess this should work for the preempt-rt kernel, from the
> fact that the standard kernel (non preempt-rt) used for beagleboard from
> the standard/beagleboard branch is basically identical to that from the
> standard/base branch.
Correct. If you don't have any board specific patches, working with
an existing branch in the tree is fine.
>
> Here is what I did.
> 1. Under poky/meta-yocto-bsp/recipes-kernel/linux, I added a
> linux-yocto-rt_3.4.bbappend recipe containing the following lines. The
> SRCREV value used is the same as the one in the base
> linux-yocto-rt_3.4.bb <http://linux-yocto-rt_3.4.bb> under
> poky/meta/recipes/kernel.
>
> KBRANCH_beagleboard = "standard/preempt-rt/base"
> SRCREV_machine_beagleboard ?= "5705c8037d2c47938034ead87c70ae3ebef552f7"
> COMPATIBLE_MACHINE_beagleboard = "beagleboard"
Also note that the yocto-bsp tool allows the extension of an existing
BSP or kernel to a new board. It should provide some of what you
did via editing the files, I added TomZ in case I've misspoken about
what the tools do in this area.
But what you have above is correct.
>
> 2. Modified the PREFERRED_PROVIDER_virtual/kernel variable in
> poky/meta-yocto-bsp/conf/machine/beagleboard.conf to "linux-yocto-rt".
>
> 3. "bitbake linux-yocto-rt -c menuconfig" to set the Preemption Model to
> "Fully Preemptible Kernel (RT)".
You shouldn't have needed to do this part, since the board already has
a preempt-rt BSP description:
http://git.yoctoproject.org/cgit/cgit.cgi/linux-yocto-3.4/tree/meta/cfg/kernel-cache/bsp/beagleboard/beagleboard-preempt-rt.scc?h=meta
And when you build the linux-yocto-rt kernel with that board, that
description should be found, and it enables all the base options already.
If you look in your build, what does the file 'linux/meta/top_tgt'
contain ?
Cheers,
Bruce
>
> 4. "bitbake linux-yocto-rt"
>
> 5. "bitbake core-image-rt" which includes some realtime test programs on
> top of core-image-minimal.
>
> I did some cyclictest on beagleboard using the generated kernel and
> image with "/usr/bin/cyclictest -p95 -m". The results did show huge
> improvement on max latency especially under load.
>
> Hope it helps.
>
> Cheers
> Pan Yu
>
>
> _______________________________________________
> yocto mailing list
> yocto@yoctoproject.org
> https://lists.yoctoproject.org/listinfo/yocto
>
next prev parent reply other threads:[~2012-11-27 15:24 UTC|newest]
Thread overview: 6+ messages / expand[flat|nested] mbox.gz Atom feed top
2012-11-27 10:23 Preempt-rt kernel build for beagleboard Yu Pan
2012-11-27 15:24 ` Bruce Ashfield [this message]
2012-11-28 6:07 ` Yu Pan
2012-11-28 14:27 ` Bruce Ashfield
2012-11-28 17:58 ` Bruce Ashfield
2012-11-29 2:43 ` Yu Pan
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=50B4DB1F.2070904@windriver.com \
--to=bruce.ashfield@windriver.com \
--cc=panyu2000@gmail.com \
--cc=yocto@yoctoproject.org \
/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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.