Skip to content

[BUG] Audio driver fails to load on Dell XPS 16 2024 (9640) with a Cirrus Logic CS42L43 #4879

Closed

Description

@moritz89

Describe the bug
The audio driver fails to load with an error that the firmware/topology (intel/sof-ipc4/mtl/sof-mtl.ri and intel/sof-ace-tplg/sof-mtl-rt711.tplg) files were not found.

Attempts to fix where to extract the zst file sof-mtl.ri of the same name and the similarly named sof-mtl-rt711-4ch.tplg.zst, the driver loaded but resulted in the error below.

To Reproduce

  • Boot Ubuntu 24.04 (20240319) on a Dell XPS 16 2024 (9640)
  • dmesg to show error

Reproduction Rate
100% on boot

Expected behavior
The sound card is detected

Impact
No audio via built-in speakers

Environment

  1. Branch name and commit hash of the 2 repositories: sof (firmware/topology) and linux (kernel driver).
    • Kernel: Linux 6.8.0-11-generic x86_64 / Ubuntu 6.8.0-11.11-generic 6.8.0-rc4
    • SOF: TBD
  2. Name of the topology file
    • Topology: sof-mtl-rt711.tplg
  3. Name of the platform(s) on which the bug is observed.
    • Platform: Dell XPS 16 2024 (9640)

Screenshots or console output

# dmesg
sof-audio-pci-intel-mtl 0000:00:1f.3: use msi interrupt mode
sof-audio-pci-intel-mtl 0000:00:1f.3: DMICs detected in NHLT tables: 0
sof-audio-pci-intel-mtl 0000:00:1f.3: hda codecs found, mask 4
sof-audio-pci-intel-mtl 0000:00:1f.3: SOF firmware and/or topology file not found.
sof-audio-pci-intel-mtl 0000:00:1f.3: Supported default profiles
sof-audio-pci-intel-mtl 0000:00:1f.3: - ipc type 1 (Requested):
sof-audio-pci-intel-mtl 0000:00:1f.3: Firmware file: intel/sof-ipc4/mtl/sof-mtl.ri
sof-audio-pci-intel-mtl 0000:00:1f.3: Topology file: intel/sof-ace-tplg/sof-mtl-rt711.tplg
sof-audio-pci-intel-mtl 0000:00:1f.3: Check if you have 'sof-firmware' package installed.
sof-audio-pci-intel-mtl 0000:00:1f.3: Optionally it can be manually downloaded from:
sof-audio-pci-intel-mtl 0000:00:1f.3: https://github.com/thesofproject/sof-bin/
sof-audio-pci-intel-mtl 0000:00:1f.3: error: sof_probe_work failed err: -2

After extracting the intel/sof-ipc4/mtl/sof-mtl.ri.zst and intel/sof-ace-tplg/sof-mtl-rt711-4ch.tplg.zst and placing them in the same folder, the following dmesg output is created:

