lkml.org 
[lkml]   [2011]   [Apr]   [28]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
From
SubjectRE: [RFC] Regulator state after regulator_get
Date
Hi,

> -----Original Message-----
> From: ext Mark Brown [mailto:broonie@opensource.wolfsonmicro.com]
> Sent: 28. huhtikuuta 2011 13:06
> To: Jokiniemi Kalle (Nokia-SD/Tampere)
> Cc: lrg@slimlogic.co.uk; mchehab@infradead.org; svarbatov@mm-sol.com;
> saaguirre@ti.com; grosikopulos@mm-sol.com; Zutshi Vimarsh (Nokia-
> SD/Helsinki); Ailus Sakari (Nokia-SD/Helsinki); linux-kernel@vger.kernel.org;
> linux-media@vger.kernel.org
> Subject: Re: [RFC] Regulator state after regulator_get
>
> On Thu, Apr 28, 2011 at 09:01:03AM +0000, kalle.jokiniemi@nokia.com wrote:
>
> > If the device driver using the regulator does not enable and disable the
> > regulator after regulator_get, the regulator is left in the state that it was
> > after bootloader. In case of N900 this is a problem as the regulator is left
> > on to leak current. Of course there is the option to let regulator FW disable
> > all unused regulators, but this will break the N900 functionality, as the
> > regulator handling is not in place for many drivers.
>
> You should use regulator_full_constraints() if your board has a fully
> described set of regulators. This will cause the framework to power
> down any regulators which aren't in use after init has completed. If
> you have some regulators with no consumers or missing consumers you need
> to mark them as always_on in their constraints.

I don't have a full set of regulators described, that's why things broke when
I tried the regulator_full_constraints call earlier. But I don't think it would be too
big issue to check the current after boot configuration and define all the
regulators as you suggest. I will try this approach.

>
> > So reset the regulator on first regulator_get call to make
> > sure that any regulator that has users is not left active
> > needlessly.
>
> This would cause lots of breakage, it would mean that all regulators
> that aren't always_on would get bounced off at least once during startup
> - that's not going to be great for things like the backlight.

OK, this is not a viable solution.

Thanks for the comments,
Kalle



\
 
 \ /
  Last update: 2011-04-28 13:11    [W:0.062 / U:0.184 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site