am335x-bone.dts not exist

Oleksandr Tymoshenko gonzo at bluezbox.com
Sun May 24 07:56:25 UTC 2015


> On May 24, 2015, at 12:12 AM, Garrett Cooper <yaneurabeya at gmail.com> wrote:
> 
> On May 24, 2015, at 0:07, Oleksandr Tymoshenko <gonzo at bluezbox.com> wrote:
> 
>>> On May 23, 2015, at 7:21 PM, Andrey Fesenko <f0andrey at gmail.com> wrote:
>>> 
>>> # uname -a
>>> FreeBSD des.local 11.0-CURRENT FreeBSD 11.0-CURRENT #0 r283306: Sat
>>> May 23 11:56:46 MSK 2015
>>> root at des.local:/usr/obj/usr/src/sys/GENERIC  amd64
>>> 
>>> I'm build BEAGLEBONE with crochet.
>>> 
>>> build error
>>> 
>>> Mounting UFS partition 1 at /usr/obj/_.mount.freebsd
>>> Installing U-Boot from : /usr/local/share/u-boot/u-boot-beaglebone
>>> Error: beaglebone.dts:29.1-2 syntax error
>>> FATAL ERROR: Unable to parse input tree
>>> 
>>> 
>>> file /usr/src/sys/boot/fdt/dts/arm/beaglebone.dts contain #include
>>> "am335x-bone.dts" but this file not existence. Need use am335x-evm.dts
>>> or else?
>> 
>> 
>> am335x-bone.dts in in sys/gnu/dts/arm/, it's a file provided by vendor (TI)
>> 
>> I guess crochet does not have this path as include path when compiling
>> dts files.
> 
> Pardon me for being a bit daft potentially, but shouldn’t #include work for all dts files (look for #include in this doc: http://events.linuxfoundation.org/sites/events/files/slides/petazzoni-device-tree-dummies.pdf )?
> Thanks!
> 


#include in dts file is handled by cpp(1). /include/ is handled
by dtc I believe

You can take a look at how FreeBSD compiles dts files in
sys/tools/fdt/make_dtb.sh

crochet does not have cpp stage of compilation and before my TI
code/devicetree refactoring none of the dts files referenced in
crochet used #include. That's why problem never appeared. 

Fix is just a matter of fixing freebsd_install_fdt in lib/freebsd.sh.
If nobody beats me to it I'll try to fix it and submit pull request to Tim. 



More information about the freebsd-current mailing list