# dmesg
snd_hda_intel 0000:00:1f.3: DSP detected with PCI class/subclass/prog-if info 0x040380
snd_hda_intel 0000:00:1f.3: SoundWire enabled on CannonLake+ platform, using SOF driver
sof-audio-pci-intel-mtl 0000:00:1f.3: DSP detected with PCI class/subclass/prog-if info 0x040380
sof-audio-pci-intel-mtl 0000:00:1f.3: SoundWire enabled on CannonLake+ platform, using SOF driver
sof-audio-pci-intel-mtl 0000:00:1f.3: DSP detected with PCI class/subclass/prog-if 0x040380
sof-audio-pci-intel-mtl 0000:00:1f.3: bound 0000:00:02.0 (ops i915_audio_component_bind_ops [i915])
sof-audio-pci-intel-mtl 0000:00:1f.3: use msi interrupt mode
sof-audio-pci-intel-mtl 0000:00:1f.3: DMICs detected in NHLT tables: 0
sof-audio-pci-intel-mtl 0000:00:1f.3: hda codecs found, mask 4
sof-audio-pci-intel-mtl 0000:00:1f.3: Firmware paths/files for ipc type 1:
sof-audio-pci-intel-mtl 0000:00:1f.3: Firmware file: intel/sof-ipc4/mtl/sof-mtl.ri
sof-audio-pci-intel-mtl 0000:00:1f.3: Firmware lib path: intel/sof-ipc4-lib/mtl
sof-audio-pci-intel-mtl 0000:00:1f.3: Topology file: intel/sof-ace-tplg/sof-mtl-rt711.tplg
sof-audio-pci-intel-mtl 0000:00:1f.3: Loaded firmware library: ADSPFW, version: 2.8.1.1
cs42l43 sdw:0:0:01fa:4243:01: supply vdd-p not found, using dummy regulator
cs42l43 sdw:0:0:01fa:4243:01: supply vdd-d not found, using dummy regulator
cs42l43 sdw:0:0:01fa:4243:01: supply vdd-a not found, using dummy regulator
cs42l43 sdw:0:0:01fa:4243:01: supply vdd-io not found, using dummy regulator
cs42l43 sdw:0:0:01fa:4243:01: supply vdd-cp not found, using dummy regulator
cs35l56 sdw:0:2:01fa:3556:01:2: supply VDD_P not found, using dummy regulator
cs35l56 sdw:0:2:01fa:3556:01:2: supply VDD_IO not found, using dummy regulator
cs35l56 sdw:0:2:01fa:3556:01:2: supply VDD_A not found, using dummy regulator
cs35l56 sdw:0:2:01fa:3556:01:3: supply VDD_P not found, using dummy regulator
cs35l56 sdw:0:2:01fa:3556:01:3: supply VDD_IO not found, using dummy regulator
cs35l56 sdw:0:2:01fa:3556:01:3: supply VDD_A not found, using dummy regulator
cs35l56 sdw:0:3:01fa:3556:01:0: supply VDD_P not found, using dummy regulator
cs35l56 sdw:0:3:01fa:3556:01:0: supply VDD_IO not found, using dummy regulator
cs35l56 sdw:0:3:01fa:3556:01:0: supply VDD_A not found, using dummy regulator
cs35l56 sdw:0:3:01fa:3556:01:1: supply VDD_P not found, using dummy regulator
cs35l56 sdw:0:3:01fa:3556:01:1: supply VDD_IO not found, using dummy regulator
cs35l56 sdw:0:3:01fa:3556:01:1: supply VDD_A not found, using dummy regulator
sof-audio-pci-intel-mtl 0000:00:1f.3: Booted firmware version: 2.8.1.1
cs42l43 sdw:0:0:01fa:4243:01: devid: 0x042a43, rev: 0xa1, otp: 0x03
cs35l56 sdw:0:2:01fa:3556:01:3: Cirrus Logic CS35L56 Rev B0 OTP3 fw:3.4.4 (patched=0)
cs35l56 sdw:0:3:01fa:3556:01:1: Cirrus Logic CS35L56 Rev B0 OTP3 fw:3.4.4 (patched=0)
cs35l56 sdw:0:2:01fa:3556:01:2: Cirrus Logic CS35L56 Rev B0 OTP3 fw:3.4.4 (patched=0)
cs35l56 sdw:0:3:01fa:3556:01:0: Cirrus Logic CS35L56 Rev B0 OTP3 fw:3.4.4 (patched=0)
cs42l43 sdw:0:0:01fa:4243:01: Slave 6 state check1: UNATTACHED, status was 1
cs35l56 sdw:0:2:01fa:3556:01:3: Slave 1 state check1: UNATTACHED, status was 1
cs35l56 sdw:0:2:01fa:3556:01:2: Slave 2 state check1: UNATTACHED, status was 1
cs35l56 sdw:0:3:01fa:3556:01:1: Slave 1 state check1: UNATTACHED, status was 1
cs35l56 sdw:0:3:01fa:3556:01:0: Slave 2 state check1: UNATTACHED, status was 1
Adding alias for supply vdd-amp,(null) -> vdd-amp,sdw:0:0:01fa:4243:01
sof-audio-pci-intel-mtl 0000:00:1f.3: Topology: ABI 3:29:0 Kernel ABI 3:23:0
sof-audio-pci-intel-mtl 0000:00:1f.3: error: can't connect DAI dai-copier.DMIC.dmic01.capture stream dmic01
sof-audio-pci-intel-mtl 0000:00:1f.3: error: failed to add widget id 0 type 28 name : dai-copier.DMIC.dmic01.capture stream dmic01
sof_sdw sof_sdw: ASoC: failed to load widget dai-copier.DMIC.dmic01.capture
sof_sdw sof_sdw: ASoC: topology: could not load header: -22
sof-audio-pci-intel-mtl 0000:00:1f.3: error: tplg component load failed -22
sof-audio-pci-intel-mtl 0000:00:1f.3: error: failed to load DSP topology -22
sof-audio-pci-intel-mtl 0000:00:1f.3: ASoC: error at snd_soc_component_probe on 0000:00:1f.3: -22
sof_sdw sof_sdw: ASoC: failed to instantiate card -22
sof_sdw sof_sdw: error -EINVAL: snd_soc_register_card failed -22
sof_sdw: probe of sof_sdw failed with error -22

sof-logger. See https://thesofproject.github.io/latest/developer_guides/debugability/logger/index.html

# sof-logger
# TBD

The bug has initially been reported on launchpad

