On Tue, Nov 03, 2015 at 09:57:46AM -0600, Andrew F. Davis wrote:
> On 10/31/2015 09:37 PM, Mark Brown wrote:
> >On Fri, Oct 30, 2015 at 05:41:43PM -0500, Andrew F. Davis wrote:

> >>+   struct regulator_desc desc;
> >>+   unsigned int decay_reg;
> >>+   unsigned int decay_mask;

> >The decay_reg and decay_mask fields appear to be entirely write only,
> >why are they present?

> Not sure what you mean, they are written to differently for each regulator,
> and read when setting the decay mode in _probe.

Ugh, that's a bit hidden (mostly due to not using the callback).

> >>+   ret = of_regulator_match(&pdev->dev, pdev->dev.of_node,
> >>+                            tps65086_matches,
> >>+                            ARRAY_SIZE(tps65086_matches));
> >>+   if (ret < 0) {
> >>+           dev_err(tps->dev, "Error parsing regulator init data\n");
> >>+           return ret;
> >>+   }

> >Please match regulators using the fields in the regulator_desc rather
> >than open coding.

> I need to match to get the driver specific information for each regulator,
> if I let regulator_register do it I never get a chance to process the match,
> unless there is a callback or something I'm missing.

There's a callback you are missing, of_parse_cb().

Attachment: signature.asc
Description: PGP signature

Reply via email to