[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <522E93D6.2010304@roeck-us.net>
Date: Mon, 09 Sep 2013 20:36:54 -0700
From: Guenter Roeck <linux@...ck-us.net>
To: Wei Ni <wni@...dia.com>
CC: Mark Brown <broonie@...nel.org>,
"khali@...ux-fr.org" <khali@...ux-fr.org>,
"swarren@...dotorg.org" <swarren@...dotorg.org>,
"lm-sensors@...sensors.org" <lm-sensors@...sensors.org>,
"linux-tegra@...r.kernel.org" <linux-tegra@...r.kernel.org>,
"linux-kernel@...r.kernel.org" <linux-kernel@...r.kernel.org>
Subject: Re: [PATCH v3 1/2] hwmon: (lm90) Add power control
On 09/09/2013 08:22 PM, Wei Ni wrote:
> On 09/09/2013 11:50 PM, Guenter Roeck wrote:
>> On Mon, Sep 09, 2013 at 02:50:22PM +0100, Mark Brown wrote:
>>> On Mon, Sep 09, 2013 at 04:34:43AM -0700, Guenter Roeck wrote:
>>>> On 09/09/2013 04:12 AM, Mark Brown wrote:
>>>>> On Mon, Sep 09, 2013 at 06:29:11PM +0800, Wei Ni wrote:
>>>
>>>>> This doesn't look good, it is going to ignore actual errors - I *really*
>>>>> doubt that vcc is optional, it looks like it's the main power supply for
>>>>> the device. You should use normal regulator_get(), _optional() is for
>>>>> supplies which could physically not be provided in a system (eg, if the
>>>>> device can generate them internally if required).
>>>
>>>> Then he'll have to make sure that all devicetree files in the system
>>>> contain references to this regulator.
>>>
>>> Or get the patches applied on top of the code that'll be going in this
>>> cycle implementing get_optional() properly - when that's done the
>>> default will be to provide a dummy supply for regulator_get(). If you
>>> ack the patch I'd be happy to carry it.
>>>
>> Jean will have to ack it.
>>
> I think it's better to use get_optional(), and ignore the errors except
> -EPROBE_DEFER. Because many platform may always power on this device,
> and will not provide regulator for it, so if we get errors from
> regulator subsystem and return it directly, then the probe() can't be
> implemented, this driver can't work properly, even though it can work
> without regulator support.
> Mark, do you mean you have patches for regulator_get_optional() and
> regulator_get()?
>
My understanding is that by adding regulator support you essentially
committed to adding regulators (if necessary dummy ones) for this driver
to all those platforms. This is quite similar to other drivers in the
same situation. Once you start along that route, you'll have to go it
all the way.
Guenter
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists