Headphone volume adjustment

Mark Brown broonie at sirena.org.uk
Thu Aug 15 18:55:34 EDT 2013

On Sat, Jul 06, 2013 at 09:47:33AM +1000, James Cameron wrote:

> I wasn't directly involved at the time, but from memory of work by
> Saadia and Mitch the audio did not work well until a major rework to
> reduce the control set and routes (arm-3.5 7632883).

So, I've been meaning to e-mail you guys about this.  I noticed that
you've gone very far away from mainline on the audio, partly due to some
new featurs that haven't been upstreamed in the CPU but mostly with use
case management in the CODEC driver.

> The codec we are using has three digital "volume" controls pertinent
> to this discussion:

> - the DAC,

> - the headphones,

> - the speaker amplifier.

> On XO-1.75 we preset the latter two and vary the first, calling the
> first Master and exporting three controls to user space.

In general you want to use an analogue volume control for playback if
you possibly can and keep the digital volumes at 0dB - this allows you
to get the maixmum resolution from the DACs.  

> I don't recall any design decision like that.  As far as I can tell we
> ended up with a different control set and routes because the previous
> control set and routes couldn't be made to work reliably with the new
> kernel in the time available.

> (And now that I've begun to understand the complexity of this codec, I
> can appreciate the problems that Saadia and Mitch had with it!)

I suspect it wasn't to do with kernel version churn...  in any case, the
general goal upstream is to push the routing into the application layer
partly to make it possible to figure out the complexity interactively
(no kernel rebuilds to change settings) and partly to allow the same
drivers to be used over multiple boards.

End users aren't supposed to see the configuration, the system sound
server is supposed to do that - there's some work going on to improve
this in PulseAudio at the minute and there's a standard set of helpers
in alsa-lib (UCM) which should help implement this for anything else.

There's some work going on on this upstream for PulseAudio, it might be
good to 
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 836 bytes
Desc: Digital signature
URL: <http://lists.laptop.org/pipermail/devel/attachments/20130815/faf3e615/attachment.sig>

More information about the Devel mailing list