Re: [PATCH v5 4/5] regulator: add regulator driver of hi655x pmic

From: chenfeng
Date: Mon Jan 11 2016 - 21:18:26 EST




On 2016/1/12 2:24, Mark Brown wrote:
> On Mon, Jan 11, 2016 at 08:20:16PM +0800, Chen Feng wrote:
>
>> +config REGULATOR_HI655X
>> + tristate "Hisilicon HI655X PMIC regulators support"
>> + depends on ARCH_HISI || (COMPILE_TEST && ARM64)
>
> Why does this depend on ARM64? If it's needed it probably indicates a
> problem...
>
There will be compile warning with arch parisc.

Add the current support platform is ARM64.
>> + np = of_get_child_by_name(dev->parent->of_node, "regulators");
>> + if (!np)
>> + return -ENODEV;
>> +
>> + ret = of_regulator_match(dev, np,
>> + hi655x_regulator_match,
>> + ARRAY_SIZE(hi655x_regulator_match));
>
> Like I said on the previous version:
>
> | Don't open code this, use the standard support with of_match and
> | regulators_node.
>
> The code is now using of_match but still open coding regulators_node.
>
I am not sure about open coding regulators_node.

I take max8907-regulator.c for reference. The code there is:
224 static int max8907_regulator_parse_dt(struct platform_device *pdev)
225 {
226 struct device_node *np, *regulators;
227 int ret;
228
229 np = pdev->dev.parent->of_node;
230 if (!np)
231 return 0;
232
233 regulators = of_get_child_by_name(np, "regulators");
...
238
239 ret = of_regulator_match(&pdev->dev, regulators, max8907_matches,
240 ARRAY_SIZE(max8907_matches));

249 }

Can you give me some references? Really thanks for your help.

ChenFeng