On Wed, Feb 21, 2018 at 09:11:34PM +0100, Hans de Goede wrote:
On 21-02-18 12:43, Mark Brown wrote:
On Tue, Feb 20, 2018 at 11:15:04PM +0100, Hans de Goede wrote:
There is no need to set the LDO voltage to 1.2 volt each time we enter standby, instead always leave it 1.2 volt on BIAS_OFF. Note we do a snd_soc_codec_force_bias_level(BIAS_OFF) on probe, so this will configure it correctly right from the start.
That force on probe sounds like a problem... if this is being done once at startup it should be done in the probe function, not in the bias level configuration.
This is more like "we do a snd_soc_codec_force_bias_level(BIAS_OFF) on probe anyways and that already sets the level to 1.2 volt, so we don't need to do this explicitly at probe time".
What I'm saying is that if the code is written such that you need to do that _force_bias_level() then it's not very idiomatic which is a bit worrying - it might be safer to reorganize the code so that this isn't required any more.
Also, are you sure this is a good fix? If the bias voltage is being configured all the time does that perhaps indicate that for better performance or something it should have been being set to some other voltage when the device is in standby?
We switch the LDO off when in the bias level is BIAS_OFF and on at 1.2 volt when in standby or higher. Before this commit we would
OK.