Repository navigation
[BUG] Audio does not work on Intel alder lake platform #10982
Description
Describe the bug
When I installed NixOS on my machine I noticed that the audio didn't work, I tried switching the kernel (since I was using the cachyos kernel) yet same error, I installed all firmware and nothing, I noticed in dmesg that the driver was using the legacy HDA path which shouldn't be the case with a 12th gen Intel so I forced it to use SOF with "snd_intel_dspcfg.dsp_driver=3" which led me to the card not appearing at in /proc/asound/cards as the output suggests :
cat /proc/asound/cards
0 [NVidia ]: HDA-Intel - HDA NVidia
HDA NVidia at 0x81080000 irq 17
As opposed to the previous output with HDA
cat /proc/asound/cards
0 [PCH ]: HDA-Intel - HDA Intel PCH
HDA Intel PCH at 0x4202c20000 irq 144
1 [NVidia ]: HDA-Intel - HDA NVidia
HDA NVidia at 0x81080000 irq 17
Also the dmesg output gives the following :
╰─➤ sudo dmesg | grep -iE 'sof|dspcfg|nhlt|i915|snd'
[sudo] password for tuxman:
[ 0.000000] Command line: initrd=\EFI\nixos\2dnzac7hizdgyg38j81ir7jawagjnycj-initrd-linux-cachyos-latest-x86_64-v3-7.1.2-initrd.efi init=/nix/store/1zph74kyhzwzarizbxq8kn62wfyizklr-nixos-system-desktop-26.11.20260629.b5aa0fb/init splash boot.shell_on_fail loglevel=3 rd.systemd.show_status=false rd.udev.log_level=3 udev.log_priority=3 vt.global_cursor_default=0 quiet udev.log_level=3 systemd.show_status=auto snd_intel_dspcfg.dsp_driver=3 root=fstab splash loglevel=3 lsm=landlock,yama,bpf
[ 0.005081] ACPI: NHLT 0x00000000731EA000 00002D (v00 ALASKA A M I 01072009 AMI 01000013)
[ 0.005113] ACPI: Reserving NHLT table memory at [mem 0x731ea000-0x731ea02c]
[ 0.027895] Kernel command line: initrd=\EFI\nixos\2dnzac7hizdgyg38j81ir7jawagjnycj-initrd-linux-cachyos-latest-x86_64-v3-7.1.2-initrd.efi init=/nix/store/1zph74kyhzwzarizbxq8kn62wfyizklr-nixos-system-desktop-26.11.20260629.b5aa0fb/init splash boot.shell_on_fail loglevel=3 rd.systemd.show_status=false rd.udev.log_level=3 udev.log_priority=3 vt.global_cursor_default=0 quiet udev.log_level=3 systemd.show_status=auto snd_intel_dspcfg.dsp_driver=3 root=fstab splash loglevel=3 lsm=landlock,yama,bpf
[ 0.029842] software IO TLB: area num 32.
[ 0.332181] PCI-DMA: Using software bounce buffering for IO (SWIOTLB)
[ 0.332181] software IO TLB: mapped [mem 0x000000005899f000-0x000000005c99f000] (64MB)
[ 0.435918] integrity: Loaded X.509 cert 'Microsoft Windows Production PCA 2011: a92902398e16c49778cd90f99e4f9ae17c55af53'
[ 0.435925] integrity: Loaded X.509 cert 'Microsoft UEFI CA 2023: 81aa6b3244c935bce0d6628af39827421e32497d'
[ 0.435931] integrity: Loaded X.509 cert 'Microsoft Corporation: Windows UEFI CA 2023: aefc5fbbbe055d8f8daa585473499417ab5a5272'
[ 0.435937] integrity: Loaded X.509 cert 'Microsoft Option ROM UEFI CA 2023: 514fbf937fa46fb57bf07af8bed84b3b864b1711'
[ 0.435944] integrity: Loaded X.509 cert 'Microsoft Corporation UEFI CA 2011: 13adbf4309bd82709c8cd54f316ed522988a1bd4'
[ 4.816800] snd_hda_intel 0000:01:00.1: enabling device (0000 -> 0002)
[ 4.816969] snd_hda_intel 0000:01:00.1: Disabling MSI
[ 4.816975] snd_hda_intel 0000:01:00.1: Handle vga_switcheroo audio client
[ 4.986212] sof-audio-pci-intel-tgl 0000:00:1f.3: enabling device (0000 -> 0002)
[ 4.986330] sof-audio-pci-intel-tgl 0000:00:1f.3: the DSP is not enabled on this platform, aborting probe
I checked the BIOS to see if I accidently disabled DSP but there's no single mention of DSP in the BIOS and HD audio is already enabled, I even switched to Fedora with the same outcome
To Reproduce
An MSI PRO B760M-P DDR4 mobo with any 12th gen Intel CPU on any Linux distro
Reproduction Rate
10/10
Expected behavior
DSP should be present and audio should be working
Impact
High, I had to use HDMI audio with no mic support
Environment
- Branch name and commit hash of the 2 repositories: sof (firmware/topology) and linux (kernel driver).
- Kernel: version 7.1.2
- SOF: 1nkh020gjm45vxd6fvmz63hj16ilff2nl5avvsklajjs6xci1sf5
- Name of the platform(s) on which the bug is observed.
- Platform: Intel 12th Gen (i7-12700F)
Screenshots or console output

