On Thu, 2012-02-23 at 07:17 +0100, David Henningsson wrote: > Support the new jack detection interface implemented in Linux 3.3 > (and Ubuntu's 3.2 kernel). > > Jacks are probed and detected using the snd_hctl_* commands, which > means we need to listen to them using fdlists. As this detection > needs to be active even if there is currently no sink for the jack, > so this polling is done on the card level. > > Also add configuration support in paths, like this: > [Jack Headphone] > required-any = any > > ...where 'Jack Headphone' should match 'Headphone Jack' as given by > ALSA (as seen in e g 'amixer controls'). > "Required", "required-any" and "required-absent" is supported. Using > required-any, one can have several ports even though there is no > other indication in the mixer that this path exists. And it's in! :) Thanks for the great work and patience in getting this merged. Worked great on the 3.3rc6 kernel for me. I merged the whitespace/coding style/comment changes we discussed on IRC. Please keep these in mind for future patches and commits. There are a couple of things I'd like to see: 1. Availability information in pactl/pacmd (we spoke of this on IRC) 2. A way to avoid the volume spike on port change I believe there was discussion on the second on IRC a while back, and I'm not sure how feasible this is. Is it possible for us to defer enabling the actual output on the whatever port is selected till the volume change is applied (maybe some of the auto-mute work from the alsa-devel bits are relevant here)? Maybe a mute-set volume-mute cycle would work if it is physically impossible to prevent the output from going to a device is plugged in. Cheers, Arun