Only 2 out of 4 speakers are functional on a laptop - Dell Inspiron 16 Plus 7620

Hello! 3 weeks ago I got Dell Inspiron 16 Plus 7620 and I am experiencing some teething issues connected with new hardware. The two top firing speakers do not work in Linux - only in Windows. Could I ask for help with solving this issues?

Thank you!

$ sudo dmesg | grep -i audio
Place your right index finger on the fingerprint reader
[    0.154074] ACPI: Added _OSI(Linux-Lenovo-NV-HDMI-Audio)
[    6.176995] snd_hda_intel 0000:01:00.1: Handle vga_switcheroo audio client
[    6.193969] snd_hda_intel 0000:01:00.1: bound 0000:01:00.0 (ops nv50_audio_component_bind_ops [nouveau])
[    6.364467] sof-audio-pci-intel-tgl 0000:00:1f.3: DSP detected with PCI class/subclass/prog-if info 0x040100
[    6.364480] sof-audio-pci-intel-tgl 0000:00:1f.3: Digital mics found on Skylake+ platform, using SOF driver
[    6.364493] sof-audio-pci-intel-tgl 0000:00:1f.3: enabling device (0000 -> 0002)
[    6.364619] sof-audio-pci-intel-tgl 0000:00:1f.3: DSP detected with PCI class/subclass/prog-if 0x040100
[    6.364695] sof-audio-pci-intel-tgl 0000:00:1f.3: bound 0000:00:02.0 (ops i915_audio_component_bind_ops [i915])
[    6.371644] sof-audio-pci-intel-tgl 0000:00:1f.3: use msi interrupt mode
[    6.416937] sof-audio-pci-intel-tgl 0000:00:1f.3: hda codecs found, mask 5
[    6.416939] sof-audio-pci-intel-tgl 0000:00:1f.3: using HDA machine driver skl_hda_dsp_generic now
[    6.416942] sof-audio-pci-intel-tgl 0000:00:1f.3: DMICs detected in NHLT tables: 2
[    6.429531] sof-audio-pci-intel-tgl 0000:00:1f.3: Firmware info: version 2:1:1-3964a
[    6.429533] sof-audio-pci-intel-tgl 0000:00:1f.3: Firmware: ABI 3:21:0 Kernel ABI 3:19:1
[    6.429534] sof-audio-pci-intel-tgl 0000:00:1f.3: warn: FW ABI is more recent than kernel
[    6.429537] sof-audio-pci-intel-tgl 0000:00:1f.3: unknown sof_ext_man header type 3 size 0x30
[    6.524582] sof-audio-pci-intel-tgl 0000:00:1f.3: Firmware info: version 2:1:1-3964a
[    6.524590] sof-audio-pci-intel-tgl 0000:00:1f.3: Firmware: ABI 3:21:0 Kernel ABI 3:19:1
[    6.524594] sof-audio-pci-intel-tgl 0000:00:1f.3: warn: FW ABI is more recent than kernel
[    8.207904] sof-audio-pci-intel-tgl 0000:00:1f.3: Topology: ABI 3:21:0 Kernel ABI 3:19:1
[    8.207909] sof-audio-pci-intel-tgl 0000:00:1f.3: warn: topology ABI is more recent than kernel
[    8.224852] snd_hda_codec_realtek ehdaudio0D0: autoconfig for ALC3254: line_outs=1 (0x14/0x0/0x0/0x0/0x0) type:speaker
[    8.224856] snd_hda_codec_realtek ehdaudio0D0:    speaker_outs=0 (0x0/0x0/0x0/0x0/0x0)
[    8.224858] snd_hda_codec_realtek ehdaudio0D0:    hp_outs=1 (0x21/0x0/0x0/0x0/0x0)
[    8.224860] snd_hda_codec_realtek ehdaudio0D0:    mono: mono_out=0x0
[    8.224861] snd_hda_codec_realtek ehdaudio0D0:    inputs:
[    8.224862] snd_hda_codec_realtek ehdaudio0D0:      Headset Mic=0x19
[    8.224863] snd_hda_codec_realtek ehdaudio0D0:      Headphone Mic=0x1b
[    8.898847] snd_hda_codec_realtek ehdaudio0D0: ASoC: sink widget AIF1TX overwritten
[    8.898853] snd_hda_codec_realtek ehdaudio0D0: ASoC: source widget AIF1RX overwritten

$ aplay -L
null
    Discard all samples (playback) or generate zero samples (capture)
pipewire
    PipeWire Sound Server
default
    Default ALSA Output (currently PipeWire Media Server)
hdmi:CARD=NVidia,DEV=0
    HDA NVidia, HDMI 0
    HDMI Audio Output
