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