Saul, In this patch, dtb files are installed into ${D} and ${DEPLOYDIR} by kernel_do_deploy, there is a race issue of do_deploy and do_package.
"do_package" runs before dtb are installed into ${D}, so there is no dtb in /boot/devicetree/ and kernel-devicetree binary package is not generated due to empty content. I will send out a patch to do ${D} install and ${DEPLOYDIR} install in separated steps: do_install and do_deploy. Best Regards, Zhenhua > -----Original Message----- > From: Saul Wold [mailto:s...@linux.intel.com] > Sent: Tuesday, January 10, 2012 1:43 PM > To: Patches and discussions about the oe-core layer > Cc: Luo Zhenhua-B19537 > Subject: Re: [OE-core] [PATCH oe-core v6] linux-dtb: add multi-dtb build > support > and keep dtb in deploy cache package > > On 01/08/2012 07:37 PM, b19...@freescale.com wrote: > > From: Zhenhua Luo<b19...@freescale.com> > > > > Signed-off-by: Zhenhua Luo<b19...@freescale.com> > > --- > > meta/recipes-kernel/linux/linux-dtb.inc | 24 +++++++++++++++--------- > > 1 files changed, 15 insertions(+), 9 deletions(-) > > > > diff --git a/meta/recipes-kernel/linux/linux-dtb.inc b/meta/recipes- > kernel/linux/linux-dtb.inc > > index 7ec7584..fc29d14 100644 > > --- a/meta/recipes-kernel/linux/linux-dtb.inc > > +++ b/meta/recipes-kernel/linux/linux-dtb.inc > > @@ -13,15 +13,21 @@ python __anonymous () { > > d.setVar("PACKAGES", "%s kernel-devicetree" % packages) > > } > > > I am not sure how this worked, I am seeing a problem with building rootfs. > | > > kernel-devicetree is needed by > kernel-modules- > 3.0.14+git1+6ae3d992cf546184010e87a0349810198f1d167c_1+58ffdb8000e34d2ba7c3ef278 > b26680b0886e8b5-r2.mpc8315e_rdb > > This might be a PR Bump issue? > > Sau! > > > -do_install_append() { > > +kernel_do_deploy_append() { > > if test -n "${KERNEL_DEVICETREE}"; then > > - dtc -I dts -O dtb ${KERNEL_DEVICETREE_FLAGS} -o devicetree > ${KERNEL_DEVICETREE} > > - install -m 0644 devicetree ${D}/boot/devicetree-${KERNEL_VERSION} > > - install -d ${DEPLOY_DIR_IMAGE} > > - install -m 0644 devicetree > ${DEPLOY_DIR_IMAGE}/${KERNEL_IMAGE_BASE_NAME}.dtb > > - cd ${DEPLOY_DIR_IMAGE} > > - rm -f ${KERNEL_IMAGE_SYMLINK_NAME}.dtb > > - ln -sf ${KERNEL_IMAGE_BASE_NAME}.dtb ${KERNEL_IMAGE_SYMLINK_NAME}.dtb > > + for DTS_FILE in ${KERNEL_DEVICETREE}; do > > + 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 devicetree > ${DTS_FILE} > > + install -m 0644 devicetree > > ${D}/boot/devicetree-${DTS_BASE_NAME}- > ${KERNEL_VERSION} > > + > > + install -d ${DEPLOYDIR} > > + install -m 0644 devicetree ${DEPLOYDIR}/${DTB_NAME}.dtb > > + rm -f devicetree > > + cd ${DEPLOYDIR} > > + ln -sf ${DTB_NAME}.dtb ${DTB_SYMLINK_NAME}.dtb > > + cd - > > + done > > fi > > } > > - _______________________________________________ Openembedded-core mailing list Openembedded-core@lists.openembedded.org http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-core