# Beaglebone + u-boot = multiple DTB in KERNEL\_DEVICETREE warning - ok?

**URL:** <https://hub.mender.io/t/beaglebone-u-boot-multiple-dtb-in-kernel-devicetree-warning-ok/1498>\
**Category:** General Discussions\
**Tags:** yocto, beaglebone-black, warrior, u-boot\
**Created:** [February 4, 2020, 7:14pm UTC](https://hub.mender.io/t/beaglebone-u-boot-multiple-dtb-in-kernel-devicetree-warning-ok/1498 "2020-02-04T19:14:50Z")\
**Posts on this page:** 6\
**Page:** 1

<div class="post-metadata">

**Author:** ![pacpowmatthew](https://yyz2.discourse-cdn.com/flex036/user_avatar/hub.mender.io/pacpowmatthew/32/494_2.png) [@pacpowmatthew](https://hub.mender.io/u/pacpowmatthew)\
**Post date:** [February 4, 2020, 7:14pm UTC](https://hub.mender.io/t/beaglebone-u-boot-multiple-dtb-in-kernel-devicetree-warning-ok/1498/1 "2020-02-04T19:14:50Z")

</div>

Hello, I’m working to build a Yocto Mender image for Beaglebone Black using U-Boot. Things seem to be working well but I’m puzzled by this warning I see during builds of u-boot:

`WARNING: u-boot-1_2019.01-r0 do_provide_mender_defines: Found more than one dtb specified in KERNEL_DEVICETREE. Only one should be specified. Choosing the last one.`

This warning does not occur when following the [official integration directions](https://hub.mender.io/t/beaglebone-black/83/2), but when I change it to use u-boot instead of grub, I see the warning occur.

The only change I made was to add these two lines to my `local.conf` as instructed to in the [Mender docs](https://docs.mender.io/2.2/devices/yocto-project/bootloader-support/u-boot#enabling-u-boot).  
`MENDER_FEATURES_ENABLE_append = " mender-uboot mender-image-sd" MENDER_FEATURES_DISABLE_append = " mender-grub mender-image-uefi"`

I observed that the file `sources/poky/meta-yocto-bsp/conf/machine/beaglebone-yocto.conf` sets KERNEL\_DEVICETREE to `"am335x-bone.dtb am335x-boneblack.dtb am335x-bonegreen.dtb"`, and I am using Beaglebone Black, so the “choosing the last one” is not correct. However, everything seems to be working correctly and my patches to `am335x-boneblack.dtb` are being applied and show up when I install the new system image, so I’m not exactly sure if this warning is worth investigating.

Thanks,  
Matthew Beckler

---

<div class="post-metadata">

**Author:** ![mirzak](https://yyz2.discourse-cdn.com/flex036/user_avatar/hub.mender.io/mirzak/32/2056_2.png) [@mirzak](https://hub.mender.io/u/mirzak)\
**Post date:** [February 4, 2020, 7:28pm UTC](https://hub.mender.io/t/beaglebone-u-boot-multiple-dtb-in-kernel-devicetree-warning-ok/1498/2 "2020-02-04T19:28:39Z")

</div>

Welcome to Mender Hub!

You can read a bit more about this here,

[https://tracker.mender.io/browse/MEN-2494](https://tracker.mender.io/browse/MEN-2494)

There where plans made to clarify the error message but never got around to do it.

---

<div class="post-metadata">

**Author:** ![pacpowmatthew](https://yyz2.discourse-cdn.com/flex036/user_avatar/hub.mender.io/pacpowmatthew/32/494_2.png) [@pacpowmatthew](https://hub.mender.io/u/pacpowmatthew)\
**Post date:** [February 4, 2020, 7:46pm UTC](https://hub.mender.io/t/beaglebone-u-boot-multiple-dtb-in-kernel-devicetree-warning-ok/1498/3 "2020-02-04T19:46:01Z")

</div>

Excellent, thanks for the info. Sounds like that might be a good introductory task for my first contribution back to the project 🙂

I tried to set `KERNEL_DEVICETREE = "am335x-boneblack.dtb"` in my `local.conf` but it didn’t seem to take. Presumably it can’t override the setting made in the machine conf?

---

<div class="post-metadata">

**Author:** ![kacf](https://yyz2.discourse-cdn.com/flex036/user_avatar/hub.mender.io/kacf/32/146_2.png) [@kacf](https://hub.mender.io/u/kacf)\
**Post date:** [February 5, 2020, 9:01am UTC](https://hub.mender.io/t/beaglebone-u-boot-multiple-dtb-in-kernel-devicetree-warning-ok/1498/4 "2020-02-05T09:01:39Z")

</div>

You can also use `MENDER_DTB_NAME_FORCE`, which forces the one you want, regardless of what is in `KERNEL_DEVICETREE`. Doing it this way will still install all of the unneeded DTB files. It only changes which one will be used.

---

<div class="post-metadata">

**Author:** ![pacpowmatthew](https://yyz2.discourse-cdn.com/flex036/user_avatar/hub.mender.io/pacpowmatthew/32/494_2.png) [@pacpowmatthew](https://hub.mender.io/u/pacpowmatthew)\
**Post date:** [February 5, 2020, 4:01pm UTC](https://hub.mender.io/t/beaglebone-u-boot-multiple-dtb-in-kernel-devicetree-warning-ok/1498/5 "2020-02-05T16:01:03Z")

</div>

Thanks much! I added `MENDER_DTB_NAME_FORCE = "am335x-boneblack.dtb"`to my `local.conf` and that silenced the “Found more than one dtb specified in KERNEL\_DEVICETREE” warning, but now observe this new warning:

```
WARNING: "MENDER_DTB_NAME_FORCE" is not a recognized MENDER_ variable. Typo?

```

That warning seems to arise because `MENDER_DTB_NAME_FORCE` is not in the list in `meta-mender/meta-mender-core/conf/mender-vars.json`. Should it be added there? I can make a PR. Or should I just ignore this warning? Thanks!

---

<div class="post-metadata">

**Author:** ![kacf](https://yyz2.discourse-cdn.com/flex036/user_avatar/hub.mender.io/kacf/32/146_2.png) [@kacf](https://hub.mender.io/u/kacf)\
**Post date:** [February 6, 2020, 7:00am UTC](https://hub.mender.io/t/beaglebone-u-boot-multiple-dtb-in-kernel-devicetree-warning-ok/1498/6 "2020-02-06T07:00:01Z")

</div>

Yes, this is just a mistake on our part, please consider a PR!
