[alsa-devel] How to make Realtek HD-A codec alc282 create "Input Source"controlto select a input for recording?

Lin, Mengdong mengdong.lin at intel.com
Mon Jan 13 10:56:23 CET 2014


Hi Kailang,

Recording can works after disabling pin sense on 0x18. Many thanks!

So I feel pin sense of 0x18 is not very stable on my external alc282 card and HW can disable unsol event by itself, since driver does not disable unsol event during hot-plug in my previous test.

Regards
Mengdong

From: Kailang [mailto:kailang at realtek.com]
Sent: Monday, January 13, 2014 5:05 PM
To: Lin, Mengdong; 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?

If you only place the 0x18, you need to disable the pin sense of 0x18 verb table.
Please also add below.
snd_hda_codec_set_pincfg(codec, 0x18, 0x03a19120);
----- Original Message -----
寄件者: Lin, Mengdong<mailto:mengdong.lin at intel.com>
收件者: Kailang<mailto:kailang at realtek.com> ; alsa-devel at alsa-project.org<mailto:alsa-devel at alsa-project.org>
傳送日期: 2014年1月13日 下午 04:52
主旨: RE: How to make Realtek HD-A codec alc282 create "Input Source"controlto select a input for recording?

Hi Kailang,

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?

Regards
Mengdong

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?

Hi,

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’


Thanks
Mengdong

.


More information about the Alsa-devel mailing list