
Hi Maxime,
On 26 June 2016 at 23:29, Maxime Ripard maxime.ripard@free-electrons.com wrote:
Hi David,
On Mon, Jun 27, 2016 at 01:37:19AM +1000, David Gibson wrote:
On Fri, Jun 24, 2016 at 04:27:45PM +0200, Maxime Ripard wrote:
Hi,
The device tree overlays are a great solution to the issue raised by the bunch expandable boards we find everywhere these days, like the Beaglebone, Raspberry Pi or CHIP.
However, most of the time, the overlays are applied through a mechanism involving the firmware request interface in Linux, that is only fully functional once the userspace has been mounted and is running.
Some expansion boards might need to be enabled before that, because they simply need to patch the DT early on, or need to be initialized early in order to be fully functional, or because they provide access to the root filesystem.
In these cases, having the bootloader applying the overlay before Linux starts seems like the easiest solution.
This implementation doesn't provide all the Linux fancyness though, there's no transactional application, which means that if the overlay cannot be applied for a reason while you're still halfway through the application, you're probably screwed. It also cannot remove an overlay, but I don't think that it is currently a use-case.
There's still a bunch of work to extend the libfdt unit tests to test the new functions introduced, but these patches will be submitted in a near future.
Are you planning to send a new version of (the relevant portions of) these against upstream libfdt?
Of course, I just only have to work on the test cases now.
Simon wanted to merge this in U-Boot for the next merge window, and then sync with libfdt when it would be merged, hence why I posted it first.
Yes I'll wait until after the current release as it is too close. Feel free to send a fix-up patch (or whatever means you prefer) once this is applied upstream.
Regards, Simon