Re: [PATCH v4 3/4] regulator: tps65086: Add regulator driver for the TPS65086 PMIC

From: Andrew F. Davis
Date: Mon Nov 23 2015 - 12:41:17 EST


On 11/22/2015 07:13 AM, Mark Brown wrote:
On Sat, Nov 21, 2015 at 02:40:50PM -0600, Andrew F. Davis wrote:
On 11/21/2015 07:37 AM, Mark Brown wrote:

An earlier version of this patch has already been applied, please don't
resend already applied patches but send incremental patches with any
changes.

Odd, I didn't seem to get any message for this getting applied. Looks
like only a couple lines difference from the version in the regulators
branch, I don't imagine you are able to rebase that with these changes?

As a matter of policy I try to avoid rewriting history unless it is
really required.


Makes sense, I'll push the patch once the rest of this driver gets
pulled in-case more changes are needed.

Anyway the reason that line needed changed is over a confusion in
what the 'of_node' does in 'struct regulator_config'. The description
seems to make it seem like it is the node that gets checked for
init data.

The current behaviour is the intended behaviour.

* @of_node: OpenFirmware node to parse for device tree bindings (may be
* NULL).

But the 'of_node' that is actually searched is the one given in
regulator_config->dev->of_node. Is this intended behavior (drivers
assume it is so it probably has to be now) and if so, the above
description might need to be clarified as too what that 'of_node'
pointer really does?

Please submit a patch with any clarification you think is needed.
of_node is the name of the container subnode of the main node for the
device where we look for init data - both are used.


But which of_node?

regulator_config->of_node
regulator_config->dev->of_node

The second is the only one I see getting used, the first is only
used when drivers provide their own init_data and automatic init
data getting fails.

The same issue is present in GPIO (gpiolib.c:612), where the of_node
in the config takes precedence over the one in config->dev, the
opposite is true for regulators, this is very confusing and should be
standardized.
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/