Applied yout patch with "probe_mask=0x105" option. ALC892 is now found and I have sound. Thanks! :)
[ 25.986154] snd_hda_intel 0000:00:1f.3: codec_mask forced to 0x5 [ 25.997511] snd_hda_codec_realtek hdaudioC0D0: autoconfig for ALC892: line_outs=1 (0x14/0x0/0x0/0x0/0x0) type:speaker [ 25.997516] snd_hda_codec_realtek hdaudioC0D0: speaker_outs=0 (0x0/0x0/0x0/0x0/0x0) [ 25.997518] snd_hda_codec_realtek hdaudioC0D0: hp_outs=1 (0x1b/0x0/0x0/0x0/0x0) [ 25.997520] snd_hda_codec_realtek hdaudioC0D0: mono: mono_out=0x0 [ 25.997521] snd_hda_codec_realtek hdaudioC0D0: dig-out=0x1e/0x0 [ 25.997522] snd_hda_codec_realtek hdaudioC0D0: inputs: [ 25.997524] snd_hda_codec_realtek hdaudioC0D0: Mic=0x18 [ 25.997525] snd_hda_codec_realtek hdaudioC0D0: Internal Mic=0x12 [ 26.005460] elogind-daemon[1040]: Watching system buttons on /dev/input/event2 (Lid Switch) [ 26.022595] elogind-daemon[1040]: Watching system buttons on /dev/input/event6 (Intel HID events) [ 26.022736] input: HDA Intel PCH Mic as /devices/pci0000:00/0000:00:1f.3/sound/card0/input15 [ 26.022793] input: HDA Intel PCH Headphone as /devices/pci0000:00/0000:00:1f.3/sound/card0/input16 [ 26.022830] input: HDA Intel PCH HDMI/DP,pcm=3 as /devices/pci0000:00/0000:00:1f.3/sound/card0/input17 [ 26.022863] input: HDA Intel PCH HDMI/DP,pcm=7 as /devices/pci0000:00/0000:00:1f.3/sound/card0/input18 [ 26.022896] input: HDA Intel PCH HDMI/DP,pcm=8 as /devices/pci0000:00/0000:00:1f.3/sound/card0/input19 [ 26.022927] input: HDA Intel PCH HDMI/DP,pcm=9 as /devices/pci0000:00/0000:00:1f.3/sound/card0/input20 [ 26.022957] input: HDA Intel PCH HDMI/DP,pcm=10 as /devices/pci0000:00/0000:00:1f.3/sound/card0/input21
Gesendet: Montag, 14. Februar 2022 um 08:08 Uhr Von: "Takashi Iwai" tiwai@suse.de An: dmummenschanz@web.de Cc: alsa-devel@alsa-project.org, "Pierre-Louis Bossart" pierre-louis.bossart@linux.intel.com Betreff: Re: Cannon Lake PCH cAVS (ALC892) not detected by kernel driver On Mon, 14 Feb 2022 07:49:55 +0100, dmummenschanz@web.de wrote:
Thanks for the scoop. I've added "options snd-hda-intel
probe_mask=0x105" to /
etc/modules-d/alsa.conf. Unfortunately that didn't help. The ALC892 didn't show up. Why the log below says "codec_mask forced to 0x5" but
I've
explicitly set the value to 0x105 I don't know.
The bit 0x100 means to forcibly set the codec probe mask, so this is fine. But the actual work of the forced bit doesn't seem right. Could you try the patch below and test with probe_mask=0x105 again? thanks, Takashi --- a/sound/pci/hda/hda_intel.c +++ b/sound/pci/hda/hda_intel.c @@ -1798,8 +1798,6 @@ static int azx_create(struct snd_card *card, struct pci_dev *pci, assign_position_fix(chip, check_position_fix(chip, position_fix[dev])); - check_probe_mask(chip, dev); - if (single_cmd < 0) /* allow fallback to single_cmd at errors */ chip->fallback_to_single_cmd = 1; else /* explicitly set to single_cmd or not */ @@ -2280,6 +2278,8 @@ static int azx_probe_continue(struct azx *chip) chip->beep_mode = beep_mode[dev]; #endif + check_probe_mask(chip, dev); + /* create codec instances */ if (bus->codec_mask) { err = azx_probe_codecs(chip, azx_max_codecs[chip->driver_type]);