[alsa-devel] ADAU1761 default register value problem

Lars-Peter Clausen lars at metafoo.de
Fri May 13 10:20:33 CEST 2016


On 05/11/2016 05:16 PM, Ricard Wanderlof wrote:
> 
> Hi Lars,
> 
> On Tue, 26 Apr 2016, Lars-Peter Clausen wrote:
> 
>>> A while ago I posted a question to the list regarding the default values 
>>> set up for the ADAU1761 (and similar CODECs), 
>>> ...
> 
> Having researched this further, it appears that commit
> 
> 27d6e7d1c96c9f51379e0feb972fec26029098bc
> 
> ASoC: adau17x1: Cache writes when core clock is disabled

I think it is also related to commit 1c79771a7270 ("regmap: Use
regcache_mark_dirty() to indicate power loss or reset"). This changes the
regmap code to sync all registers under certain conditions.

> 
> actually fixes this problem, at least for the ADAU1361 and ADAU1761. I'm 
> no expert at the regcache mechanism, but it looks as if when the regcache 
> is synced when the bias level goes from OFF to STANDBY, it actually writes 
> out all the values including the default ones (verified by adding trace 
> printouts, and also by verifying that my original problem of the codec 
> misbehaving after reconfiguration after reboot is no longer there).


We still have the issue though that the CODEC is in an undefined state until
the first OFF to STANDBY transitions happens. Usually this will happen early
on when the CODEC is bound to the sound card, but if it is not bound
immediately it might stay there for a bit longer. So depending on the setup
this may or may not be a problem.



More information about the Alsa-devel mailing list