On Fri, Apr 16, 2021 at 01:49:23PM +0200, Michael Walle wrote: > The goal is to fetch a (base) MAC address from the OTP region of a SPI NOR > flash. > > This is the first part, where I try to add the nvmem provider support to > the MTD core. > > I'm not sure about the device tree bindings. Consider the following two > variants: > > (1) > flash@0 { > .. > > otp { > compatible = "mtd-user-otp"; mtd is a linuxism. Why not just 'nvmem-cells' here or as a fallback if we come up with a better name? > #address-cells = <1>; > #size-cells = <1>; > > serial-number@0 { > reg = <0x0 0x8>; > }; > }; > }; > > (2) > flash@0 { > .. > > otp { > compatible = "mtd-user-otp"; > #address-cells = <1>; > #size-cells = <1>; > > some-useful-name { > compatible = "nvmem-cells"; > > serial-number@0 { > reg = <0x0 0x8>; > }; > }; > }; > }; > > Both bindings use a subnode "opt[-N]". We cannot have the nvmem cells as > children to the flash node because of the legacy partition binding. > > (1) seems to be the form which is used almost everywhere in the kernel. > That is, the nvmem cells are just children of the parent node. > > (2) seem to be more natural, because there might also be other properties > inside the otp subnode and might be more future-proof. > > At the moment this patch implements (1). I think approach (1) seems fine. Rob