Activity
lgirdwood commentedon Jul 10, 2026
@tuxmanxd the Intel audio PCI HW works in 2 modes, 1) Legacy HDA mode and 2) DSP mode. This is set in the BIOS menu and on ADL it was usually hard coded by motherboard vendor to legacy HDA mode on desktops. So in this case it looks like the driver has probed the PCI device and read back the legacy HDA mode (set by BIOS) is enabled. I assume you are not seeing any legacy HDA probing messages in the logs ? If possible can you paste as text or attach the dmesg log. Thanks !
tuxmanxd commentedon Jul 10, 2026
When I let the driver in auto mode, it automatically selects HDA and when checking the kernel logs I get this
sudo dmesg | grep snd
[ 4.889108] snd_hda_intel 0000:00:1f.3: enabling device (0000 -> 0002)
[ 4.889934] snd_hda_intel 0000:01:00.1: enabling device (0000 -> 0002)
[ 4.890011] snd_hda_intel 0000:01:00.1: Disabling MSI
[ 4.890016] snd_hda_intel 0000:01:00.1: Handle vga_switcheroo audio client
[ 4.893723] snd_hda_intel 0000:00:1f.3: no codecs found!
cat /proc/asound/cards
0 [PCH ]: HDA-Intel - HDA Intel PCH
HDA Intel PCH at 0x4202c20000 irq 144
1 [NVidia ]: HDA-Intel - HDA NVidia
HDA NVidia at 0x81080000 irq 17
╭─tuxman@desktop ~
╰─➤ lsmod | grep -i sof
snd_sof_pci_intel_tgl 20480 0
snd_sof_pci_intel_cnl 24576 1 snd_sof_pci_intel_tgl
snd_sof_intel_hda_generic 45056 2 snd_sof_pci_intel_tgl,snd_sof_pci_intel_cnl
soundwire_intel 94208 1 snd_sof_intel_hda_generic
snd_sof_intel_hda_sdw_bpt 24576 1 soundwire_intel
snd_sof_intel_hda_common 221184 4 snd_sof_intel_hda_sdw_bpt,snd_sof_intel_hda_generic,snd_sof_pci_intel_tgl,snd_sof_pci_intel_cnl
snd_soc_hdac_hda 24576 1 snd_sof_intel_hda_common
snd_sof_intel_hda_mlink 40960 4 snd_sof_intel_hda_sdw_bpt,soundwire_intel,snd_sof_intel_hda_common,snd_sof_intel_hda_generic
snd_sof_intel_hda 24576 2 snd_sof_intel_hda_common,snd_sof_intel_hda_generic
snd_sof_pci 24576 3 snd_sof_intel_hda_generic,snd_sof_pci_intel_tgl,snd_sof_pci_intel_cnl
snd_sof_xtensa_dsp 16384 1 snd_sof_intel_hda_generic
snd_sof 540672 6 snd_sof_intel_hda_sdw_bpt,snd_sof_pci,snd_sof_intel_hda_common,snd_sof_intel_hda_generic,snd_sof_intel_hda,snd_sof_pci_intel_cnl
snd_sof_utils 16384 1 snd_sof
snd_soc_acpi_intel_match 147456 3 snd_sof_intel_hda_generic,snd_sof_pci_intel_tgl,snd_sof_pci_intel_cnl
snd_soc_sdw_utils 143360 1 snd_sof_intel_hda_generic
snd_soc_acpi 16384 2 snd_soc_acpi_intel_match,snd_sof_intel_hda_generic
snd_hda_ext_core 36864 7 snd_sof_intel_hda_sdw_bpt,snd_soc_avs,snd_soc_hda_codec,snd_sof_intel_hda_common,snd_soc_hdac_hda,snd_sof_intel_hda_mlink,snd_sof_intel_hda
snd_soc_core 475136 8 snd_soc_avs,snd_soc_hda_codec,soundwire_intel,snd_sof,snd_soc_sdca,snd_sof_intel_hda_common,snd_soc_sdw_utils,snd_soc_hdac_hda
snd_hda_codec 245760 7 snd_soc_avs,snd_hda_codec_hdmi,snd_soc_hda_codec,snd_hda_intel,snd_hda_codec_nvhdmi,snd_soc_hdac_hda,snd_sof_intel_hda
snd_hda_core 163840 9 snd_soc_avs,snd_hda_codec_hdmi,snd_soc_hda_codec,snd_hda_intel,snd_hda_ext_core,snd_hda_codec,snd_sof_intel_hda_common,snd_soc_hdac_hda,snd_sof_intel_hda
snd_intel_dspcfg 49152 5 snd_soc_avs,snd_hda_intel,snd_sof,snd_sof_intel_hda_common,snd_sof_intel_hda_generic
snd_intel_sdw_acpi 16384 2 snd_intel_dspcfg,snd_sof_intel_hda_generic
snd_pcm 253952 15 snd_soc_avs,snd_hda_codec_hdmi,snd_hda_intel,snd_hda_codec,soundwire_intel,snd_sof,snd_soc_sdca,snd_sof_intel_hda_common,snd_compress,snd_sof_intel_hda_generic,snd_soc_core,snd_sof_utils,snd_hda_core,snd_pcm_dmaengine
snd 176128 20 snd_seq,snd_seq_device,snd_hda_codec_hdmi,snd_hwdep,snd_hda_intel,snd_hda_codec,snd_sof,snd_soc_sdca,snd_timer,snd_compress,snd_soc_sdw_utils,snd_soc_core,snd_pcm
╭─tuxman@desktop ~
╰─➤ cat /sys/module/snd_intel_dspcfg/parameters/dsp_driver
0
lgirdwood commentedon Jul 10, 2026
Ok, this actually looks fine:
It shows you have 2 sounds cards, card 0 is HDA analog, card 1 is display audio. If you are not hearing any audio from card 0 then pls check the alsamixer settings as some kcontrols may be muted.
tuxmanxd commentedon Jul 10, 2026
tuxmanxd commentedon Jul 10, 2026
I think this is the result of the no codecs found error in dmesg
kv2019i commentedon Jul 14, 2026
@tuxmanxd It's ok the DSP is not used. Audio should work without DSP as well. I think the real problem is this:
[ 4.893723] snd_hda_intel 0000:00:1f.3: no codecs found
... the HDA codec on the motherboard is not found. Based on public spec, it should have a Realtek ALC897 codec onboard, but above message tells the codec is responding at all. Either the Realtetk codec is disabled in BIOS, or there is a hardware issue and it's not powering up. You could try some Fedora or Ubuntu live image (or boot Windows) to sanity check this, but I think this is a BIOS/hw issue.
tuxmanxd commentedon Jul 14, 2026
Yeah, it seems like it, tho what should I do? Should I contact MSI and how do I contact them?
tuxmanxd commentedon Aug 21, 2026
Audio used to work fine with Windows but doesn't work at all on Linux no matter the distro
lgirdwood commentedon Aug 25, 2026
adding @shumingfan as ALC897 may need verbs.
shumingfan commentedon Aug 25, 2026
Adding HDA driver owner @KailangYang.
Could you take a look at this issue?