> -----Original Message----- > From: openembedded-core-boun...@lists.openembedded.org > [mailto:openembedded-core-boun...@lists.openembedded.org] On > Behalf Of Bruce Ashfield > Sent: Wednesday, April 03, 2013 11:10 AM > To: Darren Hart > Cc: openembedded-core@lists.openembedded.org; Maupin, Chase > Subject: Re: [OE-core] [PATCH] linux-dtb: Add simple DTB symlinks > for devicetree > > On 13-04-02 04:53 PM, Darren Hart wrote: > > > > > > On 03/29/2013 09:48 AM, Chase Maupin wrote: > >> * This is similar to the symlinks provided for the kernel > image > >> in the /boot directory of a file system. The goal is to > have > >> simply named symlinks in /boot that mirror the device tree > >> name in the kernel sources. This is so that programs like > >> U-Boot can easily find the default device tree binary in > the > >> /boot directory and use that when booting the kernel. > >> * Use update-alternatives to handle proper creation and > removal > >> of the symlinks. > > > > Hi Chase, > > > > So I have no experience myself with Device Tree. Adding Bruce > A. for some > > additional review. > > > > I am going to assume this is the right thing to do for u-boot > systems. > > Which devices have you verified this as working with? > > > >> > >> Signed-off-by: Chase Maupin <chase.mau...@ti.com> > >> --- > >> meta/recipes-kernel/linux/linux-dtb.inc | 20 > ++++++++++++++++++++ > >> 1 files changed, 20 insertions(+), 0 deletions(-) > >> > >> diff --git a/meta/recipes-kernel/linux/linux-dtb.inc > b/meta/recipes-kernel/linux/linux-dtb.inc > >> index ec6c375..66cf255 100644 > >> --- a/meta/recipes-kernel/linux/linux-dtb.inc > >> +++ b/meta/recipes-kernel/linux/linux-dtb.inc > >> @@ -45,3 +45,23 @@ do_deploy_append() { > >> done > >> fi > >> } > >> + > >> +pkg_postinst_kernel-devicetree () { > > > > Please use tabs for bash functions. Oddly, I see the only tabs > in this > > file are in the anonymous python blocks. Doh. > > > >> + cd /${KERNEL_IMAGEDEST} > >> + for DTS_FILE in ${KERNEL_DEVICETREE} > >> + do > >> + DTS_BASE_NAME=`basename ${DTS_FILE} | awk -F "." > '{print $1}'` > >> + DTB_NAME="devicetree-uImage-${DTS_BASE_NAME}.dtb" > > > > > > Is "uImage" always correct here? Or should we be using > > ${KERNEL_IMAGETYPE} here? > > I was trying to figure out the same thing when reviewing this > change this morning. > > I'm not alternatives expert, but isn't DTB_NAME just the name > of the alternate being introduced ? If that's the case, why not > continue to use what the rest of the linux-dtb file uses ? > > DTB_NAME=`echo ${KERNEL_IMAGE_BASE_NAME} | sed > "s/${MACHINE}/${DTS_BASE_NAME}/g"`
>From the do_install section the file I'm trying to symlink to is installed as install -m 0644 ${DTS_BASE_NAME} ${D}/boot/devicetree-${DTB_SYMLINK_NAME}.dtb So there isn't quite a variable that holds the proper value. However, I should be able to make this match more with the do_install section by using DTB_SYMLINK_NAME. I'll send a patch once I make the change and can test it. > > But outside of that (and Darren't already pending comments), the > approach > looks fine and valid to me. > > Cheers, > > Bruce > > > > > > >> + update-alternatives --install > /${KERNEL_IMAGEDEST}/${DTS_BASE_NAME}.dtb ${DTS_BASE_NAME}.dtb > ${DTB_NAME} ${KERNEL_PRIORITY} || true > >> + done > >> +} > >> + > >> +pkg_postrm_kernel-devicetree () { > >> + cd /${KERNEL_IMAGEDEST} > >> + for DTS_FILE in ${KERNEL_DEVICETREE} > >> + do > >> + DTS_BASE_NAME=`basename ${DTS_FILE} | awk -F "." > '{print $1}'` > >> + DTB_NAME="devicetree-uImage-${DTS_BASE_NAME}.dtb" > >> + update-alternatives --remove ${DTS_BASE_NAME}.dtb > ${DTB_NAME} ${KERNEL_PRIORITY} || true > >> + done > >> +} > >> > > > > Thanks, > > > > > _______________________________________________ > Openembedded-core mailing list > Openembedded-core@lists.openembedded.org > http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded- > core _______________________________________________ Openembedded-core mailing list Openembedded-core@lists.openembedded.org http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-core