On Thu, Jul 3, 2025 at 12:57 PM Michael <confabul...@kintzios.com> wrote:
> On Thursday, 3 July 2025 16:34:00 British Summer Time John Blinka wrote: > > Hello Gentooers, > > > > I could use some help getting sound to work on the above hardware. > > > > Googling shows that there has been widespread difficulty with this > > sound card on many distros. I haven't found a consensus on how to get > > it to work. Some folks have resorted to blacklisting various sound > > modules in modprobe.d. However, it does seem to work on Ubuntu, > > specifically ubuntu-22.04 (which uses a 6.6 kernel) and ubuntu-25 > > (which uses a 6.14 kernel). > > > > I did get sound to work on the 6.6 series of gentoo-sources by copying > > things from ubuntu-22.04. Enabling SND_HDA_CODEC_HDMI was critical to > > success as was using ubuntu's /etc/modprobe.d/alsa-base.conf. > > > > When the 6.12 gentoo-sources arrived, I built a 6.12 kernel starting > > with the working 6.6 gentoo-sources and doing a "make olddefconfig". > > That's my usual kernel upgrade technique. But there's no sound. I have > > read that sound has received a substantial reworking between the 6.6 > > and 6.12 kernel series. > > > > On gentoo-sources-6.6.92, dmesg gives: > > > > sof-audio-pci-intel-tgl 0000:00:1f.3: DSP detected with PCI > > class/subclass/prog-if info 0x040100 > > sof-audio-pci-intel-tgl 0000:00:1f.3: SoundWire enabled on CannonLake+ > > platform, using SOF driver > > sof-audio-pci-intel-tgl 0000:00:1f.3: enabling device (0000 -> 0002) > > sof-audio-pci-intel-tgl 0000:00:1f.3: DSP detected with PCI > > class/subclass/prog-if 0x040100 > > sof-audio-pci-intel-tgl 0000:00:1f.3: bound 0000:00:02.0 (ops i915_exit > > [i915]) sof-audio-pci-intel-tgl 0000:00:1f.3: use msi interrupt mode > > sof-audio-pci-intel-tgl 0000:00:1f.3: hda codecs found, mask 4 > > Loading firmware: intel/sof/sof-rpl.ri > > sof-audio-pci-intel-tgl 0000:00:1f.3: Firmware info: version 2:2:0-57864 > > sof-audio-pci-intel-tgl 0000:00:1f.3: Firmware: ABI 3:22:1 Kernel ABI > 3:23:0 > > sof-audio-pci-intel-tgl 0000:00:1f.3: unknown sof_ext_man header type 3 > > size 0x30 > > sof-audio-pci-intel-tgl 0000:00:1f.3: Firmware info: version 2:2:0-57864 > > sof-audio-pci-intel-tgl 0000:00:1f.3: Firmware: ABI 3:22:1 Kernel ABI > 3:23:0 > > Loading firmware: > intel/sof-tplg/sof-rpl-rt711-l0-rt1316-l12-rt714-l3.tplg > > sof-audio-pci-intel-tgl 0000:00:1f.3: Topology: ABI 3:22:1 Kernel ABI > > 3:23:0 sof_sdw sof_sdw: ASoC: Parent card not yet available, widget card > > binding deferred > > sof_sdw sof_sdw: hda_dsp_hdmi_build_controls: no PCM in topology for > > HDMI converter 3 > > input: sof-soundwire Headset Jack as > > /devices/pci0000:00/0000:00:1f.3/sof_sdw/sound/card0/input10 > > input: sof-soundwire HDMI/DP,pcm=5 as > > /devices/pci0000:00/0000:00:1f.3/sof_sdw/sound/card0/input11 > > input: sof-soundwire HDMI/DP,pcm=6 as > > /devices/pci0000:00/0000:00:1f.3/sof_sdw/sound/card0/input12 > > input: sof-soundwire HDMI/DP,pcm=7 as > > /devices/pci0000:00/0000:00:1f.3/sof_sdw/sound/card0/input13 > > > > On gentoo-sources 6.12.31, dmesg gives: > > > > sof-audio-pci-intel-tgl 0000:00:1f.3: SoundWire enabled on CannonLake+ > > platform, using SOF driver > > sof-audio-pci-intel-tgl 0000:00:1f.3: enabling device (0000 -> 0002) > > sof-audio-pci-intel-tgl 0000:00:1f.3: DSP detected with PCI > > class/subclass/prog-if 0x040100 > > sof-audio-pci-intel-tgl 0000:00:1f.3: bound 0000:00:02.0 (ops i915_exit > > [i915]) sof-audio-pci-intel-tgl 0000:00:1f.3: use msi interrupt mode > > sof-audio-pci-intel-tgl 0000:00:1f.3: hda codecs found, mask 4 > > sof-audio-pci-intel-tgl 0000:00:1f.3: NHLT device BT(0) detected, > ssp_mask > > 0x4 sof-audio-pci-intel-tgl 0000:00:1f.3: BT link detected in NHLT > tables: > > 0x4 sof-audio-pci-intel-tgl 0000:00:1f.3: DMICs detected in NHLT tables: > 0 > > Loading firmware: intel/sof/sof-rpl.ri > > Loading firmware: > intel/sof-tplg/sof-rpl-rt711-l0-rt1316-l12-rt714-l3.tplg > > sof-audio-pci-intel-tgl 0000:00:1f.3: Firmware paths/files for ipc type > 0: > > sof-audio-pci-intel-tgl 0000:00:1f.3: Firmware file: > > intel/sof/sof-rpl.ri sof-audio-pci-intel-tgl 0000:00:1f.3: Topology > file: > > intel/sof-tplg/sof-rpl-rt711-l0-rt1316-l12-rt714-l3.tplg > > Loading firmware: intel/sof/sof-rpl.ri > > sof-audio-pci-intel-tgl 0000:00:1f.3: Firmware info: version 2:2:0-57864 > > sof-audio-pci-intel-tgl 0000:00:1f.3: Firmware: ABI 3:22:1 Kernel ABI > 3:23:1 > > sof-audio-pci-intel-tgl 0000:00:1f.3: unknown sof_ext_man header type 3 > > size 0x30 > > sof-audio-pci-intel-tgl 0000:00:1f.3: Firmware info: version 2:2:0-57864 > > sof-audio-pci-intel-tgl 0000:00:1f.3: Firmware: ABI 3:22:1 Kernel ABI > 3:23:1 > > > > I don't really know how to interpret the dmesg outputs, but it seems > > that the 6.6.92 output indicates that it has identified several card0 > > devices. The 6.12.31 output is missing comparable output. This > > difference is reflected in /proc/asound/cards. > > > > In 6.6.92, /proc/asound/cards contains > > 0 [sofsoundwire ]: sof-soundwire - sof-soundwire > > Intel Soundwire SOF > > But in 6.12.31, /proc/asound/cards contains > > --- no soundcards --- > > > > I'm completely lost. Does anyone understand how to get modern Intel > > sound to work on modern kernels? > > > > Thanks in advance for any ideas! > > > > John Blinka > > I don't have your hardware to compare notes, but I suggest you start with > this: > > https://wiki.gentoo.org/wiki/ALSA I’m familiar with this, and have used it extensively in the past, but it doesn’t appear to be helpful with this problem. It doesn’t address snd_soc_sof, which appears to be necessary for this hardware. <https://wiki.gentoo.org/wiki/ALSA> > > and in particular boot with Ubuntu, or whichever liveUSB allows your audio > to > work and run: > > lsmod There are 39 modules whose names begin with “snd_” or “sound”. The list is the same on the working ubuntu-25 and the non-working gentoo kernel 6.12 systems. > lscpci | grep -i audio Same output on working ubuntu-25 and non-working gentoo kernel 6.12 systems. > lspci -knn Same output for “Multimedia audio controller” entry on working ubuntu-25 and non-working gentoo kernel 6.12 systems > > > The above will give you a hint as to what drivers are required. In > addition, > the output of dmesg will show any firmware your hardware needs. Both working ubuntu-25 and non-working gentoo kernel 6.12 systems load the same firmware and topology files. I expect you > would need to emerge: > > media-sound/alsa-utils > sys-firmware/sof-firmware Already emerged these. And they’re up to date. > > > Finally, you can compare Ubuntu's output of 'zcat /proc/config.gz' with > the > audio modules you have enabled in your kernel and add what's relevant to > your > hardware. There are a *lot* of audio modules in use according to lsmod. But they’re the same in both working ubuntu and non-working gentoo. It’s difficult to compare the working ubuntu config (based on a 6.14 kernel) and the non-working gentoo config (based in a 6.12 kernel). But I’m thinking that the identical lsmod output implies that the gentoo config supports the necessary hardware. I appreciate your ideas! I’ve noticed that using ubuntu’s /etc/modprobe.d/alsa-base.conf was crucial to successful sound in gentoo with a 6.6 kernel. Given that I appear to be using the same kernel modules as ubuntu, and the same firmware and topology files, perhaps my problem lies in how modprobe.d operates? Unfortunately, I do not understand what ubuntu is doing with alsa-base.conf. John Blinka