[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <5152A6A2.9030105@stericsson.com>
Date: Wed, 27 Mar 2013 08:58:26 +0100
From: Bengt Jönsson <bengt.g.jonsson@...ricsson.com>
To: Axel Lin <axel.lin@...ics.com>
Cc: Mark Brown <broonie@...nsource.wolfsonmicro.com>,
Lee Jones <lee.jones@...aro.org>,
Yvan FILLION <yvan.fillion@...ricsson.com>,
Liam Girdwood <lgirdwood@...il.com>,
"linux-kernel@...r.kernel.org" <linux-kernel@...r.kernel.org>
Subject: Re: regulator: ab8500: ambiguous meaning of delay setting in struct
ab8500_regulator_info
On 03/27/2013 01:15 AM, Axel Lin wrote:
> Hi,
>
> The comment of struct ab8500_regulator_info says the delay means
> "startup/set voltage delay in us".
> I'm confused by the meaning, does it mean enable_time or set_voltage_time_sel
> time or both?
>
> * @enable_time: Time taken for the regulator voltage output voltage to
> * stabilise after being enabled, in microseconds.
>
> * @set_voltage_time_sel: Time taken for the regulator voltage output voltage
> * to stabilise after being set to a new value, in microseconds.
> * The function provides the from and to voltage selector, the
> * function should return the worst case.
The data sheet does not specify time delay for voltage selection, only
enable time. So I have assumed the same time for voltage selection.
> Current code only has delay setting for AB8500_LDO_TVOUT, it looks like it
> means enable_time rather than the delay for set_voltage_time_sel.
> (well, AB8500_LDO_TVOUT is fixed voltage, it does not implement set_voltage_time_sel)
>
> ab8500_regulator_set_voltage_time_sel() returns info->delay, but all it's users
> (AB8500_LDO_AUX1, AB8500_LDO_AUX2, AB8500_LDO_AUX3, AB8500_LDO_INTCORE)
> do not has delay setting. ( So now ab8500_regulator_set_voltage_time_sel returns 0. )
This is a flaw in the driver. It should specify delay for all
regulators, not just VTVout.
Worst case enable time from data sheet:
Vana: enable time = 140 us
Vaux1/2: enable time = 200 us
Vaux3: enable time = 450 us
Vintcore: enable time = 750 us
Vamic1/2: enable time = 500 us
Vdmic: enable time = 420 us
VTVout: enable time = 500 us
Vaudio: enable time = 140 us
Vusb: enable time = 150 us
>
> Axel
>
Thanks for looking into it.
Bengt
--
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