Srinivas Kandagatla <srinivas.kandagatla@xxxxxxxxxx> [2019-05-13 09:25:55]: Hi, > My initial idea was to add compatible strings to the cell so that most of > the encoding information can be derived from it. For example if the encoding > representing in your example is pretty standard or vendor specific we could > just do with a simple compatible like below: that vendor/compatible list would be quite long[1], there are hundreds of devices in current OpenWrt tree (using currently custom patch) and probably dozens currently unsupported (ASCII encoded MAC address in NVMEM). So my goal is to add some DT functionality which would cover all of these. > eth1_addr: eth-mac-addr@18a { > compatible = "xxx,nvmem-mac-address"; > reg = <0x18a 0x11>; > }; while sketching the possible DT use cases I came to the this option as well, it was very compeling as it would kill two birds with one stone (fix outstanding MTD/NVMEM OF clash as well[2]), but I think, that it makes more sense to add this functionality to nvmem core so it could be reused by other consumers, not just by network layer. 1. https://git.openwrt.org/?p=openwrt%2Fopenwrt.git&a=search&h=HEAD&st=grep&s=mtd-mac-address 2. https://lore.kernel.org/netdev/20190418133646.GA94236@xxxxxxxxxxx -- ynezz