hdmi:CARD=NVidia,DEV=1
    HDA NVidia, HDMI 1
    HDMI Audio Output
hdmi:CARD=NVidia,DEV=2
    HDA NVidia, HDMI 2
    HDMI Audio Output
hdmi:CARD=NVidia,DEV=3
    HDA NVidia, HDMI 3
    HDMI Audio Output
hdmi:CARD=NVidia,DEV=4
    HDA NVidia, HDMI 4
    HDMI Audio Output
hdmi:CARD=NVidia,DEV=5
    HDA NVidia, HDMI 5
    HDMI Audio Output
sysdefault:CARD=sofhdadsp
    sof-hda-dsp, 
    Default Audio Device


$ aplay -l
**** List of PLAYBACK Hardware Devices ****
card 0: NVidia [HDA NVidia], device 3: HDMI 0 [HDMI 0]
  Subdevices: 1/1
  Subdevice #0: subdevice #0
card 0: NVidia [HDA NVidia], device 7: HDMI 1 [HDMI 1]
  Subdevices: 1/1
  Subdevice #0: subdevice #0
card 0: NVidia [HDA NVidia], device 8: HDMI 2 [HDMI 2]
  Subdevices: 1/1
  Subdevice #0: subdevice #0
card 0: NVidia [HDA NVidia], device 9: HDMI 3 [HDMI 3]
  Subdevices: 1/1
  Subdevice #0: subdevice #0
card 0: NVidia [HDA NVidia], device 10: HDMI 4 [HDMI 4]
  Subdevices: 1/1
  Subdevice #0: subdevice #0
card 0: NVidia [HDA NVidia], device 11: HDMI 5 [HDMI 5]
  Subdevices: 1/1
  Subdevice #0: subdevice #0
card 1: sofhdadsp [sof-hda-dsp], device 0: HDA Analog (*) []
  Subdevices: 1/1
  Subdevice #0: subdevice #0
card 1: sofhdadsp [sof-hda-dsp], device 1: HDA Digital (*) []
  Subdevices: 1/1
  Subdevice #0: subdevice #0
card 1: sofhdadsp [sof-hda-dsp], device 3: HDMI1 (*) []
  Subdevices: 1/1
  Subdevice #0: subdevice #0
card 1: sofhdadsp [sof-hda-dsp], device 4: HDMI2 (*) []
  Subdevices: 1/1
  Subdevice #0: subdevice #0
card 1: sofhdadsp [sof-hda-dsp], device 5: HDMI3 (*) []
  Subdevices: 1/1
  Subdevice #0: subdevice #0


$ cat /proc/asound/cards 0
 0 [NVidia         ]: HDA-Intel - HDA NVidia
                      HDA NVidia at 0x91000000 irq 17
 1 [sofhdadsp      ]: sof-hda-dsp - sof-hda-dsp
                      DellInc.-Inspiron16Plus7620--0V98G2

$ uname -r 
5.18.16-200.fc36.x86_64
1 Like

Do you hear them when you run speaker-test?

Thanks for a suggestion! Unfortunately no :confused:

1 Like

Just adding alsa-info:
http://alsa-project.org/db/?f=ab7af01dfa223d62dc6ec0b398c87f163fa5b50c

Hello! How are those speakers configured in windows: 4.0, 2.1, 2.0?
Use pavucontrol and try different profiles on config tab.
Sometimes all it takes is unmuting some output in alsamixer.

In Windows they are configured as 2.0, only left and right.

Unfortunately pavucontrol does not list any other relevant outputs, so it seems like it is simply the driver which is incorrectly configured…

There’s also hdajackretask from alsa-tools package, but changing settings randomly won’t do any good.

Actually hdajackretask (and switching to snd_hda_intel) allowed me to find that pin number 0x17 is the correct pin for the top firing spakers and it makes it run. However, only at max volume. According to Alsa info the DAC does not have volume control.

At the same time the microphone does not work with the snd_hda_intel driver so I guess that I will somehow have to export the settings for the microphone from the sof-hda-dsp driver…

A kernel patch fixing this issue has been created, and it is under testing. It has confirmed to build with kernels 5.19.2 and 6.0. It will be committed soon as testing is finished. We expect that the patch will be merged in kernel 6.1. Until release, the Patch which is accessible at this link can be applied during a custom built of a kernel. Even with the patch, the top speakers start playing sound with a ~0,5 second delay after the bottom speakers.

1 Like

~0,5 second delay is way more than some stereo to quadro effect would do. Maybe you’ll get some help from someone from Dell’s Project Sputnik (https://bartongeorge.io/) or linux enablement team.