Re: [PATCH 1/4] dt-bindings: arm: google: Add bindings for frankel/blazer/mustang
From: Krzysztof Kozlowski <krzk@kernel.org>
Date: 2025-11-14 09:26:51
Also in:
linux-devicetree, linux-samsung-soc, lkml
On Thu, Nov 13, 2025 at 10:04:53AM -0800, Doug Anderson wrote:
Hi, On Thu, Nov 13, 2025 at 9:43 AM Krzysztof Kozlowski [off-list ref] wrote:quoted
quoted
quoted
quoted
Yes, the complexity of just "hooking up" the components on an SoC is an order of magnitude harder than a Raspberry Pi, but it's still just hooking it up to external components. In both cases, we are modeling the core "brains" (the part that contains the processor) as the DTB and everything else just "hooks up" to interfaces.You mix the topics, so I don't follow. I speak here about bindings - you cannot have the that compatible alone, because it is incomplete, just like compatible for "transistor" is not correct in that context. You speak what could or could be DTB, different topic.A "SoC" is "complete". It has a processor that can run instructions.Then show me executing any piece of software, which is the consumer of the bindings, and runs on the SoC without the rest of the hardware system.Show me something that runs on a Raspberry Pi (the models that don't have eMMC) that runs without hooking up power and plugging in an SD card. :-P
It has MMC controller/slot described in the DTS and the SDcard itself is DT-transparent, meaning you do not describe it in DTS, plus I can easily insert such card, thus for sake of this discussion that RPi still works fine with DTS. This SoC cannot work without other pieces described in DT, that's why it is incomplete and unusable on its own. You are right that my previous arguments of hooking components are incomplete, so let me rephrase it - the DTS file should be complete from DT point of view and completly usable on its own. That's why DTS represents board (with the exceptions of few SoMs as explaiend to me long time ago). SoC does not meet this criteria, therefore it is not suitable for DTS. And if you claim that SoC could be fitting DTS, then I claim that individual transistor or one IP block like DWC USB3 could be there as well. With your arguments we could create DTS files for DWC USB3 nodes. Fact that transistor or DWC USB3 cannot execute code on their own does not matter, because it is nowhere said that DTS represents something which can execute code. CPU executes code, so following this argument DTS could contain only CPU device nodes.. If we allow subpieces, like SoC components or SoCs (both still unusable on their own), as DTS files we open the pandora box of all possible styles and formats. I don't see reasoon why would we want it, what benefits this would bring to the ecosystem maintenance. We did not document it that DTS represents usable board, but it is implied all over the software projects, like GRUB devicetree [1] which takes one DTB to load. Only one. [1] https://www.gnu.org/software/grub/manual/grub/html_node/devicetree.html Best regards, Krzysztof