[yocto] Building a custom dtb kernel

Andrew Wafaa awafaa at opensuse.org
Mon Jul 16 03:22:14 PDT 2012


Aloha all,

I have successfully managed to build a custom kernel, thanks to the
help on IRC. Unfortunately this is only step one of my travels with
Yocto. I now need to be able to build the kernel with dtb.

Part of my issue is that the .dtsi and .dts files that I require are
in a separate git tree to the kernel source, due to the hardware being
extremely weird and for internal use only. I also need to cat the
resulting .dtb to the Zimage and then rename the resulting
zimageA15RTSM.bin to zImage. From my understanding I need to include
the following in my kernel recipe:

require linux-dtb.inc

SRC_URI = "git://git.kernel.org/pub/scm/linux/kernel/git/maz/arm-platforms.git;branch=ael-12.03.00;protocol=git;destsuffix=source;name=source
git://linux-arm.org/arm-dts.git;branch=AEL-2012.03;protocol=git;destsuffix=dts;name=dts
\
           file://defconfig \
	  "

KERNEL_DEVICETREE_rtsm_ve-cortex_a15x2.dts = "rtsm_ve-cortex_a15x2.dts"
KERNEL_DEVICETREE_rtsm_ve-motherboard.dtsi = "rtsm_ve-motherboard.dtsi"

The issue I seem to be hitting is that when I have the multiple git
repos, as per the SRC_URI above, it appears to me that it runs
do_configure in the last tree which only holds the .dts files. I get
the following error when running bitbake core-image-minimal:

| DEBUG: Python function sysroot_cleansstate finished
| DEBUG: Executing shell function do_configure
| NOTE: make oldconfig
| make: *** No rule to make target `oldconfig'.  Stop.
| ERROR: oe_runmake failed
| ERROR: Function failed: do_configure (see
/home/andwaf01/Code/Yocto/build/tmp-eglibc/work/qemuarmv7a-oe-linux-gnueabi/linux-ael-3.3+git1+2a521d1e7167375a8329e94ea110965d36968139_1+4a3978695b04436a62262d1ef376e51f0637402a-r0/temp/log.do_configure.5805
for further information)
NOTE: package linux-ael-3.3+git1+2a521d1e7167375a8329e94ea110965d36968139_1+4a3978695b04436a62262d1ef376e51f0637402a-r0:
task do_configure: Failed
ERROR: Task 611
(/home/andwaf01/Code/meta-vexa15/recipes-kernel/linux/linux-ael_3.3.bb,
do_configure) failed with exit code '1'
NOTE: Tasks Summary: Attempted 1540 tasks of which 1535 didn't need to
be rerun and 1 failed.

IS my assumption correct or am I fishing in the wrong pond? How am I
supposed to build a dtb kernel correctly?

Many thanks,

Andy
-- 
Andrew Wafaa
IRC: FunkyPenguin
GPG: 0x3A36312F



More information about the yocto mailing list