On Tue, Jun 17, 2014 at 09:16:52PM +0200, Robert Jarzmik wrote: > Mark Brown <broonie@xxxxxxxxxx> writes: > > On Sat, Jun 14, 2014 at 04:54:24PM +0200, Robert Jarzmik wrote: > >> + matched = of_regulator_match(dev, np, rmatch, ARRAY_SIZE(rmatch)); > >> + of_node_put(np); > >> + if (matched <= 0) > >> + return matched; > > Why is this treating zero as an error? We should be able to at least > > report the current state of regulators even if none are configured in > > the device tree. > Euh how so an error ? > If 0 is returned, this means no regulators are found in device-tree. It's not an > error, it's a lack of regulators (ie. no Output_V3 and no Output_V6), and no > more handling is necessary in this function, while returning "ok", ie 0 ... OK, so there's just nothing to do in that case. That's fine, but it's just not at all clear from the code. A comment would help. > As for the "state report", this max1586 doesn't report anything, it cannot even > be queried about the current voltage, sic ... It can't? That's unfortunate, though I was able to turn up a datasheet which appears to support that. > If you want me to modify this bit I need a bit more of an explanation to > understand. Where the driver is doing unusual things if they are actually sensible then the change needs to be clearer about why.
Attachment:
signature.asc
Description: Digital signature