Re: [alsa-devel] Dell new AIO platform
This is the alsa-info.txt for the machine of zuma-p (the machine kailang sent the patch for):
https://pastebin.ubuntu.com/p/V4QgWWY5Nj/
And we have a similar bug with this one, but it is not for output, it is for input. On one of Dell desktops, there is no internal microphone, the only input devices are "Headphone Mic=0x1a" and "Headset Mic=0x19", so the imux_pins[spec->gen.cur_mux[0]] is headphone mic or headset mic, let us suppose it is headset mic, and we are unlucky that the auto-mute is disabled, and then unplug a headset from the jack, the audio is now in unplugged mode (alc_headset_mode_unplugged(codec);), then next time we plug the headset into the jack, the "what-did-you-plug" dialogue will pop up, we select headset-mic, since the imux_pins[spec->gen.cur_mux[0]] is already the headset mic (not internal microphone since there is no internal microphone on this machine), the alc_update_headset_mode() will not be called and then alc_determine_headset_type(), alc_headset_mode_ctia() and alc_headset_mode_omtp() will not be called, as a result the headset mic can't record sound.
So far, I have no idea how to fix this problem. And the alsa-info.txt for my machine is as below shown:
https://pastebin.ubuntu.com/p/SNMNjbRgnT/
Regards, Hui.
On 2018年03月06日 17:13, Kailang wrote:
-----Original Message----- From: Takashi Iwai [mailto:tiwai@suse.de] Sent: Tuesday, March 06, 2018 5:10 PM To: Kailang Cc: Hui Wang; (alsa-devel@alsa-project.org)" Subject: Re: Dell new AIO platform
On Tue, 06 Mar 2018 10:03:38 +0100, Kailang wrote:
-----Original Message----- From: Takashi Iwai [mailto:tiwai@suse.de] Sent: Tuesday, March 06, 2018 4:49 PM To: Kailang Cc: (alsa-devel@alsa-project.org) Subject: Re: Dell new AIO platform
On Tue, 06 Mar 2018 08:54:39 +0100, Kailang wrote:
Hi Takashi,
This platform was only one phone Jack. Add dummy lineout verb to fix automute mode disable. This just the workarround.
I'm not sure why this phantom line pin is needed. What happens without that?
Looks like I find the root cause for this issue, since
there is only one output device (headphone), so the Auto-mute is not supported on this machine, as a result, when users plug headphone to the jack, audomute_hook or hp_automute_hook will not be called, then the alc_update_headset_mode() will not be called, and alc_headset_mode_default() will not be called. the headset jack is always in the alc_headset_mode_unplugged() state.
OK, now understood.
I can take the patch as a tentative workaround. But for the proper fix, could you give alsa-info.sh output?
I had no machine in my site.
Hi Hui Wang,
Could you help to send alsa-info.sh output to Takashi?
thanks,
Takashi
------Please consider the environment before printing this e-mail.
On 2018年03月07日 16:42, Hui Wang wrote:
This is the alsa-info.txt for the machine of zuma-p (the machine kailang sent the patch for):
https://pastebin.ubuntu.com/p/V4QgWWY5Nj/
And we have a similar bug with this one, but it is not for output, it is for input. On one of Dell desktops, there is no internal microphone, the only input devices are "Headphone Mic=0x1a" and "Headset Mic=0x19", so the imux_pins[spec->gen.cur_mux[0]] is headphone mic or headset mic, let us suppose it is headset mic, and we are unlucky that the auto-mute is disabled, and then unplug a headset from the jack, the audio is now in unplugged mode (alc_headset_mode_unplugged(codec);), then next time we plug the headset into the jack, the "what-did-you-plug" dialogue will pop up, we select headset-mic, since the imux_pins[spec->gen.cur_mux[0]] is already the headset mic (not internal microphone since there is no internal microphone on this machine), the alc_update_headset_mode() will not be called and then alc_determine_headset_type(), alc_headset_mode_ctia() and alc_headset_mode_omtp() will not be called, as a result the headset mic can't record sound.
So far, I have no idea how to fix this problem. And the alsa-info.txt for my machine is as below shown:
I found if we don't call alc_headset_mode_unplugged(codec) (comment this line form patch_realtek.c), the input devices work better on my machine.
https://pastebin.ubuntu.com/p/SNMNjbRgnT/
Regards, Hui.
On 2018年03月06日 17:13, Kailang wrote:
-----Original Message----- From: Takashi Iwai [mailto:tiwai@suse.de] Sent: Tuesday, March 06, 2018 5:10 PM To: Kailang Cc: Hui Wang; (alsa-devel@alsa-project.org)" Subject: Re: Dell new AIO platform
On Tue, 06 Mar 2018 10:03:38 +0100, Kailang wrote:
-----Original Message----- From: Takashi Iwai [mailto:tiwai@suse.de] Sent: Tuesday, March 06, 2018 4:49 PM To: Kailang Cc: (alsa-devel@alsa-project.org) Subject: Re: Dell new AIO platform
On Tue, 06 Mar 2018 08:54:39 +0100, Kailang wrote:
Hi Takashi,
This platform was only one phone Jack. Add dummy lineout verb to fix automute mode disable. This just the workarround.
I'm not sure why this phantom line pin is needed. What happens without that?
Looks like I find the root cause for this issue, since
there is only one output device (headphone), so the Auto-mute is not supported on this machine, as a result, when users plug headphone to the jack, audomute_hook or hp_automute_hook will not be called, then the alc_update_headset_mode() will not be called, and alc_headset_mode_default() will not be called. the headset jack is always in the alc_headset_mode_unplugged() state.
OK, now understood.
I can take the patch as a tentative workaround. But for the proper fix, could you give alsa-info.sh output?
I had no machine in my site.
Hi Hui Wang,
Could you help to send alsa-info.sh output to Takashi?
thanks,
Takashi
------Please consider the environment before printing this e-mail.
participants (1)
-
Hui Wang