+ U-boot custodians list
On Tue, 5 Dec 2023 at 12:58, Krzysztof Kozlowski krzysztof.kozlowski@linaro.org wrote:
On 05/12/2023 08:13, Sumit Garg wrote:
@DT bindings maintainers,
Given the ease of maintenance of DT bindings within Linux kernel source tree, I don't have a specific objection there. But can we ease DTS testing for firmware/bootloader projects by providing a versioned release package for DT bindings? Or if someone else has a better idea here please feel free to chime in.
This doesn't work for you?:
https://git.kernel.org/pub/scm/linux/kernel/git/devicetree/devicetree-rebasi...
Thanks, this is certainly a good step which I wasn't aware of. Further simplification can be done to decouple devicetree source files from DT bindings.
Why?
I suppose you are already aware that Linux DTS files are a subset of what could be supported by devicetree schemas. There can be firmware/bootloader specific properties (one example being [1]) which Linux kernel can simply ignore. Will you be willing to add all of those DT properties to Linux DTS files and maintain them?
However, DT bindings are something which should be common, the hardware description of a device should be universal. IMO, splitting DT bindings alone would ease the compliance process for u-boot drivers in quite similar manner to Linux drivers.
[1] https://github.com/devicetree-org/dt-schema/blob/main/dtschema/schemas/bootp...
AFAIK, DT bindings should be forwards and backwards compatible.
The same with DTS.
So if you pick up DTS or DTB from any project tree (upstream kernel or stable kernel or u-boot) then DT schema validation would ensure that corresponding DTS or DTB doesn't regress the DT bindings.
And why is this argument to decouple DTS from bindings?
See above.
Ideally, it should be more user/CI friendly if DT bindings can be easily installed alongside devicetree schema tools [1].
Does it mean you will work on this?
I am happy to collaboratively work with DT bindings maintainers and the u-boot community once we can reach a consensus on the above. Basically the main motive here is to validate DTS files present in the u-boot tree and be able to reliably pass them to whichever Linux kernel version you are trying to boot. IOW, make Linux distros to reliably boot with devicetree supplied by u-boot.
-Sumit
Best regards, Krzysztof