Thought I’d pitch in an idea that just popped into my head.
Device Tree usage can be a steep learning curve for many.
Despite N tutorials. It will always be a pain. Googling forum posts all the time.
Kernel version and naming convention changes etc.
So how about a tool to create the DT file for the beaglebone black.
Click the options. Need this gpio for pru. Need this adc for tsc. Need this pin.
And it generated DT bindings for you.
I am unaware of any existing tool.
Ideally it could effectively expand for all embedded dev kits. If you load a Beaglebone Black Rev C file. The DT bindings for that.
If you load a Beagleboard - XM Rev A file. And expand for kits from other vendors too perhaps.
DT for that. etc. Stable kernel versions supported too.
Obviously, the GSoC would be concerned with a base structure of the software…
This is a great idea. I believe Anuj had proposed a similar idea during the course GSoC 2013, although he had real-time multiplexing in mind in combination with this tool.
Say, you need PWM on a pin previously configured as SPI, you could fire up this code to generate the DT bindings and load them in place of the previous bindings. I think this might require some work on making unloading the bindings more stable.
I guess the mentors out there could throw some light on this, if it is indeed possible and about the future of Device Tree on the Beagle devices.