At Fri, 23 Dec 2011 10:37:15 +0800, Raymond Yau wrote:
2011/11/17, Takashi Iwai tiwai@suse.de:
At Wed, 16 Nov 2011 15:14:17 +0800, Raymond Yau wrote:
2011/11/14 Takashi Iwai tiwai@suse.de:
The lack of the initial pin-state of kclts was fixed in a different patch now. But, the need of 200ms delay worries me whether it's needed generically at each pin-sense reading or it's just only for the initial reading.
Does the pin-sense reading work in general after loading the driver stably?
Presence detect bit is alway correct, without the delay.
the only issue is the impedance measurement of the plugged jacks at computer boot need a delay 200ms
For the user application to know the impedance , it seem the client application have to issue
- set_pin_sense
- delay
- get_pin_sense to get the correct impedance of the attached device
just like my modified hda-jack-sense-test in previous email
Can it measure the impedance of the jacks of your computer ?
It seems that this doesn't work machines here with Realtek codecs. So, this must be pretty depending on the codec chip.
Anyway, currently there is no use of impedance, and the jack presence can be detected immediately without delay, we can keep the code as is now.
How can I add the new hda-jack detect to patch_analog.c ?
Only ad1988 use snd_hda_parse_pin_def_config() to parse the pin, other ad198x codecs are used model since snd_hda_jack_add_ctls() require those pin info from autocfg
Not necessarily. You can call snd_hda_jack_add_kctl() and enable the pin-detection via snd_hda_jack_detect_enable() directly.
The auto model of ad1988 use init_verbs ad1988_6stack_init which cannot handle those 3 stack motherboard asus m2n
What is the reason to call snd_hda_jack_report_sync() at the end of unsol event handler ?
To notify the jack-detection.
Takashi