[OE-core] [PATCH] linux-dtb: Add simple DTB symlinks for devicetree
Bruce Ashfield
bruce.ashfield at windriver.com
Wed Apr 3 16:09:38 UTC 2013
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"`
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,
>
More information about the Openembedded-core
mailing list