Cannon Lake PCH cAVS (ALC892) not detected by kernel driver

Takashi Iwai tiwai at suse.de
Mon Feb 14 08:08:52 CET 2022


On Mon, 14 Feb 2022 07:49:55 +0100,
dmummenschanz at 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]);


More information about the Alsa-devel mailing list