[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