[alsa-devel] How to make Realtek HD-A codec alc282 create "Input Source" controlto select a input for recording?
mengdong.lin at intel.com
Mon Jan 13 10:04:40 CET 2014
Sorry, I sent this mail again without the big-size alsa info.
From: Lin, Mengdong
Sent: Monday, January 13, 2014 4:53 PM
To: 'Kailang'; alsa-devel at alsa-project.org
Subject: RE: How to make Realtek HD-A codec alc282 create "Input Source" controlto select a input for recording?
I tried to disable both Mic2 pin 0x19 and DMIC pin 0x12 as a PRE_PROBE stage fixup, as below:
snd_hda_codec_set_pincfg(codec, 0x19, 0x411111f0);
snd_hda_codec_set_pincfg(codec, 0x12, 0x411111f0);
After this, recording can work if I boot the platform with Mic jack connected to Mic1 port (0x18), but later hot-plug can make recording fail again:
- On boot, 0x23 unmutes 0x18. Recording works well. Also unsol event is enabled on 0x18 with tag 0x02.
- Then I removed the mic jack, 0x23 mutes 0x18. But no unsol event is got, and codec info shows unsol event is disabled on pin 0x18 Strange.
- Then I connected the mic jack again. No unsol event is got. 0x23 still mutes 0x18.
I wonder since only Mic1 pin 0x18 is enabled now, why 0x23 cannot always unmutes 0x18?
From: Kailang [mailto:kailang at realtek.com]
Sent: Monday, January 13, 2014 4:14 PM
To: Lin, Mengdong; alsa-devel at alsa-project.org<mailto:alsa-devel at alsa-project.org>
Subject: Re: How to make Realtek HD-A codec alc282 create "Input Source" controlto select a input for recording?
I think it maybe can not have two internal Mic at the same time.
Could you try to disable pin for 0x19 or 0x12?
To fixup 0x19 or 0x12 verb as 0x41fffff0.
----- Original Message -----
寄件者: Lin, Mengdong<mailto:mengdong.lin at intel.com>
收件者: alsa-devel at alsa-project.org<mailto:alsa-devel at alsa-project.org> ; Kailang (kailang at realtek.com)<mailto:kailang at realtek.com)>
傳送日期: 2014年1月13日 下午 03:19
主旨: How to make Realtek HD-A codec alc282 create "Input Source" controlto select a input for recording?
How to make the driver create a “input source” control for ALC282 with 3 Mic pins?
My platform uses a Realtek HD-A codec ALC282 card, it has 3 Mic pins:
Mic = 0x18 (MIC1)
Internal Mic = 0x19 (MIC2)
Internal Mic = 0x12 (DMIC)
Recording on Mic1 (0x18) cannot work because the mixer 0x23 always mutes the input from 0x18.
And there is no “input source” control to let the mixer select and unmute 0x18.
I’ve tried to disable pin sense on pin 0x18 as a board fix-up like below, but “input source” control is still not created:
caps = snd_hda_query_pin_caps(codec, 0x18);
caps &= ~AC_PINCAP_PRES_DETECT;
snd_hda_override_pin_caps(codec, 0x18, caps);
snd_hda_codec_set_pincfg(codec, 0x18, 0x03a19120); … set ‘Jack Detect Override’
More information about the Alsa-devel