* In the 3.11 kernel some dts files now include C code that must first run through the preprocessor. * Update building the dtb by first running the dts file through the user's compiler before building using the device tree compiler. * The logic used is based on mainline u-boot dts/Makefile.
Signed-off-by: Franklin S. Cooper Jr <fcoo...@ti.com> --- meta/recipes-kernel/linux/linux-dtb.inc | 5 ++++- 1 files changed, 4 insertions(+), 1 deletions(-) diff --git a/meta/recipes-kernel/linux/linux-dtb.inc b/meta/recipes-kernel/linux/linux-dtb.inc index 41dd599..f1aafa2 100644 --- a/meta/recipes-kernel/linux/linux-dtb.inc +++ b/meta/recipes-kernel/linux/linux-dtb.inc @@ -21,7 +21,10 @@ do_install_append() { DTS_BASE_NAME=`basename ${DTS_FILE} | awk -F "." '{print $1}'` DTB_NAME=`echo ${KERNEL_IMAGE_BASE_NAME} | sed "s/${MACHINE}/${DTS_BASE_NAME}/g"` DTB_SYMLINK_NAME=`echo ${KERNEL_IMAGE_SYMLINK_NAME} | sed "s/${MACHINE}/${DTS_BASE_NAME}/g"` - dtc -I dts -O dtb ${KERNEL_DEVICETREE_FLAGS} -o ${DTS_BASE_NAME} ${DTS_FILE} + + cat ${DTS_FILE} | \ + ${CPP} -x assembler-with-cpp -I ./include/ -I ./arch/${ARCH}/boot/dts - | \ + dtc ${KERNEL_DEVICETREE_FLAGS} -O dtb -o ${DTS_BASE_NAME} -i arch/${ARCH}/boot/dts/ - install -m 0644 ${DTS_BASE_NAME} ${D}/${KERNEL_IMAGEDEST}/devicetree-${DTB_SYMLINK_NAME}.dtb done fi -- 1.7.0.4 _______________________________________________ Openembedded-core mailing list Openembedded-core@lists.openembedded.org http://lists.openembedded.org/mailman/listinfo/openembedded-core