Hey, I committed the code necessary in snd-aoa to support headphone and line-out detection, but I need help with one thing: When you plug in an optical connector into the combo thingie, is a regular interrupt generated? Since nothing will actually be printed out, I suggest the following method to find out: 1) start alsamixer 2) enable all outputs 3) plug in optical connector into the headphone/line-out plug 4) observe if anything changes 5) remove optical connector again 6) disable all outputs 7) plug in optical connector again 8) reply to this mail telling me what happens in alsamixer when doing it If nothing happens then I suppose no interrupt is generated, otherwise, there must be. But I'll need to change the code a bit in any case. The headphone detection is intentionally not doing much, for one it reports the current state in the mixer element 'Headphone Detected', and you get the choice of switching to headphone on detect, which also turns off all the others, and enables speakers when removing. Also, the initial status is based on it. If you want more options, run a userspace daemon that listens to changes on 'Headphone Detected' and changes stuff appropriately. Keep in mind that it must disable the automatic handling then. And no, I haven't written one :) johannes PS: For those who care, here are some technical details: (1) I decided not to make the fabric handle *all* the interrupts because that gets messy quickly with the allowed transfer items. Also, it is hard to handle because sometimes some inputs are mutually exclusive, while outputs controlled by amps are not, etc. (2) I will need to change the code so that the fabric handles all the outputs, that is move the S/PDIF control to the fabric and have the codec have a call for enabling/disabling it... Yes, this is going into the direction of having the fabric control all of it, but see (1). Maybe that code will enable having the fabric control it all, I dunno.
Attachment:
signature.asc
Description: This is a digitally signed message part