This is a very confusing thing to understand and search for in the first place but once you get to understand how the OE workflow works then one can make such adjustments. Here I will give you a quick start on how to do it.

I assume that you will be dealing with shr-unstable build in OE. My working directory for SHR is /home/shaz/moko/shr-unstable/ so

  1. cd ~/moko/shr-unstable/
  2. . setup-env
  3. bb virtual/kernel -c configure
  4. cd tmp/work/qemuarm-oe-linux-gnueabi/linux-2.6.34-r1/linux-2.6.34
  5. make menuconfig ARCH=arm
  6. cp .config ../../../../../openembedded/recipes/linux/linux-2.6.34/defconfig

After you make you custom changes to the kernel configuration then:

  1. cd ~/moko/shr-unstable
  2. bb virtual/kernel -c compile; bb virtual/kernel -c deploy

Now you will find you kernel images in /home/shaz/moko/shr-unstable/tmp/deploy/images/qemuarm/.

Note that these steps can easily be used for any machine architecture and distribution.

Hope you find it useful :)

3 Responses to " Customizing Linux Kernel in OpenEmbedded based Builds "
Christopher Larson
October 21st, 2010

Note, for steps 4 and 5, you can do bitbake -c menuconfig virtual/kernel. Of course, 6 is still necessary to persist the changes.

Zimná dovolenka
December 1st, 2010

What a great post man, keep it up. I’m watching your blog.

Joel Scotkin
February 16th, 2011

Just for anyone else trying to do this – I had to use
“bitbake virtual/kernel -c compile -f ” to force the compile. Without the -f it didn’t do anything. Also works for deploy.


Leave a Reply