This series includes a documentation update to clarify how U-Boot makes use of devicetree and its requirements when working with other firmware projects.
Once agreed it should provide more clarity in this area, which seems to have devolved into a confusing mire recently. My goal here is to sort out this area one and for all, clearly documenting the use cases and implications of them. I hope that the end result of this (substantial) effort will be a shared understanding of how to move forward in U-Boot and hopefully some ideas for firmware in general. It also cleans up the config binding since this has got a bit out-of-date. Changes in v4: - Add a patch to refer to the /config binding from docs Changes in v3: - Clarify the 'bug' refered to at the top - Reword 'This means that there' paragraph to explain U-Boot-specific things - Move to doc/develop/devicetree now that OF_CONTROL is in the docs Changes in v2: - Fix typos per Sean (thank you!) and a few others - Add a 'Use of U-Boot /config node' section - Drop mention of dm-verity since that actually uses the kernel cmdline - Explain that OF_BOARD will still work after these changes (in 'Once this bug is fixed...' paragraph) - Expand a bit on the reason why the 'Current situation' is bad - Clarify in a second place that Linux and U-Boot use the same devicetree in 'To be clear, while U-Boot...' - Expand on why we should have rules for other projects in 'Devicetree in another project' - Add a comment as to why devicetree in U-Boot is not 'bad design' - Reword 'in-tree U-Boot devicetree' to 'devicetree source in U-Boot' - Rewrite 'Devicetree generated on-the-fly in another project' to cover points raised on v1 - Add 'Why does U-Boot have its nodes and properties?' - Add 'Why not have two devicetrees?' Simon Glass (2): doc: Add mention of the /config binding doc: Add documentation about devicetree usage doc/develop/config_binding.rst | 10 + doc/develop/devicetree/dt_update.rst | 569 +++++++++++++++++++++++++++ doc/develop/devicetree/index.rst | 1 + doc/develop/index.rst | 1 + 4 files changed, 581 insertions(+) create mode 100644 doc/develop/config_binding.rst create mode 100644 doc/develop/devicetree/dt_update.rst -- 2.33.0.464.g1972c5931b-goog