Changing kernel version/bitbake

What is the preferred method for specifying a specific kernel version
when using bitbake to build OE (in my case, angstrom targeting

I noticed that bitbake was calling a python function at configure time
called get_kernelversion(), to determine the kernel version by trying
to locate utsrelease.h and then pattern matching for the kernel major
and minor number. I'm on a stock host running 2.6.32, and so my
utsrelease.h file is found relative to that kernel version, and
presume that because of this, OE decides to build my target to kernel
version 2.6.32 as well. I'd like to override that behavior, and
instead build 2.6.29 (for which I can get a RT linux patch, make
menuconfig and enable RT preemption, and try it out on my

There is a wiki page @
which has a section entitled "Select Kernel Version", but in has no
content other than "FIXME". I'd be happy to add what I learn there.

Thanks in advance.


I've just yesterday changed kernel on the angstrom - so, here what I
did in the stable branch:


-PREFERRED_PROVIDER_virtual/kernel = "linux-omap-psp"
+PREFERRED_PROVIDER_virtual/kernel = "linux-omap"


+PREFERRED_PROVIDER_virtual/kernel_beagleboard = "linux-omap"
+PREFERRED_VERSION_linux-omap_beagleboard = "2.6.37"

After this I've got built as virtual/kernel. I'm
not sure whether you need to change beagleboard.conf or not, but in
any case it worked.

Hope this helps,

That process, followed by:

bitbake virtual/kernel -c clean
bitbake virtual/kernel -c configure
bitbake virutal/kernel -c compile

did in fact result in a 2.6.29 uImage file being generated.

I'll copy that uImage over to my SD card and reboot later today (I
have some errands to run so can't get to it just yet), but so far,
this looks good, and thanks for the quick response to my question.

Follow-on question: was there a specific reason for switching from
linux-omap-psp to linux-omap?