[PATCH v2 3/3] dt-bindings: mtd: Document use of nvmem-partitions compatible
Rafał Miłecki
zajec5 at gmail.com
Wed Mar 3 10:01:55 GMT 2021
[Rob: please advise]
On 16.02.2021 22:26, Ansuel Smith wrote:
> Document nvmem-partitions compatible used to treat mtd partitions as a
> nvmem provider.
Until now we were using "compatible" string in partition node only for
parsers (looking for subpartitions). We need to think if this change can
break anything from DT / Linux perspective.
Compatible strings should be unique, so there is no risk of conflict
between NVMEM and parsers.
Now: can we ever need mtd partition to:
1. Contain subpartitions
2. Provide NVMEM
at the same time?
Let's say:
partition at 0 {
compatible = "vendor,dynamic-firmware-partitions", "nvmem-partitions";
label = "firmware";
reg = <0x0 0x100000>;
#address-cells = <1>;
#size-cells = <1>;
ranges = <0 0x0 0x100000>;
firmware-version at 10 {
reg = <0x10 0x4>;
};
firmware-date at 10 {
reg = <0x20 0x4>;
};
};
Is that allowed to respect both "compatible" strings and have:
1. Linux parser parse "firmware" for subpartitions
2. Linux MTD register "firmware" as NVMEM device
?
If not, what other options do we have? Is that allowed to have a
dangling MTD NVMEM node with phandle to MTD partition?
firmware: partition at 0 {
compatible = "vendor,dynamic-firmware-partitions";
label = "firmware";
reg = <0x0 0x100000>;
};
(...)
firmware-version at 10 {
compatible = "mtd-nvmem";
reg = <0x10 0x4>;
mtd = <&firmware>;
};
firmware-date at 10 {
compatible = "mtd-nvmem";
reg = <0x20 0x4>;
mtd = <&firmware>;
};
Rob: I'd really appreciate your input & help here.
More information about the linux-mtd
mailing list