On Wed, 05 Jun 2013 12:26:59 +0200, Takashi Iwai tiwai@suse.de wrote :
I'm on a dead end on this computer, I can't seem to find how the mic jack presence works. It's always on(presence detected whatever the status) on NID 0x18, the one used for the external mic. I have tried every NID, manually enabling pin_sense on each, but only the headphone jack detection works. The mic sense is nowhere to be seen.
I also don't know any other method for Realtek. For IDT codecs, there are some devices with GPIO unsol events, but Realtek codecs seem to use only the normal pin detection unsol events.
So, on your device, GET_PIN_SENSE doesn't return the detection bit set? You tried setting SET_PIN_SENSE before GET_PIN_SENSE, right?
I did more tests, this time using hda-verb directly instead of hda-analyzer tools. And GET_PIN_SENSE does return the correct value… sometimes. (without the need for SET_PIN_SENSE) It seems the value is correct only if queried once every 10 to 15 seconds. Changing the jackpoll_ms argument does not seem to help, so I'll keep digging into it.
Anisse