On Mon, Mar 06, 2023 at 09:59:29PM +0200, Andy Shevchenko wrote: > On Mon, Mar 6, 2023 at 6:00 PM Serge Semin <fancer.lancer@xxxxxxxxx> wrote: > > On Sun, Mar 05, 2023 at 08:07:34PM -0800, Brad Larson wrote: > > ... > > > > - node = of_parse_phandle(np, syscon_name, 0); > > > > node = of_parse_phandle(dev_of_node(pdev->dev), syscon_name, 0); > > Side note: I would rather see syscon_fwnode_to_regmap() instead of > this. And IIRC syscon already has an API to find by name. Ah, right. Though it's called syscon_regmap_lookup_by_phandle() and it can be used to replace the entire pattern: "Parse property; Find node by phandle; Get regmap by node". Basically the of_parse_phandle() and syscon_node_to_regmap() methods invocation can be replaced with just a single function call. Thus there won't be need to worry about decrementing the found DT-node ref-counter. > > > > + if (!node) > > > > > + return dev_err_probe(&pdev->dev, -ENODEV, "failed to find %s\n", > > > + syscon_name); > > > > Hm, using dev_err_probe() with known error value seems overkill. > > It's allowed use and it helps to drop a few unnecessary lines of code. Ok, seeing there is no alternative to that method which would return the passed error but wouldn't have a name implying the silent deferred-probe error semantics. -Serge(y) > > > > + syscon = syscon_node_to_regmap(node); > > > + if (IS_ERR(syscon)) > > > + return dev_err_probe(&pdev->dev, PTR_ERR(syscon), > > > + "syscon regmap lookup failed\n"); > > -- > With Best Regards, > Andy Shevchenko