I’m currently working on using the BBB in a project, and it would be convenient to use a newer u-boot/kernel for various reasons. Is the overlay mechanism usable in recent u-boot/kernels?
Will the overlay mechanism stay in u-boot, or will it be moving to the kernel? I see a kernel link referenced in the blog post, but if I understand correctly, the BBB overlay mechanism has historically been entirely in u-boot.
I think what would be really useful is a dedicated devicetree editor that can pull all the various included devicetrees into something that is easy to navigate and look at.
something that will allow you to write overlays and see how it effects the final devicetree.
currently finding anything in a devicetree requires opening the dts file that is passed to the kernel and trawling through all of the various include segments to find what is going on.
I still consider myself a newbie at device trees since I’ve yet to actually modify and rebuild one. I understand the concept of them since there are plenty of websites out there that explain the intent behind dtbs and overlays. But when it comes down to the details as they relate to a specific platform, that’s where things are not nearly as clear to me. So here are the things I’d like a FAQ to cover as well as organizational details that I think could improve the experience.
-A review of the various file types (dtb, dts, dtsi, dtso, etc)
-A mild primer explaining the pieces and parts using screenshot and examples from the various BB platforms (BBB/AI/AI64). This would be useful to explain the organization of where the files are.
-Documentation of each filesystem tarball supplied on the site that details what dtb and overlays are in play and which files to edit (and possibly which to NOT edit & why)
-Explanation of the “make” process necessary when making & deploying changes to the device tree including the making of dts->dtb, as well as what to do with dtsi files (e.g. gotten from examples or from Sysconfig). So details like where a new dtsi should be placed in the filesystem, what file should be edited with the include referencing the new file. Any existing includes that should be commented out, and finally what folder to perform the make process from…and of course the various make target options available if “make” isn’t sufficient in some cases.
-On the BBAI64 I have, there’s a number of various device tree files that, based on their naming, seem like they are not for this device. The tarballs for each of the platforms should be cleared of files that aren’t compatible with that platform. That goes for all files, not just device-tree files. If they are left-over remnants from previous build-targets, then a better “clean” procedure is needed to ensure that when building tarballs for, lets say, BBAI64, the built artifact doesn’t contain files that were left over from a previous build for a BBB.
Now if there is already documentation that covers some/most/all of this already, there needs to be a single place where it all exists OR at the very least where it is all referenced and broken down into the various platforms (BBB, BBAI, BBAI64).