Linux Sound subsystem development
 help / color / mirror / Atom feed
From: "Krzysztof Hałasa" <khalasa@piap.pl>
To: Charles Keepax <ckeepax@opensource.cirrus.com>
Cc: linux-sound@vger.kernel.org,  patches@opensource.cirrus.com,
	 Richard Fitzgerald <rf@opensource.cirrus.com>
Subject: Re: NULL ptr dereference in cs42l43/cs35l56 on Lenovo Yoga 7 Slim laptop
Date: Fri, 13 Nov 2026 10:26:44 +0100	[thread overview]
Message-ID: <m31p8pulnv.fsf@t19.piap.pl> (raw)
In-Reply-To: <avXHa+ulgn9R0hc2@opensource.cirrus.com> (Charles Keepax's message of "Thu, 12 Nov 2026 14:04:27 +0000")

Charles,

Charles Keepax <ckeepax@opensource.cirrus.com> writes:

> I suspect it is failing because of that topology file that
> failed. Such a file doesn't appear to exist in the sof repo that
> I can see. I think the best next step here would be to get Intel
> involved, probably the best would be to open a ticket on the sof
> GitHub:
>
> https://github.com/thesofproject/sof/issues

It turned out there were alsa-related entries in a modprobe*.conf
(added by Ubuntu and/or possibly by the laptop's owner). Removed
the options.

7.3.4: added the ghost_rt711 quirk patch (already in v7.4).

7.4-rc2: added the ASoC: soc-core: reset rtd->num_components after
allocation patch from Emanuele Ghidoli.

Now the laptop shows certain output devices in GUI mixers. They are
... silent, though. This is now similar on 7.3.4 and 7.4-rc2. The only
visible difference is that 7.4-rc2 warns about the ssp2-bt-id8:
sof_sdw sof_sdw: Failed to open topology file: intel/sof-ipc4-tplg/sof-lnl-ssp2-bt-id8.tplg, ...
and 7.3.4 does not.

I have no idea how does the SOF/soundwire work. But (using 7.4-rc2
at the moment) I killed the wireplumber/pipewire daemons, and
alsamixer/amixer -c0 both start, showing many controls (139, not
counting input). Experimented a bit with them, and now is seems
aplay *.wav -D plughw:CARD=sofsoundwire,DEV=5 produces sound on the
built-in speaker(s). Then.. pipewire works now, so I consider this
problem solved. It also works on 7.3.4+.

Thank you, and sorry for the false alarm.


For reference (removed some amount of noise from dmesg):

$ cat /proc/asound/pcm
00-02: Speaker (*) :  : playback 1
00-05: HDMI1 (*) : HDMI 1 : playback 1
00-06: HDMI2 (*) : HDMI 2 : playback 1
00-07: HDMI3 (*) : HDMI 3 : playback 1
00-10: DMIC Raw (*) :  : capture 1

$ cat /proc/asound/cards
 0 [sofsoundwire   ]: sof-soundwire - sof-soundwire
                      LENOVO-83R0-YogaSlim714ILL11-LNVNB161216

v7.3.4 + the ghost_rt711 patch:

sof-audio-pci-intel-lnl 0000:00:1f.3: SoundWire enabled on CannonLake+ platform, using SOF driver
sof-audio-pci-intel-lnl 0000:00:1f.3: enabling device (0000 -> 0002)
sof-audio-pci-intel-lnl 0000:00:1f.3: DSP detected with PCI class/subclass/prog-if 0x040100
sof-audio-pci-intel-lnl 0000:00:1f.3: bound 0000:00:02.0 (ops intel_audio_component_bind_ops [xe])
sof-audio-pci-intel-lnl 0000:00:1f.3: use msi interrupt mode
acpi device:2a: SDCA function SmartAmp (type 1) at 0x1
sof-audio-pci-intel-lnl 0000:00:1f.3: No SoundWire machine driver found for the ACPI-reported configuration:
sof-audio-pci-intel-lnl 0000:00:1f.3: link 0 mfg_id 0x01fa part_id 0x4243 version 0x3
sof-audio-pci-intel-lnl 0000:00:1f.3: Use SoundWire default machine driver with function topologies
sof-audio-pci-intel-lnl 0000:00:1f.3: hda codecs found, mask 4
sof-audio-pci-intel-lnl 0000:00:1f.3: NHLT device BT(0) detected, ssp_mask 0x4
sof-audio-pci-intel-lnl 0000:00:1f.3: BT link detected in NHLT tables: 0x4
sof-audio-pci-intel-lnl 0000:00:1f.3: DMICs detected in NHLT tables: 4
sof-audio-pci-intel-lnl 0000:00:1f.3: Loaded FW: intel/sof-ipc4/lnl/sof-lnl.ri, sha256: e72726da2a91c7869e37ec02d280a4348c5600d25d158c2bfc1018fc6ef5a8b1
sof-audio-pci-intel-lnl 0000:00:1f.3: Firmware paths/files for ipc type 1:
sof-audio-pci-intel-lnl 0000:00:1f.3:  Firmware file:     intel/sof-ipc4/lnl/sof-lnl.ri
sof-audio-pci-intel-lnl 0000:00:1f.3:  Firmware lib path: intel/sof-ipc4-lib/lnl
sof-audio-pci-intel-lnl 0000:00:1f.3:  Topology file:     function topologies
sof-audio-pci-intel-lnl 0000:00:1f.3: Loaded FW: intel/sof-ipc4/lnl/sof-lnl.ri, sha256: e72726da2a91c7869e37ec02d280a4348c5600d25d158c2bfc1018fc6ef5a8b1
sof-audio-pci-intel-lnl 0000:00:1f.3: Loaded firmware library: ADSPFW, version: 2.14.1.1
cs42l43 sdw:0:0:01fa:4243:01: devid: 0x042a43, rev: 0xa1, otp: 0x03
cs42l43 sdw:0:0:01fa:4243:01: Loaded FW: cs42l43.bin, sha256: 8708742e09d2d392d8e2731f9ba06fdb73486362e4df576c0b32c34b1cf825ce
Adding alias for supply vdd-amp,(null) -> vdd-amp,sdw:0:0:01fa:4243:01
cs35l56 spi-cs35l56-left: Cirrus Logic CS35L56 Rev B0 OTP3 fw:3.4.4 (patched=0)
sof-audio-pci-intel-lnl 0000:00:1f.3: Booted firmware version: 2.14.1.1
cs35l56 spi-cs35l56-right: Cirrus Logic CS35L56 Rev B0 OTP3 fw:3.4.4 (patched=0)
sof_sdw sof_sdw: Loaded FW: intel/sof-ipc4-tplg/sof-sdca-1amp-id2.tplg, sha256: b92f8736b0b3557c4030a3a82cd31d47a244589fa3b91ad8b3d4c469ebba27a7
sof_sdw sof_sdw: Loaded FW: intel/sof-ipc4-tplg/sof-lnl-dmic-4ch-id3.tplg, sha256: 79bd0bb781e8e30d5594a10d7c37825fc4356b2ac63d5d444c2e485b23ccf8f5
sof_sdw sof_sdw: Loaded FW: intel/sof-ipc4-tplg/sof-hdmi-pcm5-id5.tplg, sha256: fe798c5e0e927b7bb68349a21b50114b1832254a6f851c2e71a398710970273a
sof-audio-pci-intel-lnl 0000:00:1f.3: Using function topologies instead intel/sof-ipc4-tplg/sof-lnl-dummy-4ch.tplg
sof-audio-pci-intel-lnl 0000:00:1f.3: loading topology 0: intel/sof-ipc4-tplg/sof-sdca-1amp-id2.tplg
sof-audio-pci-intel-lnl 0000:00:1f.3: Loaded FW: intel/sof-ipc4-tplg/sof-sdca-1amp-id2.tplg, sha256: b92f8736b0b3557c4030a3a82cd31d47a244589fa3b91ad8b3d4c469ebba27a7
sof-audio-pci-intel-lnl 0000:00:1f.3: Topology: ABI 3:29:1 Kernel ABI 3:23:1
sof_sdw sof_sdw: ASoC: Parent card not yet available, widget card binding deferred
sof-audio-pci-intel-lnl 0000:00:1f.3: loading topology 1: intel/sof-ipc4-tplg/sof-lnl-dmic-4ch-id3.tplg
sof-audio-pci-intel-lnl 0000:00:1f.3: Loaded FW: intel/sof-ipc4-tplg/sof-lnl-dmic-4ch-id3.tplg, sha256: 79bd0bb781e8e30d5594a10d7c37825fc4356b2ac63d5d444c2e485b23ccf8f5
sof-audio-pci-intel-lnl 0000:00:1f.3: Topology: ABI 3:29:1 Kernel ABI 3:23:1
sof_sdw sof_sdw: ASoC: Parent card not yet available, widget card binding deferred
sof-audio-pci-intel-lnl 0000:00:1f.3: loading topology 2: intel/sof-ipc4-tplg/sof-hdmi-pcm5-id5.tplg
sof-audio-pci-intel-lnl 0000:00:1f.3: Loaded FW: intel/sof-ipc4-tplg/sof-hdmi-pcm5-id5.tplg, sha256: fe798c5e0e927b7bb68349a21b50114b1832254a6f851c2e71a398710970273a
sof-audio-pci-intel-lnl 0000:00:1f.3: Topology: ABI 3:29:1 Kernel ABI 3:23:1
sof_sdw sof_sdw: ASoC: Parent card not yet available, widget card binding deferred
cs35l56 spi-cs35l56-right: Loaded FW: cirrus/cs35l56-b0-dsp1-misc-17aa383c-spkid0.wmfw, sha256: 01ea4865a3e85fe68a7021b9bf682541112c026a394b8355138e4b246faf0158
sof-audio-pci-intel-lnl 0000:00:1f.3: Loaded FW: intel/sof-ipc4-lib/lnl/B36EE4DA-006F-47F9-A06D-FECBE2D8B6CE.bin, sha256: bd7a59d37802d8acf6bc197c7004b6b25567c0cf955370089e86ada122373781
sof-audio-pci-intel-lnl 0000:00:1f.3: Loaded firmware library: ADSPFW, version: 2.14.1.1
cs35l56 spi-cs35l56-right: Loaded FW: cirrus/cs35l56-b0-dsp1-misc-17aa383c-spkid0-ampr.bin, sha256: 2aa99330b228d19dc65d98fc2587e3ec9330833a94494a53fbae8c5e35df80c5
cs35l56 spi-cs35l56-right: DSP1: cirrus/cs35l56-b0-dsp1-misc-17aa383c-spkid0.wmfw: format 3 timestamp 0x686474f4
cs35l56 spi-cs35l56-right: DSP1: cirrus/cs35l56-b0-dsp1-misc-17aa383c-spkid0.wmfw: Tue 01 Jul 2025 18:53:24 Central Daylight Time
cs35l56 spi-cs35l56-left: Loaded FW: cirrus/cs35l56-b0-dsp1-misc-17aa383c-spkid0.wmfw, sha256: 01ea4865a3e85fe68a7021b9bf682541112c026a394b8355138e4b246faf0158
cs35l56 spi-cs35l56-left: Loaded FW: cirrus/cs35l56-b0-dsp1-misc-17aa383c-spkid0-ampl.bin, sha256: a79325f6a87d30817625e36a491c6b4dc3dc90e9b4fbe6b45fc774fa759972c9
cs35l56 spi-cs35l56-left: DSP1: cirrus/cs35l56-b0-dsp1-misc-17aa383c-spkid0.wmfw: format 3 timestamp 0x686474f4
cs35l56 spi-cs35l56-left: DSP1: cirrus/cs35l56-b0-dsp1-misc-17aa383c-spkid0.wmfw: Tue 01 Jul 2025 18:53:24 Central Daylight Time
cs35l56 spi-cs35l56-right: DSP1: Firmware: 1a00d6 vendor: 0x2 v3.13.3, 41 algorithms
cs35l56 spi-cs35l56-right: DSP1: cirrus/cs35l56-b0-dsp1-misc-17aa383c-spkid0-ampr.bin (v1): v3.13.3
cs35l56 spi-cs35l56-right: DSP1: Misc: C:\Cirrus\Project\Lenovo_Slim7_14_Gen11_LLS7L\Smart_PA_Tuning\Initial_Tuning\Version1.0_Remove_CF\Lo
cs35l56 spi-cs35l56-left: DSP1: Firmware: 1a00d6 vendor: 0x2 v3.13.3, 41 algorithms
cs35l56 spi-cs35l56-left: DSP1: cirrus/cs35l56-b0-dsp1-misc-17aa383c-spkid0-ampl.bin (v1): v3.13.3
cs35l56 spi-cs35l56-left: DSP1: Misc: C:\Cirrus\Project\Lenovo_Slim7_14_Gen11_LLS7L\Smart_PA_Tuning\Initial_Tuning\Version1.0_Remove_CF\Lo
cs35l56 spi-cs35l56-right: Calibration applied
cs35l56 spi-cs35l56-left: Calibration applied
cs35l56 spi-cs35l56-right: Tuning PID: 0x383c, SID: 0x1, TID: 0x1a7bf2
cs35l56 spi-cs35l56-left: Tuning PID: 0x383c, SID: 0x0, TID: 0xbed7ef
sof_sdw sof_sdw: Setting CS42L43 Speaker volume limit to 128
sof_sdw sof_sdw: hda_dsp_hdmi_build_controls: no PCM in topology for HDMI converter 3
input: sof-soundwire HDMI/DP,pcm=5 as /devices/pci0000:00/0000:00:1f.3/sof_sdw/sound/card0/input13
input: sof-soundwire HDMI/DP,pcm=6 as /devices/pci0000:00/0000:00:1f.3/sof_sdw/sound/card0/input14
input: sof-soundwire HDMI/DP,pcm=7 as /devices/pci0000:00/0000:00:1f.3/sof_sdw/sound/card0/input15

v7.4.0-rc2+ (current) with the "reset rtd->num_components after allocation"
patch also shows:

+sof_sdw sof_sdw: Failed to open topology file: intel/sof-ipc4-tplg/sof-lnl-ssp2-bt-id8.tplg, you might need to
+sof_sdw sof_sdw: download it from https://github.com/thesofproject/sof-bin/
-- 
Krzysztof "Chris" Hałasa

Łukasiewicz Research Network
Industrial Research Institute for Automation and Measurements PIAP

Al. Jerozolimskie 202, 02-486 Warsaw, Poland

      reply	other threads:[~2026-11-13  9:26 UTC|newest]

Thread overview: 6+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2026-11-10 12:30 NULL ptr dereference in cs42l43/cs35l56 on Lenovo Yoga 7 Slim laptop Krzysztof Hałasa
2026-11-11 10:20 ` Charles Keepax
2026-11-11 10:30   ` Charles Keepax
2026-11-12 13:20     ` Krzysztof Hałasa
2026-11-12 14:04       ` Charles Keepax
2026-11-13  9:26         ` Krzysztof Hałasa [this message]

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=m31p8pulnv.fsf@t19.piap.pl \
    --to=khalasa@piap.pl \
    --cc=ckeepax@opensource.cirrus.com \
    --cc=linux-sound@vger.kernel.org \
    --cc=patches@opensource.cirrus.com \
    --cc=rf@opensource.cirrus.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox