Skip to content

[BUG] Dell XPS Plus 13 9320 - No sound card detected #4751

Closed

Description

@yesi

Describe the bug
No sound card detected on a laptop - Dell XPS Plus 13 9320

System : Linux-6.6.7-gentoo-x86_64-12th_Gen_Intel-R-_Core-TM-_i7-1260P-with-glibc2.37

Packages :
sys-firmware/sof-firmware-2023.09.2::gentoo
sys-kernel/linux-firmware-20231030::gentoo

Since i use the module snd_sof_pci_intel_tgl on my laptop, the sound card is not detected anymore.
No PCH card from the command : cat /proc/asound/cards

Notice : using the snd_hda_intel module allow the sound card to be detected but no sound from the speakers. It is why i switched to snd_sof_pci_intel_tgl module.

To Reproduce
On a installing Gentoo
Even unloading and loading modules after boot :
modprobe -r snd_sof_pci_intel_tgl
modprobe snd_sof_pci_intel_tgl

Reproduction Rate
All the time

Expected behavior
The sound card PCH should be detected.

Impact
annoyance, showstopper
It is necessary for meeting.

Environment

  1. Branch name and commit hash of the 2 repositories: sof (firmware/topology) and linux (kernel driver).
    • Kernel: 6.6.7-gentoo
    • SOF: sys-firmware/sof-firmware-2023.09.2::gentoo
  2. Name of the topology file
    • Topology: {FILE}
  3. Name of the platform(s) on which the bug is observed.
    • Platform: Dell 9320

Screenshots or console output
cat /etc/conf.d/modules
```
modules="vhost_net sch_netem snd_hda_codec_realtek pinctrl_alderlake"
```

dmesg |egrep -i 'snd|sof'
```
[ 0.534228] software IO TLB: area num 16.
[ 66.040290] pps_core: Software ver. 5.3.6 - Copyright 2005-2007 Rodolfo Giometti giometti@linux.it
[ 66.438936] PCI-DMA: Using software bounce buffering for IO (SWIOTLB)
[ 66.438938] software IO TLB: mapped [mem 0x000000004e7a9000-0x00000000527a9000] (64MB)
[ 68.754344] usbserial: USB Serial support registered for funsoft
[ 3795.756695] snd_sof_pci_intel_tgl: unknown parameter 'index' ignored
[ 3795.757068] sof-audio-pci-intel-tgl 0000:00:1f.3: enabling device (0000 -> 0002)
[ 3795.759802] sof-audio-pci-intel-tgl 0000:00:1f.3: DSP detected with PCI class/subclass/prog-if 0x040100
[ 3795.760179] sof-audio-pci-intel-tgl 0000:00:1f.3: bound 0000:00:02.0 (ops i915_audio_component_bind_ops)
[ 3795.769586] sof-audio-pci-intel-tgl 0000:00:1f.3: use msi interrupt mode
[ 3795.794031] sof-audio-pci-intel-tgl 0000:00:1f.3: hda codecs found, mask 4
[ 3795.794038] sof-audio-pci-intel-tgl 0000:00:1f.3: using HDA machine driver skl_hda_dsp_generic now
[ 3795.794053] sof-audio-pci-intel-tgl 0000:00:1f.3: DMICs detected in NHLT tables: 0
[ 3795.794138] Loading firmware: intel/sof/sof-adl.ri
[ 3795.797115] sof-audio-pci-intel-tgl 0000:00:1f.3: Firmware info: version 2:2:0-57864
[ 3795.797119] sof-audio-pci-intel-tgl 0000:00:1f.3: Firmware: ABI 3:22:1 Kernel ABI 3:23:0
[ 3795.797145] sof-audio-pci-intel-tgl 0000:00:1f.3: unknown sof_ext_man header type 3 size 0x30
[ 3795.913685] sof-audio-pci-intel-tgl 0000:00:1f.3: Firmware info: version 2:2:0-57864
[ 3795.913693] sof-audio-pci-intel-tgl 0000:00:1f.3: Firmware: ABI 3:22:1 Kernel ABI 3:23:0
[ 3796.257001] usbcore: registered new interface driver snd-usb-audio
[ 4010.615880] snd_sof_pci_intel_tgl: unknown parameter 'index' ignored
[ 4010.629611] sof-audio-pci-intel-tgl 0000:00:1f.3: DSP detected with PCI class/subclass/prog-if 0x040100
[ 4010.629991] sof-audio-pci-intel-tgl 0000:00:1f.3: bound 0000:00:02.0 (ops i915_audio_component_bind_ops)
[ 4010.636255] sof-audio-pci-intel-tgl 0000:00:1f.3: use msi interrupt mode
[ 4010.651347] sof-audio-pci-intel-tgl 0000:00:1f.3: hda codecs found, mask 4
[ 4010.651351] sof-audio-pci-intel-tgl 0000:00:1f.3: using HDA machine driver skl_hda_dsp_generic now
[ 4010.651362] sof-audio-pci-intel-tgl 0000:00:1f.3: DMICs detected in NHLT tables: 0
[ 4010.651430] Loading firmware: intel/sof/sof-adl.ri
[ 4010.652049] sof-audio-pci-intel-tgl 0000:00:1f.3: Firmware info: version 2:2:0-57864
[ 4010.652052] sof-audio-pci-intel-tgl 0000:00:1f.3: Firmware: ABI 3:22:1 Kernel ABI 3:23:0
[ 4010.652072] sof-audio-pci-intel-tgl 0000:00:1f.3: unknown sof_ext_man header type 3 size 0x30
[ 4010.769868] sof-audio-pci-intel-tgl 0000:00:1f.3: Firmware info: version 2:2:0-57864
[ 4010.769874] sof-audio-pci-intel-tgl 0000:00:1f.3: Firmware: ABI 3:22:1 Kernel ABI 3:23:0
[ 9889.435492] usb 3-3: Unable to submit urb #0: -19 at snd_usb_queue_pending_output_urbs
[ 9903.605694] usb 3-1.3.4: Unable to submit urb thesofproject/sof#2: -19 at snd_usb_queue_pending_output_urbs
```

