On Wed, 18 Apr 2018 13:53:56 +0100Yep, I agree! this is same issue if we make nvmem-cells a child of nvmem provider too.
Srinivas Kandagatla <srinivas.kandagatla@xxxxxxxxxx> wrote:
On 18/04/18 13:32, Alban wrote:
No, the root cause is because of passing wrong device instance to nvmemI was also suggesting you to use nvmem-cell subnode, but make it aBut the root cause is in the nvmem binding, this conflict could exists
proper nvmem provider device, rather than reusing its parent device.
You would end up some thing like this in dt.
flash@0 {
#address-cells = <1>;
#size-cells = <1>;
compatible = "s25sl064a";
reg = <0>;
nvmem-cells {
compatible = "mtd-nvmem";
#address-cells = <1>;
#size-cells = <1>;
calibration: calib@404 {
reg = <0x404 0x10>;
};
};
};
core. And trying to workaround is the actual issue.
The data is stored on the MTD, so the nvmem provider is the MTD device.
I don't think it is a good idea to have a virtual device in the DT to
accommodate the nvmem API.