Activity

  1. plbossart commented on Mar 26, 2024

    @plbossart
    Member

    There are multiple problems here....

    First, the use of a topology with RT711 on a platform with Cirrus Logic seems very very odd. There's clearly a problem in the detection of the hardware.

    Can you please add this file
    sof-dyndbg.conf.txt
    to /etc/modprobe.d/sof-dyndbg.conf, reboot and then attach the result of 'alsa-info' and the full dmesg log.

    Thanks!

  2. plbossart commented on Mar 26, 2024

    @plbossart
    Member
  3. charleskeepax commented on Mar 26, 2024

    @charleskeepax

    Yeah that is definitely odd, looking at the log it looks like the cs35l56's are on links 2/3 whereas the current MTL topology has them on links 1/2. So that might be why we are not picking up the system, weird it picks a RT711 that makes me wonder if there is some weirdness in the ACPI as well. Let me do some checking at this end.

  4. charleskeepax commented on Mar 26, 2024

    @charleskeepax

    ah I think the kernel is just missing this patch:

    ASoC: Intel: mtl-match: Add cs42l43_l0 cs35l56_l23 for MTL

    It is in mainline already but not in the 6.8 kernel, can you please test with Linus's tree.

  5. charleskeepax commented on Mar 26, 2024

    @charleskeepax

    So taking a dump of the ACPI on our copy of this laptop there does indeed appear to be a spurious rt711 in the ACPI tables, not quite sure where that is coming from. We have tested the laptop so I assume the right topology etc. gets picked once the kernel has support but weird there is a redundant Realtek device in the ACPI table.

  6. plbossart commented on Mar 26, 2024

    @plbossart
    Member

    @charleskeepax it's a classic that the DSDT includes devices that are not there. Intel reference has e.g. entries for RT700 and RT701, they are ignored and unused.
    But if for some reason the entry for the spurious device is added BEFORE the actual devices, then the topology selection will fail. There's an implicit order in the selection.

  7. charleskeepax commented on Mar 26, 2024

    @charleskeepax

    I see... well in that case everything should be fine here, pretty sure the kernel just needs updating, it will get the new entries and find the correct topology.

  8. plbossart commented on Mar 26, 2024

    @plbossart
    Member

    @charleskeepax is this just that one patch that's problematic on this device?
    Or do we also need all the patches queued up for 6.10?

  9. moritz89 commented on Mar 26, 2024

    @moritz89
    Author

    I booted and signed 6.9.0-060900rc1-generic #202403242136 SMP PREEMPT_DYNAMIC Sun Mar 24 21:49:17 UTC 2024 x86_64 x86_64 x86_64 GNU/Linux and now it seems to recognize the sound card as cs42l43, but cannot find the correct topology file. Will see if I can find it somewhere. Currently using firmware-sof-signed/noble,now 2023.12.1-1ubuntu1

    [   18.812926] snd_hda_intel 0000:00:1f.3: DSP detected with PCI class/subclass/prog-if info 0x040380
    [   18.812962] snd_hda_intel 0000:00:1f.3: SoundWire enabled on CannonLake+ platform, using SOF driver
    [   18.813079] snd_hda_intel 0000:01:00.1: enabling device (0000 -> 0002)
    [   18.813363] snd_hda_intel 0000:01:00.1: Disabling MSI
    [   18.813375] snd_hda_intel 0000:01:00.1: Handle vga_switcheroo audio client
    [   18.910122] sof-audio-pci-intel-mtl 0000:00:1f.3: DSP detected with PCI class/subclass/prog-if info 0x040380
    [   18.910151] sof-audio-pci-intel-mtl 0000:00:1f.3: SoundWire enabled on CannonLake+ platform, using SOF driver
    [   18.910167] sof-audio-pci-intel-mtl 0000:00:1f.3: enabling device (0000 -> 0002)
    [   18.910349] sof-audio-pci-intel-mtl 0000:00:1f.3: DSP detected with PCI class/subclass/prog-if 0x040380
    [   20.366874] snd_hda_intel 0000:00:1f.3: DSP detected with PCI class/subclass/prog-if info 0x040380
    [   20.366907] snd_hda_intel 0000:00:1f.3: SoundWire enabled on CannonLake+ platform, using SOF driver
    [   20.366919] sof-audio-pci-intel-mtl 0000:00:1f.3: DSP detected with PCI class/subclass/prog-if info 0x040380
    [   20.366929] sof-audio-pci-intel-mtl 0000:00:1f.3: SoundWire enabled on CannonLake+ platform, using SOF driver
    [   20.367317] sof-audio-pci-intel-mtl 0000:00:1f.3: DSP detected with PCI class/subclass/prog-if 0x040380
    [   20.367423] sof-audio-pci-intel-mtl 0000:00:1f.3: bound 0000:00:02.0 (ops i915_audio_component_bind_ops [i915])
    [   20.374317] sof-audio-pci-intel-mtl 0000:00:1f.3: use msi interrupt mode
    [   20.386135] sof-audio-pci-intel-mtl 0000:00:1f.3: hda codecs found, mask 4
    [   20.390341] sof-audio-pci-intel-mtl 0000:00:1f.3: SOF firmware and/or topology file not found.
    [   20.390349] sof-audio-pci-intel-mtl 0000:00:1f.3: Supported default profiles
    [   20.390350] sof-audio-pci-intel-mtl 0000:00:1f.3: - ipc type 1 (Requested):
    [   20.390352] sof-audio-pci-intel-mtl 0000:00:1f.3:  Firmware file: intel/sof-ipc4/mtl/sof-mtl.ri
    [   20.390353] sof-audio-pci-intel-mtl 0000:00:1f.3:  Topology file: intel/sof-ace-tplg/sof-mtl-cs42l43-l0-cs35l56-l23.tplg
    [   20.390354] sof-audio-pci-intel-mtl 0000:00:1f.3: Check if you have 'sof-firmware' package installed.
    [   20.390355] sof-audio-pci-intel-mtl 0000:00:1f.3: Optionally it can be manually downloaded from:
    [   20.390356] sof-audio-pci-intel-mtl 0000:00:1f.3:    https://github.com/thesofproject/sof-bin/
    [   20.392213] sof-audio-pci-intel-mtl 0000:00:1f.3: error: sof_probe_work failed err: -2
    

    Also, the patch seems to be in the 6.9-rc1 release:

  10. moritz89 commented on Mar 26, 2024

    @moritz89
    Author

    Installed the file and now resulting in the following dmesg output. Filtered with sudo dmesg | grep -E 'sof-audio-pci-intel-mtl|snd_hda_intel|cs35l56|sof_sdw|sof-audio-pci-intel-mtl|input|cs42l43-codec'.

    Will try debug info from #4879 (comment) next

    [    0.608012] input: Lid Switch as /devices/LNXSYSTM:00/LNXSYBUS:00/PNP0C0D:00/input/input0
    [    0.608083] input: Power Button as /devices/LNXSYSTM:00/LNXSYBUS:00/PNP0C0C:00/input/input1
    [    0.608196] input: Sleep Button as /devices/LNXSYSTM:00/LNXSYBUS:00/PNP0C0E:00/input/input2
    [    0.645175] input: AT Translated Set 2 keyboard as /devices/platform/i8042/serio0/input/input3
    [    1.603086] input: PS/2 Generic Mouse as /devices/platform/i8042/serio1/input/input5
    [    2.142103] input: VEN_2C2F:00 2C2F:0025 Mouse as /devices/pci0000:00/0000:00:15.2/i2c_designware.1/i2c-1/i2c-VEN_2C2F:00/0018:2C2F:0025.0001/input/input6
    [    2.142215] input: VEN_2C2F:00 2C2F:0025 Touchpad as /devices/pci0000:00/0000:00:15.2/i2c_designware.1/i2c-1/i2c-VEN_2C2F:00/0018:2C2F:0025.0001/input/input7
    [    2.142305] hid-generic 0018:2C2F:0025.0001: input,hidraw0: I2C HID v1.00 Mouse [VEN_2C2F:00 2C2F:0025] on i2c-VEN_2C2F:00
    [    2.220397] input: VEN_2C2F:00 2C2F:0025 Mouse as /devices/pci0000:00/0000:00:15.2/i2c_designware.1/i2c-1/i2c-VEN_2C2F:00/0018:2C2F:0025.0001/input/input9
    [    2.220475] input: VEN_2C2F:00 2C2F:0025 Touchpad as /devices/pci0000:00/0000:00:15.2/i2c_designware.1/i2c-1/i2c-VEN_2C2F:00/0018:2C2F:0025.0001/input/input10
    [    2.220541] hid-multitouch 0018:2C2F:0025.0001: input,hidraw0: I2C HID v1.00 Mouse [VEN_2C2F:00 2C2F:0025] on i2c-VEN_2C2F:00
    [    2.727541] input: Intel HID events as /devices/platform/INTC1077:00/input/input12
    [    2.731737] input: Intel HID 5 button array as /devices/platform/INTC1077:00/input/input13
    [    3.194870] input: Dell Privacy Driver as /devices/platform/PNP0C14:03/wmi_bus/wmi_bus-PNP0C14:03/6932965F-1671-4CEB-B988-D3AB0A901919/input/input14
    [    3.195257] input: Dell WMI hotkeys as /devices/platform/PNP0C14:03/wmi_bus/wmi_bus-PNP0C14:03/9DBB5994-A997-11DA-B012-B622A1EF5492/input/input15
    [    5.189601] input: Video Bus as /devices/LNXSYSTM:00/LNXSYBUS:00/PNP0A08:00/LNXVIDEO:00/input/input16
    [    5.189956] input: Video Bus as /devices/LNXSYSTM:00/LNXSYBUS:00/PNP0A08:00/device:68/LNXVIDEO:01/input/input17
    [   16.621663] snd_hda_intel 0000:00:1f.3: DSP detected with PCI class/subclass/prog-if info 0x040380
    [   16.621691] snd_hda_intel 0000:00:1f.3: SoundWire enabled on CannonLake+ platform, using SOF driver
    [   16.621763] snd_hda_intel 0000:01:00.1: enabling device (0000 -> 0002)
    [   16.621947] snd_hda_intel 0000:01:00.1: Disabling MSI
    [   16.621951] snd_hda_intel 0000:01:00.1: Handle vga_switcheroo audio client
    [   16.714404] input: HDA NVidia HDMI/DP,pcm=3 as /devices/pci0000:00/0000:00:01.0/0000:01:00.1/sound/card0/input18
    [   16.714452] input: HDA NVidia HDMI/DP,pcm=7 as /devices/pci0000:00/0000:00:01.0/0000:01:00.1/sound/card0/input19
    [   16.714489] input: HDA NVidia HDMI/DP,pcm=8 as /devices/pci0000:00/0000:00:01.0/0000:01:00.1/sound/card0/input20
    [   16.714587] input: HDA NVidia HDMI/DP,pcm=9 as /devices/pci0000:00/0000:00:01.0/0000:01:00.1/sound/card0/input21
    [   16.796998] sof-audio-pci-intel-mtl 0000:00:1f.3: DSP detected with PCI class/subclass/prog-if info 0x040380
    [   16.797027] sof-audio-pci-intel-mtl 0000:00:1f.3: SoundWire enabled on CannonLake+ platform, using SOF driver
    [   16.797050] sof-audio-pci-intel-mtl 0000:00:1f.3: enabling device (0000 -> 0002)
    [   16.797211] sof-audio-pci-intel-mtl 0000:00:1f.3: DSP detected with PCI class/subclass/prog-if 0x040380
    [   16.797268] sof-audio-pci-intel-mtl 0000:00:1f.3: bound 0000:00:02.0 (ops i915_audio_component_bind_ops [i915])
    [   16.804078] sof-audio-pci-intel-mtl 0000:00:1f.3: use msi interrupt mode
    [   16.816363] sof-audio-pci-intel-mtl 0000:00:1f.3: hda codecs found, mask 4
    [   16.821158] sof-audio-pci-intel-mtl 0000:00:1f.3: Firmware paths/files for ipc type 1:
    [   16.821161] sof-audio-pci-intel-mtl 0000:00:1f.3:  Firmware file:     intel/sof-ipc4/mtl/sof-mtl.ri
    [   16.821162] sof-audio-pci-intel-mtl 0000:00:1f.3:  Firmware lib path: intel/sof-ipc4-lib/mtl
    [   16.821162] sof-audio-pci-intel-mtl 0000:00:1f.3:  Topology file:     intel/sof-ace-tplg/sof-mtl-cs42l43-l0-cs35l56-l23.tplg
    [   16.822602] sof-audio-pci-intel-mtl 0000:00:1f.3: Loaded firmware library: ADSPFW, version: 2.8.1.1
    [   16.847332] cs35l56 sdw:0:2:01fa:3556:01:2: supply VDD_P not found, using dummy regulator
    [   16.847349] cs35l56 sdw:0:2:01fa:3556:01:2: supply VDD_IO not found, using dummy regulator
    [   16.847354] cs35l56 sdw:0:2:01fa:3556:01:2: supply VDD_A not found, using dummy regulator
    [   16.847557] cs35l56 sdw:0:2:01fa:3556:01:2: Got spk-id from AF01
    [   16.847761] cs35l56 sdw:0:2:01fa:3556:01:3: supply VDD_P not found, using dummy regulator
    [   16.847807] cs35l56 sdw:0:2:01fa:3556:01:3: supply VDD_IO not found, using dummy regulator
    [   16.847816] cs35l56 sdw:0:2:01fa:3556:01:3: supply VDD_A not found, using dummy regulator
    [   16.847991] cs35l56 sdw:0:2:01fa:3556:01:3: Got spk-id from AF01
    [   16.848293] cs35l56 sdw:0:3:01fa:3556:01:0: supply VDD_P not found, using dummy regulator
    [   16.848405] cs35l56 sdw:0:3:01fa:3556:01:0: supply VDD_IO not found, using dummy regulator
    [   16.848416] cs35l56 sdw:0:3:01fa:3556:01:0: supply VDD_A not found, using dummy regulator
    [   16.848616] cs35l56 sdw:0:3:01fa:3556:01:0: Got spk-id from AF01
    [   16.848860] cs35l56 sdw:0:3:01fa:3556:01:1: supply VDD_P not found, using dummy regulator
    [   16.848944] cs35l56 sdw:0:3:01fa:3556:01:1: supply VDD_IO not found, using dummy regulator
    [   16.848959] cs35l56 sdw:0:3:01fa:3556:01:1: supply VDD_A not found, using dummy regulator
    [   16.849116] cs35l56 sdw:0:3:01fa:3556:01:1: Got spk-id from AF01
    [   16.927527] sof-audio-pci-intel-mtl 0000:00:1f.3: Booted firmware version: 2.8.1.1
    [   16.936641] cs35l56 sdw:0:2:01fa:3556:01:3: Cirrus Logic CS35L56 Rev B0 OTP3 fw:3.4.4 (patched=0)
    [   16.936653] cs35l56 sdw:0:3:01fa:3556:01:1: Cirrus Logic CS35L56 Rev B0 OTP3 fw:3.4.4 (patched=0)
    [   16.949958] cs35l56 sdw:0:2:01fa:3556:01:2: Cirrus Logic CS35L56 Rev B0 OTP3 fw:3.4.4 (patched=0)
    [   16.949965] cs35l56 sdw:0:3:01fa:3556:01:0: Cirrus Logic CS35L56 Rev B0 OTP3 fw:3.4.4 (patched=0)
    [   16.953591] cs35l56 sdw:0:3:01fa:3556:01:1: Slave 1 state check1: UNATTACHED, status was 1
    [   16.953794] cs35l56 sdw:0:2:01fa:3556:01:3: Slave 1 state check1: UNATTACHED, status was 1
    [   16.953796] cs35l56 sdw:0:2:01fa:3556:01:2: Slave 2 state check1: UNATTACHED, status was 1
    [   16.954099] cs35l56 sdw:0:3:01fa:3556:01:0: Slave 2 state check1: UNATTACHED, status was 1
    [   17.042271] cs42l43-codec cs42l43-codec: supply vdd-amp not found, using dummy regulator
    [   17.044634] sof-audio-pci-intel-mtl 0000:00:1f.3: Topology: ABI 3:29:0 Kernel ABI 3:23:0
    [   17.045048] sof_sdw sof_sdw: ASoC: Parent card not yet available, widget card binding deferred
    [   17.045119] cs35l56 sdw:0:2:01fa:3556:01:2: supply VDD_B not found, using dummy regulator
    [   17.045134] cs35l56 sdw:0:2:01fa:3556:01:2: supply VDD_AMP not found, using dummy regulator
    [   17.045717] cs35l56 sdw:0:2:01fa:3556:01:3: supply VDD_B not found, using dummy regulator
    [   17.045728] cs35l56 sdw:0:2:01fa:3556:01:3: supply VDD_AMP not found, using dummy regulator
    [   17.046817] cs35l56 sdw:0:3:01fa:3556:01:0: supply VDD_B not found, using dummy regulator
    [   17.046829] cs35l56 sdw:0:3:01fa:3556:01:0: supply VDD_AMP not found, using dummy regulator
    [   17.047485] cs35l56 sdw:0:3:01fa:3556:01:1: supply VDD_B not found, using dummy regulator
    [   17.047493] cs35l56 sdw:0:3:01fa:3556:01:1: supply VDD_AMP not found, using dummy regulator
    [   17.049660] cs35l56 sdw:0:2:01fa:3556:01:2: DSP1: Firmware: 1a00d6 vendor: 0x2 v3.4.4, 37 algorithms
    [   17.050180] cs35l56 sdw:0:3:01fa:3556:01:0: DSP1: Firmware: 1a00d6 vendor: 0x2 v3.4.4, 37 algorithms
    [   17.050725] cs35l56 sdw:0:2:01fa:3556:01:3: DSP1: Firmware: 1a00d6 vendor: 0x2 v3.4.4, 37 algorithms
    [   17.059582] sof_sdw sof_sdw: hda_dsp_hdmi_build_controls: no PCM in topology for HDMI converter 3
    [   17.075341] cs35l56 sdw:0:3:01fa:3556:01:1: DSP1: Firmware: 1a00d6 vendor: 0x2 v3.4.4, 37 algorithms
    [   17.075860] cs35l56 sdw:0:3:01fa:3556:01:0: Slave 2 state check1: UNATTACHED, status was 1
    [   17.098944] cs35l56 sdw:0:2:01fa:3556:01:3: Slave 1 state check1: UNATTACHED, status was 1
    [   17.099156] cs35l56 sdw:0:2:01fa:3556:01:2: Slave 2 state check1: UNATTACHED, status was 1
    [   17.100936] cs35l56 sdw:0:3:01fa:3556:01:1: Slave 1 state check1: UNATTACHED, status was 1
    [   17.105944] cs35l56 sdw:0:3:01fa:3556:01:0: Failed to write to 'CAL_AMBIENT': -2
    [   17.106648] cs35l56 sdw:0:2:01fa:3556:01:3: Failed to write to 'CAL_AMBIENT': -2
    [   17.107648] input: sof-soundwire Jack as /devices/pci0000:00/0000:00:1f.3/sof_sdw/sound/card1/input22
    [   17.108055] input: sof-soundwire HDMI/DP,pcm=5 as /devices/pci0000:00/0000:00:1f.3/sof_sdw/sound/card1/input23
    [   17.108723] input: sof-soundwire HDMI/DP,pcm=6 as /devices/pci0000:00/0000:00:1f.3/sof_sdw/sound/card1/input24
    [   17.109037] input: sof-soundwire HDMI/DP,pcm=7 as /devices/pci0000:00/0000:00:1f.3/sof_sdw/sound/card1/input25
    [   17.113165] cs35l56 sdw:0:2:01fa:3556:01:2: Failed to write to 'CAL_AMBIENT': -2
    [   17.114016] cs35l56 sdw:0:3:01fa:3556:01:1: Failed to write to 'CAL_AMBIENT': -2
    [   28.604009] rfkill: input handler disabled
    [   32.044460] rfkill: input handler enabled
    [   32.801148] rfkill: input handler disabled
    
  11. moritz89 commented on Mar 26, 2024

    @moritz89
    Author
  12. plbossart commented on Mar 26, 2024

    @plbossart
    Member

    Looks liek the card is created

    card 1: sofsoundwire [sof-soundwire], device 0: Jack Out (*) []
      Subdevices: 1/1
      Subdevice #0: subdevice #0
    card 1: sofsoundwire [sof-soundwire], device 2: Speaker (*) []
      Subdevices: 1/1
      Subdevice #0: subdevice #0
    card 1: sofsoundwire [sof-soundwire], device 5: HDMI1 (*) []
      Subdevices: 1/1
      Subdevice #0: subdevice #0
    card 1: sofsoundwire [sof-soundwire], device 6: HDMI2 (*) []
      Subdevices: 1/1
      Subdevice #0: subdevice #0
    card 1: sofsoundwire [sof-soundwire], device 7: HDMI3 (*) []
      Subdevices: 1/1
      Subdevice #0: subdevice #0
    card 1: sofsoundwire [sof-soundwire], device 31: Deepbuffer Jack Out (*) []
      Subdevices: 1/1
      Subdevice #0: subdevice #0
    
    ARECORD
    
    **** List of CAPTURE Hardware Devices ****
    card 1: sofsoundwire [sof-soundwire], device 1: Jack In (*) []
      Subdevices: 1/1
      Subdevice #0: subdevice #0
    card 1: sofsoundwire [sof-soundwire], device 4: Microphone (*) []
      Subdevices: 1/1
      Subdevice #0: subdevice #0
    

    is this usable or not? I am not sure if the "Failed to write to 'CAL_AMBIENT'" reports are a problem, that would be for Cirrus folks to comment on.

  13. 67 remaining items

  14. yvesh1123 commented on May 13, 2024

    @yvesh1123

    @Maccchiatooo i'm having a camera issue also, can you link the issue here please so i can stay updated on it.

  15. Maccchiatooo commented on May 13, 2024

    @Maccchiatooo

    @Maccchiatooo i'm having a camera issue also, can you link the issue here please so i can stay updated on it.
    see this:
    https://www.reddit.com/r/DellXPS/comments/1b9ddhz/does_the_xps_16_intel_ultra_7_support_linux/

  16. alexhulbert commented on May 14, 2024

    @alexhulbert

    @Maccchiatooo i'm having a camera issue also, can you link the issue here please so i can stay updated on it.
    see this:
    https://www.reddit.com/r/DellXPS/comments/1b9ddhz/does_the_xps_16_intel_ultra_7_support_linux/

    From what I can tell, the ipu6 camera stuff is kinda a mess rn. Since it's not built into the Linux Kernel, it breaks on every kernel release. I'm pretty sure some people have just managed to get it to work with 6.7, and we'd need 6.9.

    At least on arch, several changes are needed to get ipu6 cameras working, you can find those changes documented here:

    https://github.com/stefanpartheym/archlinux-ipu6-webcam

  17. charleskeepax commented on Jun 7, 2024

    @charleskeepax

    @vinassefranche - This patch https://lore.kernel.org/linux-sound/20240604132843.3309114-1-ckeepax@opensource.cirrus.com/ should fix your sporadic headset detection issues. I am not sure if building a custom kernel is something you would feel up to, but if so should be pretty easy to cherry-pick that patch in. If not then it is fairly likely the patch should get included in 6.10, 6.11 at the latest. So waiting for those to release would be the way to go.

  18. vinassefranche commented on Jun 13, 2024

    @vinassefranche

    @charleskeepax so cool! Sorry for now answering before, I don't know why I did not receive the notification email.
    I'll wait for the next kernel versions I think. I'll confirm here when I have it.
    Thanks a lot for the effort anyway!

  19. sygi commented on Sep 13, 2024

    @sygi

    Hello from the future!
    I tested the suggestions from this thread in 6.10.10. and they don't seem to work. When I moved back to 6.9.12, I started to see the hardware devices:

    $ aplay -l
    **** List of PLAYBACK Hardware Devices ****
    card 0: sofsoundwire [sof-soundwire], device 0: Jack Out (*) []
      Subdevices: 0/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: HDMI1 (*) []
      Subdevices: 1/1
      Subdevice #0: subdevice #0
    card 0: sofsoundwire [sof-soundwire], device 6: HDMI2 (*) []
      Subdevices: 1/1
      Subdevice #0: subdevice #0
    card 0: sofsoundwire [sof-soundwire], device 7: HDMI3 (*) []
      Subdevices: 1/1
      Subdevice #0: subdevice #0
    card 0: sofsoundwire [sof-soundwire], device 31: Deepbuffer Jack Out (*) []
      Subdevices: 0/1
      Subdevice #0: subdevice #0
    

    but I only managed to make one of them (2: speaker) to actually produce sound. I also observed that with options snd-intel-dspcfg dsp_driver=1, I was able to make HDMI sound work but nothing else.

  20. winsvega commented on Oct 1, 2024

    @winsvega

    Thanks for hinting which version of sof and kernel to use but that alone was not enough

    the solution for me was:

    1. install mainline
    udo add-apt-repository ppa:cappelikan/ppa
    sudo apt update && sudo apt upgrade -y
    sudo apt install -y mainline
    

    kernel for sound 6.9.12

    1. isntall sound driver over systems (remove the system ones)
    sudo rm -r /lib/firmware/intel/sof-ipc4-tplg
    sudo rm -r /lib/firmware/intel/sof-ace-tplg
    sudo rm -r /lib/firmware/intel/sof-ipc4
    
    git clone https://github.com/thesofproject/sof-bin
    sudo ./install.sh v2.9.x/v2.9 (make sure it prints links are created)
    cp -r tools-v2.9/ /usr/local/bin/
    
    1. install sound codecs
    sudo apt-get install ubuntu-restricted-extras
    

    use pavucontrol to enable sound driver in config tab

    pactl list short sinks
    

    set second from the list as default

    pactl set-default-sink alsa_output.pci-0000_00_1f.3-platform-sof_sdw.pro-output-2
    
    1. debug issues with chat gpt, but don't reinstall packages if it suggest so
    journalctl --user -xe | grep pipewire
    sudo dmesg | grep snd
    sudo dmesg | grep pipewire
    sudo dmesg | grep sof
    sudo dmesg | grep audio
    
    1. maybe not needed but I edit
    gedit /usr/share/pipewire/pipewire.conf
        default.clock.rate = 44100
        default.clock.allowed-rates = [ 44100, 48000 ]
    
  21. ilmonk commented on Oct 9, 2024

    @ilmonk

    Thanks! I followed the steps, and now, if I set my configuration to 'Pro Audio' and use Audio Controller 2, the audio works. However, there's another problem: the headphone jack and the microphone still don't work. If I use USB headphones, the audio is fine, but the microphone doesn't work.

  22. winsvega commented on Oct 18, 2024

    @winsvega

    About this topology file.
    It is indeed missing there. But I see that on 6.9.12 kernel where the sound works, it uses different file
    /lib/firmware/intel/sof-ace-tplg/sof-mtl-cs42l43-l0-cs35l56-l23.tplg
    and there it works just fine.

    however, on the recent update of ubuntu of 6.8.0-47
    if I symlink this file intel/sof-ace-tplg/sof-mtl-rt711.tplg to I get this error.
    sudo ln -s /lib/firmware/intel/sof-ace-tplg/sof-mtl-cs42l43-l0-cs35l56-l23.tplg /lib/firmware/intel/sof-ace-tplg/sof-mtl-rt711.tplg

    Topology file:     intel/sof-ace-tplg/sof-mtl-rt711.tplg
    [    7.041122] sof-audio-pci-intel-mtl 0000:00:1f.3: Loaded firmware library: ADSPFW, version: 2.10.0.1
    [    7.186617] sof-audio-pci-intel-mtl 0000:00:1f.3: Booted firmware version: 2.10.0.1
    [    7.194145] sof-audio-pci-intel-mtl 0000:00:1f.3: Topology: ABI 3:29:0 Kernel ABI 3:23:0
    [    7.194169] sof-audio-pci-intel-mtl 0000:00:1f.3: error: can't connect DAI alh-copier.Playback-SimpleJack.0 stream Playback-SimpleJack
    [    7.194172] sof-audio-pci-intel-mtl 0000:00:1f.3: error: failed to add widget id 0 type 27 name : alh-copier.Playback-SimpleJack.0 stream Playback-SimpleJack
    [    7.194180] sof-audio-pci-intel-mtl 0000:00:1f.3: error: tplg component load failed -22
    [    7.194182] sof-audio-pci-intel-mtl 0000:00:1f.3: error: failed to load DSP topology -22
    [    7.194183] sof-audio-pci-intel-mtl 0000:00:1f.3: ASoC: error at snd_soc_component_probe on 0000:00:1f.3: -22
    

    sof loads, but it seems like a problem with jack detection.
    ubuntu of 6.8.0-47 actually consumes 4 times less power than others. so it would have been nice to have sound on it.
    as well as video driver works only under it. so it is either sound and no video and less battery life or this.
    maybe there is a way to disable this jack...

    Looks like this is the patch to kernel that fixes the issue on 6.9.x
    https://lore.kernel.org/lkml/20240123113246.75539-1-mstrozek@opensource.cirrus.com/T/

    But could it be applied on 6.8.0-xx ?

  23. bardliao commented on Oct 22, 2024

    @bardliao
    Collaborator

    Looks like this is the patch to kernel that fixes the issue on 6.9.x https://lore.kernel.org/lkml/20240123113246.75539-1-mstrozek@opensource.cirrus.com/T/

    But could it be applied on 6.8.0-xx ?

    I tried, but 6.8.y is end-of-life. So, no, it can't be applied to 6.8.0-xx

  24. charleskeepax commented on Oct 22, 2024

    @charleskeepax

    Yeah Ubuntu maintains their kernels separately so you would need to speak to Ubuntu about getting the patch backported to their kernel. The patch should be super trivial to backport so hopefully if you tell them it is for enabling a fairly popular model of laptop they might just backport it for you.
    No idea what Canonical's rules on backporting new features/support or how responsive the process is though.

  25. winsvega commented on Oct 28, 2024

    @winsvega

    the end of support states it is april 2029, quite some time.

    the laptop is a new model. lets see as more linux people buy it, the more they report the bug.

  26. gaho1 commented on Mar 25, 2025

    @gaho1

    For those Ubuntu LTS users who have no sound, updating to 6.11.0-19-generic via the following command resolved it for me:

    sudo apt install --install-recommends linux-generic-hwe-24.04

  27. winsvega commented on Apr 4, 2025

    @winsvega

    confirm, 6.11.0 from official ubuntu works just fine with sound and video drivers.

  28. Erma318 commented on Apr 28, 2025

    @Erma318

    Has anyone tried with ubuntu 22.04 + a kernel >= 6.8 ? (my work requirement me to stay at 22.04 for now, but I guess it is fine for me to upgrade kernel to eg 6.9.x). But from my testing, 22.04 + 6.9/6.11/6.14 (mainline kernel) still do not work with all the instructions from above.

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

    SDWApplies 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