
Hi Michael,
On Wed, 4 Oct 2023 at 11:17, Michael Walle mwalle@kernel.org wrote:
Hi,
Add a compatible string for binman, so we can extend fixed-partitions in various ways.
I've been thinking at the proper way to describe the binman partitions. I am wondering if we should really extend the fixed-partitions schema. This description is really basic and kind of supposed to remain like that. Instead, I wonder if we should not just keep the binman compatible alone, like many others already. This way it would be very clear what is expected and allowed in both cases. I am thinking about something like that:
Documentation/devicetree/bindings/mtd/partitions/brcm,bcm4908-partitions.yaml
this file is also referenced there (but this patch does the same, which is what I'd expect):
Documentation/devicetree/bindings/mtd/partitions/partitions.yaml
I'll let the binding maintainers judge whether they think it's relevant, it's not a strong opposition.
What is the overall goal here? To replace the current binman node which is usually contained in the -u-boot.dtsi files? If one is using binman to create an image, is it expected that one needs to adapt the DT in linux? Or will it still be a seperate -u-boot.dtsi? > Because in the latter case I see that there will be conflicts because you have to overwrite the flash node. Or will it be a seperate node with all the information duplicated?
The goal is simply to have a full binding for firmware layout, such that firmware images can be created, examined and updated. The -u-boot.dtsi files are a stopgap while we sort out a real binding. They should eventually go away.
You haven't answered whether this node should be a seperate binman node - or if you'll reuse the existing flash (partitions) node(s) and add any missing property there. If it's the latter, I don't think compatible = "binman", "fixed-partitions"; is correct.
My intent is to make it compatible, so wouldn't it make sense to have binman as the first compatible, then falling back to fixed-partitions as the second?
Maybe (a more complete) example would be helpful.
Can you please be a bit more specific? What is missing from the example?
Like a complete (stripped) DTS. Right now I just see how the individual node looks like. But with a complete example DTS, my question from above would have been answered.
What if a board uses eMMC to store the firmware binaries? Will that then be a subnode to the eMMC device?
I thought there was a way to link the partition nodes and the device using a property, without having the partition info as a subnode of the device. But I may have imagined it as I cannot find it now. So yes, it will be a subnode of the eMMC device.
Regards, Simon