clearlinux / distribution

Placeholder repository to allow filing of general bugs/issues/etc against the Clear Linux OS for Intel Architecture linux distribution
520 stars 29 forks source link

No sound cards detected on Lenovo IdeaPad S540-13IML with i7-10510U #1771

Open chrysophylax opened 4 years ago

chrysophylax commented 4 years ago

Hi,

Booting a recent Clear Linux live USB to verify basic functioning of the desktop on a Lenovo S540 13IML bought in 2020 we discovered that everything was fine except the sound card.

Model name:                      Intel(R) Core(TM) i7-10510U CPU @ 1.80GHz
Clear Linux:                        32310
Kernel:                                Linux clr-live 5.5.3-905.native #1 SMP Tue Feb 11 12:29:40 PST 2020 x86_64 GNU/Linux
clrlinux@clr-live~ $ aplay -l
aplay: device_list:272: no soundcards found...
clrlinux@clr-live~ $ lspci 
00:00.0 Host bridge: Intel Corporation Device 9b61 (rev 0c)
00:02.0 VGA compatible controller: Intel Corporation UHD Graphics (rev 02)
00:04.0 Signal processing controller: Intel Corporation Xeon E3-1200 v5/E3-1500 v5/6th Gen Core Processor Thermal Subsystem (rev 0c)
00:08.0 System peripheral: Intel Corporation Xeon E3-1200 v5/v6 / E3-1500 v5 / 6th/7th/8th Gen Core Processor Gaussian Mixture Model
00:12.0 Signal processing controller: Intel Corporation Comet Lake Thermal Subsytem
00:13.0 Serial controller: Intel Corporation Comet Lake Integrated Sensor Solution
00:14.0 USB controller: Intel Corporation Device 02ed
00:14.2 RAM memory: Intel Corporation Device 02ef
00:14.3 Network controller: Intel Corporation Wireless-AC 9462
00:15.0 Serial bus controller [0c80]: Intel Corporation Serial IO I2C Host Controller
00:15.1 Serial bus controller [0c80]: Intel Corporation Device 02e9
00:16.0 Communication controller: Intel Corporation Comet Lake Management Engine Interface
00:1d.0 PCI bridge: Intel Corporation Device 02b0 (rev f0)
00:1f.0 ISA bridge: Intel Corporation Device 0284
00:1f.3 Multimedia audio controller: Intel Corporation Device 02c8
00:1f.4 SMBus: Intel Corporation Device 02a3
00:1f.5 Serial bus controller [0c80]: Intel Corporation Comet Lake SPI (flash) Controller
01:00.0 Non-Volatile memory controller: Intel Corporation SSD Pro 7600p/760p/E 6100p Series (rev 03)

verbose-lspci.txt dmesg.txt

chrysophylax commented 4 years ago

This thing is as close to as Intel-stuffed as you can be so it' d be nice if it could have a great desktop experience with Intel's own distribution :dancer:

I cross-filed the bug with the SOF project since I'm unable to determine if it's an Intel ClearLinux issue or a Sound Open Firmware issue at https://github.com/thesofproject/sof/issues/2418

ahkok commented 4 years ago

Please check sudo dmesg and see if there's any relevant messages related to 00:1f.3...

chrysophylax commented 4 years ago

I'm unfortunately not able to grok what exactly this chain of messages indicates. I see that it 'failed to load DSP firmware' although it doesn't tell >me< much about where the issue is. :confused:

clrlinux@clr-live~ $ sudo dmesg | grep 00:1f.3
[    2.216191] pci 0000:00:1f.3: Adding to iommu group 9
[    7.352473] snd_hda_intel 0000:00:1f.3: DSP detected with PCI class/subclass/prog-if info 0x040100
[    7.352720] snd_hda_intel 0000:00:1f.3: Digital mics found on Skylake+ platform, using SOF driver
[    7.352727] probe of 0000:00:1f.3 returned 0 after 264 usecs
[    8.075727] snd_soc_skl 0000:00:1f.3: DSP detected with PCI class/subclass/prog-if info 0x040100
[    8.076001] snd_soc_skl 0000:00:1f.3: Digital mics found on Skylake+ platform, using SOF driver
[    8.076008] probe of 0000:00:1f.3 returned 0 after 292 usecs
[    8.182132] sof-audio-pci 0000:00:1f.3: DSP detected with PCI class/subclass/prog-if info 0x040100
[    8.182408] sof-audio-pci 0000:00:1f.3: Digital mics found on Skylake+ platform, using SOF driver
[    8.182419] sof-audio-pci 0000:00:1f.3: enabling device (0000 -> 0002)
[    8.185437] sof-audio-pci 0000:00:1f.3: warning: No matching ASoC machine driver found
[    8.185449] sof-audio-pci 0000:00:1f.3: DSP detected with PCI class/subclass/prog-if 0x040100
[    8.185650] sof-audio-pci 0000:00:1f.3: use msi interrupt mode
[    8.185687] probe of 0000:00:1f.3 returned 1 after 3562 usecs
[    8.185822] sof-audio-pci 0000:00:1f.3: bound 0000:00:02.0 (ops i915_audio_component_bind_ops)
[    8.195971] sof-audio-pci 0000:00:1f.3: hda codecs found, mask 5
[    8.195974] sof-audio-pci 0000:00:1f.3: using HDA machine driver skl_hda_dsp_generic now
[    8.320505] sof-audio-pci 0000:00:1f.3: Direct firmware load for intel/sof/sof-cml.ri failed with error -2
[    8.320511] sof-audio-pci 0000:00:1f.3: error: request firmware intel/sof/sof-cml.ri failed err: -2
[    8.321348] sof-audio-pci 0000:00:1f.3: error: failed to load DSP firmware -2
[    8.322861] sof-audio-pci 0000:00:1f.3: error: sof_probe_work failed err: -2
clrlinux@clr-live~ $ 
ahkok commented 4 years ago

Direct firmware load for intel/sof/sof-cml.ri failed with error -2

ahkok commented 4 years ago

The sound card is detected, firmware loading failed, because, the firmware files are not in the appropriate release or project (yet).

chrysophylax commented 4 years ago

So that's what -2 means! Thanks for clarifying.

ahkok commented 4 years ago

I've added the firmwares to our packages but we still need the topology stuff, so, This likely needs a few more days until we have it figured out.

thiagomacieira commented 4 years ago

-2 is ENOENT ("No such file or directory")

chrysophylax commented 4 years ago

@ahkok thanks for the update. Once sound is in, I'd almost dare call this the ideal linux lappy wrt hardware compatibility.

chrysophylax commented 4 years ago

@ahkok we're having oops & hangs on 5.5.6 with the SOF intel drivers in the other thread ( https://github.com/thesofproject/sof/issues/2418 ). Is there a guide on how to bisect the ClearLinux kernel builds ?

ahkok commented 4 years ago

Generally you would not git bisect distribution kernels as they are not a logical git succession of patches - I would start with git bisecting the vanilla stable kernels that match the clearlinux kernels. So in this case, you'd bisect between v5.5.6 and v5.5.5 (or, whatever the last version was that you booted before).

ahkok commented 4 years ago

There's a lot more going wrong here and I'm going to sit down with upstream folks to iron this out - this will take a little bit of time, of course.