Hello Rob, Hello Srini, On 02.11.20 16:23, Ahmad Fatoum wrote: >>> I think instead, nvmem cells should be contained within a partition. >>> The partition should then have a compatible to indicate it contains >>> nvmem cells. >> >> I thought I had understood what needs to be done, but now that I finally have time >> to do it, I see that this only solves the second issue "extending the NVMEM binding >> to nodes that already have other child nodes, e.g., MTD and its partitions". >> >> The first issue: "future extension of e.g. eeprom nodes by any child nodes other than >> nvmem cells" isn't solved by having a containing partition. >> >> >> My issue is that the bootloader fixes up a partitions { compatible = "fixed-partitions"; } >> child node into the kernel device tree. The NVMEM core driver tries to parse all eeprom child >> nodes as cells and will make the driver probe of the EEPROM fail, because it can't parse that >> fixed-partitions node as a nvmem cell. >> >> To allow for co-existence of NVMEM cells and other subnodes, would following patch be >> acceptable to you and Srini? > > Gentle ping. Would the patch below be acceptable? Did you have time to look at this? > >> >> ---------------------------------------- 8< -------------------------------------- >> --- a/Documentation/devicetree/bindings/nvmem/nvmem.yaml >> +++ b/Documentation/devicetree/bindings/nvmem/nvmem.yaml >> @@ -45,7 +45,15 @@ properties: >> patternProperties: >> "^.*@[0-9a-f]+$": >> type: object >> - >> + if: >> + not: >> + properties: >> + compatible: >> + then: >> + $ref: "#/definitions/nvmem-cell" >> + >> +definitions: >> + nvmem-cell: >> properties: >> reg: >> maxItems: 1 > > Cheers, > Ahmad > -- Pengutronix e.K. | | Steuerwalder Str. 21 | http://www.pengutronix.de/ | 31137 Hildesheim, Germany | Phone: +49-5121-206917-0 | Amtsgericht Hildesheim, HRA 2686 | Fax: +49-5121-206917-5555 |