alsa-info.txt

Activity

  1. added
    bugSomething isn't working
    on Dec 18, 2023
  2. plbossart commented on Dec 18, 2023

    @plbossart
    Member

    can you check that your kernel configuration includes CONFIG_SND_SOC_INTEL_SKL_HDA_DSP_GENERIC_MACH=m

  3. plbossart commented on Dec 18, 2023

    @plbossart
    Member

    at any rate, there's no magic to be expected. The first order of business with speaker problems is to disable SOF

    https://thesofproject.github.io/latest/getting_started/intel_debug/suggestions.html#disable-sof-on-pci-hdaudio-devices-to-test-audio-playback

  4. plbossart commented on Jan 3, 2024

    @plbossart
    Member

    I also don't get why the SOF driver is used since your have no DMICs. the SOF driver is only required of TGL/ADL IF you have SoundWire or DMICs.

    [ 4010.651362] sof-audio-pci-intel-tgl 0000:00:1f.3: DMICs detected in NHLT tables: 0
    

    I guess you must have selected the SOF driver manually with a kernel parameter?

  5. ujfalusi commented on Jan 8, 2024

    @ujfalusi
    Collaborator

    @yesi, if the speaker is silent with the legacy HDA stack then it is likely not going to work with SOF stack either.
    If you force to use SOF then in your machine it should be looking for the sof-hda-generic.tplg file (you don't have DMIC).
    The card should be created...

    equery files sof-firmware | grep sof-hda-generic
    

    You can try to enable dynamic debugging and provide full dmesg: https://thesofproject.github.io/latest/getting_started/intel_debug/suggestions.html#enable-dynamic-debug
    to see why the card fails to bind.
    Is this a first install on the laptop? Are you using sys-kernel/gentoo-kernel-bin or normal, custom compiled one? Without forcing SOF, what is detected?

  6. ujfalusi commented on Jan 8, 2024

    @ujfalusi
    Collaborator

    Hrm, does this laptop have SoundWire for Speaker and Headset?
    The Raptor Lake variant have at least: https://wiki.debian.org/InstallingDebianOn/Dell/XPS%2013%209320%20%282023%29%20%28bookworm%29
    It is certified for Ubuntu as well: https://ubuntu.com/certified/202112-29761

  7. ujfalusi commented on Jan 9, 2024

    @ujfalusi
    Collaborator

    Yes, definitely SDW device:

    [ 3795.794031] sof-audio-pci-intel-tgl 0000:00:1f.3: hda codecs found, mask 4
    

    The SKU should be supported since v5.16:
    8f4fa45 ("ASoC: Intel: sof_sdw: Add support for SKU 0AF3 product")

  8. ujfalusi commented on Jan 9, 2024

    @ujfalusi
    Collaborator

    The Gentoo-bin kernel works on my test TGL device out of box:

    # uname -a
    Linux sof-latitude9520 6.6.7-gentoo-dist #1 SMP PREEMPT_DYNAMIC Wed Dec 13 21:00:23 -00 2023 x86_64 GNU/Linux
    
    [    2.909565] snd_hda_intel 0000:00:1f.3: DSP detected with PCI class/subclass/prog-if info 0x040380
    [    2.910000] snd_hda_intel 0000:00:1f.3: SoundWire enabled on CannonLake+ platform, using SOF driver
    [    3.102022] sof-audio-pci-intel-tgl 0000:00:1f.3: DSP detected with PCI class/subclass/prog-if info 0x040380
    [    3.102088] sof-audio-pci-intel-tgl 0000:00:1f.3: SoundWire enabled on CannonLake+ platform, using SOF driver
    [    3.102094] sof-audio-pci-intel-tgl 0000:00:1f.3: enabling device (0000 -> 0002)
    [    3.102343] sof-audio-pci-intel-tgl 0000:00:1f.3: DSP detected with PCI class/subclass/prog-if 0x040380
    [    4.376617] sof-audio-pci-intel-tgl 0000:00:1f.3: bound 0000:00:02.0 (ops i915_fence_ops [i915])
    [    4.452864] sof-audio-pci-intel-tgl 0000:00:1f.3: use msi interrupt mode
    [    4.469430] sof-audio-pci-intel-tgl 0000:00:1f.3: hda codecs found, mask 4
    [    4.469442] Loading firmware: intel/sof/sof-tgl.ri
    [    4.477323] sof-audio-pci-intel-tgl 0000:00:1f.3: Firmware info: version 2:2:0-57864
    [    4.477328] sof-audio-pci-intel-tgl 0000:00:1f.3: Firmware: ABI 3:22:1 Kernel ABI 3:23:0
    [    4.477333] sof-audio-pci-intel-tgl 0000:00:1f.3: unknown sof_ext_man header type 3 size 0x30
    [    4.586754] sof-audio-pci-intel-tgl 0000:00:1f.3: Firmware info: version 2:2:0-57864
    [    4.586757] sof-audio-pci-intel-tgl 0000:00:1f.3: Firmware: ABI 3:22:1 Kernel ABI 3:23:0
    [    4.599927] Loading firmware: intel/sof-tplg/sof-tgl-rt715-rt711-rt1308-mono.tplg
    [    4.601258] sof-audio-pci-intel-tgl 0000:00:1f.3: Topology: ABI 3:22:1 Kernel ABI 3:23:0
    [    4.601455] sof_sdw sof_sdw: ASoC: Parent card not yet available, widget card binding deferred
    [    5.735776] sof_sdw sof_sdw: hda_dsp_hdmi_build_controls: no PCM in topology for HDMI converter 3
    [    5.772710] input: sof-soundwire Headset Jack as /devices/pci0000:00/0000:00:1f.3/sof_sdw/sound/card0/input17
    [    5.772768] input: sof-soundwire HDMI/DP,pcm=5 as /devices/pci0000:00/0000:00:1f.3/sof_sdw/sound/card0/input18
    [    5.772810] input: sof-soundwire HDMI/DP,pcm=6 as /devices/pci0000:00/0000:00:1f.3/sof_sdw/sound/card0/input19
    [    5.772847] input: sof-soundwire HDMI/DP,pcm=7 as /devices/pci0000:00/0000:00:1f.3/sof_sdw/sound/card0/input20
    
    # aplay -l
    **** List of PLAYBACK Hardware Devices ****
    card 0: sofsoundwire [sof-soundwire], device 0: Jack Out (*) []
      Subdevices: 1/1
      Subdevice #0: subdevice #0
    card 0: sofsoundwire [sof-soundwire], device 2: Speaker (*) []
      Subdevices: 1/1
      Subdevice #0: subdevice #0
    card 0: sofsoundwire [sof-soundwire], device 5: HDMI 1 (*) []
      Subdevices: 1/1
      Subdevice #0: subdevice #0
    card 0: sofsoundwire [sof-soundwire], device 6: HDMI 2 (*) []
      Subdevices: 1/1
      Subdevice #0: subdevice #0
    card 0: sofsoundwire [sof-soundwire], device 7: HDMI 3 (*) []
      Subdevices: 1/1
      Subdevice #0: subdevice #0
    card 0: sofsoundwire [sof-soundwire], device 31: Jack Out DeepBuffer (*) []
      Subdevices: 1/1
      Subdevice #0: subdevice #0
    
  9. added
    SDWApplies to SoundWire bus for codec connection
    ADLApplies to Alder Lake platform
    on Jan 17, 2024
  10. plbossart commented on Feb 2, 2024

    @plbossart
    Member

    @yesi this is trending to be closed - no input provided since December 18 and counter-example that this device is supported by SOF.

  11. yesi commented on Feb 7, 2024

    @yesi
    Author

    Hi,
    Sorry for the late answer.

    I finally get it work with the SOF driver , but neither with HDA, after enabling different modules to build them manually.
    The SOF debug mode helped me a lot to find the lack modules and its dependencies.

    The choice to use SOF is to see whether it can work when it failed with HDA.
    I think it should work with HDA module (i read in different forums) but i can not get the dependencies to do it work.

    So right now, i stay with the SOF module. :-)

    We can close this topic.

    Thanks a lot for your time.

  12. ujfalusi commented on Feb 7, 2024

    @ujfalusi
    Collaborator

    @yesi, a Soundwire device will not work with HDA driver.

  13. yesi commented on Feb 13, 2024

    @yesi
    Author

    It seems that laptop work with the HDA driver : returns from various forums, threads.
    Previously, i did not have Soundwire module enabled when i played with HDA driver.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    ADLApplies to Alder Lake platformSDWApplies to SoundWire bus for codec connectionbugSomething isn't working

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions