On 08/16/2019 12:43 AM, Guenter Roeck wrote: > On Fri, Aug 16, 2019 at 12:19:42AM +0200, Max Staudt wrote: >> On 08/15/2019 02:58 PM, Max Staudt wrote: >>> - if (of_node) { >>> - ret = of_property_read_u32_array(of_node, "lltc,meas-mode", >>> - data->mode, 2); >>> + if (i2c->dev.of_node || i2c->dev.fwnode) { >> >> One more idea, would it be better here to do the following? >> >> if (device_property_present(i2c->dev, "lltc,meas-mode")) { >> ret = of_property_read_u32_array(of_node, "lltc,meas-mode", >> data->mode, 2); >> } >> >> I'm happy to prepare a patch if you wish to have this in - just let me know whether it should be on top of the last one, or instead of it. > > That would be semantically different. The property is currently mandatory. > The above code would make it optional. This might work: > > if (dev_fwnode(&i2c->dev)) { > ret = device_property_read_u32_array(...); > ... > } Fair point. The semantic change was part of my question, but the more I think about it, the less I want to open this can of worms. We can still make the property optional later on, while it's not as easy to make it mandatory. I'll send a patch with your suggestion. Thanks! Max