On Thu, Mar 26, 2020 at 11:36:44AM +0100, Geert Uytterhoeven wrote: > On Thu, Mar 26, 2020 at 11:17 AM Wolfram Sang > <wsa+renesas@xxxxxxxxxxxxxxxxxxxx> wrote: > > When I wanted to print the chosen values to debug output, I concluded > > that a helper function to parse one timing would be helpful. ... > > +static void i2c_parse_timing(struct device *dev, char *prop_name, u32 *cur_val_p, > > + u32 def_val, bool use_def) > > +{ > > + int ret; > > + > > + ret = device_property_read_u32(dev, prop_name, cur_val_p); > > + if (ret && use_def) > > + *cur_val_p = def_val; > > Alternatively, you could just preinitialize the value with the default value > before calling this function, and ignoring ret. > That would remove the need for both the def_val and use_def parameters. Some drivers are using false to use_defaults. How they will survive this change? (See rcar case, for instance) > > + dev_dbg(dev, "%s: %u\n", prop_name, *cur_val_p); > > +} -- With Best Regards, Andy Shevchenko