[OE-core] [PATCH] linux-dtb: Add simple DTB symlinks for devicetree

Maupin, Chase chase.maupin at ti.com
Wed Apr 3 17:26:04 UTC 2013


> -----Original Message-----
> From: openembedded-core-bounces at lists.openembedded.org
> [mailto:openembedded-core-bounces at lists.openembedded.org] On
> Behalf Of Bruce Ashfield
> Sent: Wednesday, April 03, 2013 11:10 AM
> To: Darren Hart
> Cc: openembedded-core at 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.Maupin at 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 at lists.openembedded.org
> http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-
> core




More information about the Openembedded-core mailing list