On Monday 19 September 2011 12:40:32 Mark Brown wrote:
On Mon, Sep 19, 2011 at 02:26:31PM +0300, Péter Ujfalusi wrote:
Here in twl6040 we also have event handlers to do the ramp up/down on the gains. AFAIK some wm* codec have similar code.
WM8350.
The implementation in twl6040 looks similar to the one in the wm8350 in regards to the ramp code, and caching of the user configured gains.
If you take a look at the wm8350 driver it is also changing the L/R OUT 1/2 registers at probe time. I don't see any difference in the two. Also it seams that wm8350 has the same problem: The default after the reset is 0x39 (0 dB) In the wm8350 probe it is changed to 0x00 (-57dB)
The twl6040 already had the ramp up, and down code, but it was missing the initialization part (IOW configuring the lowest gain on the outputs after first power on).
We do have other scenarios covered, but this initialization was missing. This resulted that the _first_ playback has pop noise, but all subsequent playbacks were fine, since we had the runtime fix for this.
-- Péter