[PATCH RFC] dt-bindings: mtd: allow NVMEM cells in BCM4908 partitions
Rob Herring
robh at kernel.org
Tue Mar 30 23:19:22 BST 2021
On Mon, Mar 29, 2021 at 05:07:23PM +0200, Rafał Miłecki wrote:
> From: Rafał Miłecki <rafal at milecki.pl>
>
> Every MTD partition can be NVMEM provider now. It's not handled by the
> shared partition.yaml so add proper "compatible" to the BCM4908.
>
> Signed-off-by: Rafał Miłecki <rafal at milecki.pl>
> ---
> Ideally I'd like to have:
> 1. partition.yaml allowing "nvmem-cells" by using nvmem-cells.yaml
> 2. brcm,bcm4908-partitions.yaml using partition.yaml and extending the
> compatible list by "brcm,bcm4908-firmware"
>
> I don't know if such a solution is possible to implement using YAML?
You would have to do something like:
items:
- const: foo,bar
- {}
and then in partition.yaml:
contains:
const: nvmem-cells
But that does work if nvmem-cells is not always present.
However, do we have partition.yaml and nvmem-cells.yaml backwards?
nvmem-cells.yaml should reference partition.yaml as nvmem-cells.yaml is
partition.yaml plus more constraints.
And then brcm,bcm4908-partitions.yaml references nvmem-cells.yaml and
the above schema would work.
>
> Proposed solution (RFC) isn't a really clean one:
> 1. It duplicates "nvmem-cells" which is already in the nvmem-cells.yaml
> 2. Generic "nvmem-cells" should be part of the partition.yaml
I'm fine with this too. It's more explicit as to what the compatible
strings are.
>
> Rob? Help? :)
> ---
> .../bindings/mtd/partitions/brcm,bcm4908-partitions.yaml | 4 +++-
> 1 file changed, 3 insertions(+), 1 deletion(-)
>
> diff --git a/Documentation/devicetree/bindings/mtd/partitions/brcm,bcm4908-partitions.yaml b/Documentation/devicetree/bindings/mtd/partitions/brcm,bcm4908-partitions.yaml
> index 7b113e5e3421..28aa3bdd1103 100644
> --- a/Documentation/devicetree/bindings/mtd/partitions/brcm,bcm4908-partitions.yaml
> +++ b/Documentation/devicetree/bindings/mtd/partitions/brcm,bcm4908-partitions.yaml
> @@ -32,7 +32,9 @@ patternProperties:
> $ref: "partition.yaml#"
> properties:
> compatible:
> - const: brcm,bcm4908-firmware
> + enum:
> + - brcm,bcm4908-firmware
> + - nvmem-cells
> unevaluatedProperties: false
>
> required:
> --
> 2.26.2
>
More information about the linux-mtd
mailing list