Re: [PATCH] regulator: palmas: use correct device node for DT parsing

From: Laxman Dewangan
Date: Fri Mar 01 2013 - 07:47:20 EST


On Friday 01 March 2013 12:09 PM, Mark Brown wrote:
* PGP Signed by an unknown key

On Wed, Feb 27, 2013 at 02:23:42PM +0000, Graeme Gregory wrote:
On 27/02/13 14:10, Laxman Dewangan wrote:
When device is registered through the DT then regulators node
exist in the parent device node of regulator driver. Hence passing
parent device node for parsing DT in place of self-device node
which is typically NULL.
- struct device_node *node = pdev->dev.of_node;
+ struct device_node *node = pdev->dev.parent->of_node;
This is not correct, nor is the reasoning.
I suspect your previous patch broke DT probing so your not getting nodes
filled in.
So, the reason that this pattern has generally been followed is so that
the regulator core can do the equivalent of regulator_get(dev, supply)
to find the supplies. Using the parent device there is particularly
important in non-DT systems so that we can map the child regulator
supply in by using the dev_name() of the parent rather than the MFD
internal subdevice name but for pure DT systems where it's all just
direct links it's less of an issue.



If I make the dts file as
#gpio-cells = <2>;
gpio-controller;

palmas_pmic {
compatible = "ti,palmas-pmic";
ti,ldo6_vibrator = <0>;

regulators {
:::::::::::::
}
}


then regulator get registered properly.
And hence this patch is not require here.

--
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/