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

dmummenschanz at web.de dmummenschanz at web.de
Sat Feb 12 12:33:33 CET 2022


   I did some more digging into the code to find out what goes boink.
   For comparison I took my wife's desktop wich has a  Cannon Lake chipset
   as well along with a working a ALC892 AVS device.

   It seems there is a codec mask issue selected in the chip->bus struct.
   Inside the function

   static int azx_probe_continue(struct azx *chip)

   of hda_intel.c the bus->codec_mask on my wife's pc contains the integer
   value "5" and both ALC892 and the HDMI is found. On my device it is "4"
   and only the HDMI is found.

   /* create codec instances */
   if (bus->codec_mask) {
     err = azx_probe_codecs(chip, azx_max_codecs[chip->driver_type]);
     if (err < 0)
       goto out_free;
   }

   After forcing the falue before probing: "bus->codec_mask = 5;" the
   ALC892 is finally detected on my system and I have sound! alsa-info
   below: Please pardon the trash printk's in the log ;-)

   http://alsa-project.org/db/?f=057aac1a0e9591de3847dca5ebc424dd65c8a221

   I'll do some more digging into it next week but it would probably
   save tons of time if someone could point me is the right direction
   where to look further?



   Gesendet: Mittwoch, 09. Februar 2022 um 17:47 Uhr
   Von: dmummenschanz at web.de
   An: "Pierre-Louis Bossart" <pierre-louis.bossart at linux.intel.com>,
   alsa-devel at alsa-project.org
   Betreff: Aw: Re: Re: Cannon Lake PCH cAVS (ALC892) not detected by
   kernel driver
   snd_intel_dspcfg: dsp_driver=1
   was a leftover from testing. I' ve removed all parameters, add added
   the debug options you've asked.
   [1]http://alsa-project.org/db/?f=6e30e9f598bd2f03b2f5cff0df261f78719ea2
   9d
   Some googling reveals that others suffer from the same problen on the
   same laptop as well. Some report that the device appears after pci-bus
   rescanning however that did not work in my case so I agree there might
   be an issue with probing the relatek device. Unfortunately I'm not a
   kernel dev so I don't even know where to start looking however I'm
   happy to investigate with your help.
   Gesendet: Mittwoch, 09. Februar 2022 um 16:51 Uhr
   Von: "Pierre-Louis Bossart" <pierre-louis.bossart at linux.intel.com>
   An: dmummenschanz at web.de, alsa-devel at alsa-project.org
   Betreff: Re: Aw: Re: Cannon Lake PCH cAVS (ALC892) not detected by
   kernel driver
   On 2/9/22 01:14, dmummenschanz at web.de wrote:
   > The information about the codec is based on the string windows
   > provides:
   >
   >
   HDAUDIO\FUNC_01&VEN_10EC&DEV_0892&SUBSYS_15580351&REV_1003\4&16AF2B56&&
   > 0001
   >
   > Here is the alsa-info output for the 5.16 mainline kernel:
   >
   >
   [1][2]http://alsa-project.org/db/?f=38c48cd24dc4ba9a9487dd96f857120cc9c
   e43
   67
   The use of this option is not clear:
   snd_intel_dspcfg: dsp_driver=1
   This means you are trying to force the use of the legacy driver. is
   this
   intentional? Can you remove it and see what happens?
   The results show you don't have a driver bound to the PCI device, so
   likely something goes boink in the probe.
   It wouldn't hurt to enable dynamic debug as well.
   options snd_hda_intel dyndbg=+p
   options snd_intel_dspcfg dyndbg=+p
   References
   1.
   [3]http://alsa-project.org/db/?f=38c48cd24dc4ba9a9487dd96f857120cc9ce43
   67

References

   1. http://alsa-project.org/db/?f=6e30e9f598bd2f03b2f5cff0df261f78719ea29d
   2. http://alsa-project.org/db/?f=38c48cd24dc4ba9a9487dd96f857120cc9ce43
   3. http://alsa-project.org/db/?f=38c48cd24dc4ba9a9487dd96f857120cc9ce4367


More information about the Alsa-devel mailing list