View previous topic :: View next topic |
Author |
Message |
saltychippies22 n00b

Joined: 31 May 2022 Posts: 9
|
Posted: Wed Jun 01, 2022 12:50 am Post subject: Can't get Tiger Lake-H HD Audio Controller to work |
|
|
Code: |
0000:00:1f.3 Multimedia audio controller: Intel Corporation Tiger Lake-H HD Audio Controller (rev 11)
|
Hi, I am installing gentoo for the first time (and posting to a forum for the first time) but I cannot get my soundcard to work. I had Arch installed before and the sound worked with no special setup at all.
I am doing this on a XPS 17 9710.
I also have no idea what I am doing.
I have everything else working like X, a wm, and the wifi, I am even posting this on a browser from gentoo.
Pages I have found that are relevent are:
https://old.reddit.com/r/Dell/comments/hl5z86/xps_17_9700_working_audio_on_linux_details_in/
https://forums.gentoo.org/viewtopic-p-8685070.html
https://wiki.gentoo.org/wiki/ALSA#Laptops_with_HDMI_audio_output
https://wiki.gentoo.org/wiki/Dell_XPS_17
https://forums.gentoo.org/viewtopic-t-1097442-start-0.html
The second link is a person who said his output works but can't get the mic to work, meaning that getting sound to work on this should be possible since someone else did it before.
There are people on old Arch posts saying that it was bugged and to wait for the new kernel version. Also my old Arch install (where the sound card worked) was also a newer kernel version so I changed to the latest kernel version (instead of 5.15) to try and make it as similar as possible.
Kernel version:
Code: |
$ ls -l /usr/src/
total 8
lrwxrwxrwx 1 root root 22 May 30 23:17 linux -> linux-5.18.1-gentoo-r1
drwxr-xr-x 21 root root 4096 May 30 23:15 linux-5.15.41-gentoo
drwxr-xr-x 25 root root 4096 May 31 12:58 linux-5.18.1-gentoo-r1
|
From the bottom link I tried to follow the guys kernel config and he said it only woked with the ALSA stuff set as modules instead of built in so I also did that.
Here is my kernel .config in /usr/src/linux:
https://pastebin.com/Xs05VUNd
From the 4th link, where a guy who also tried to install gentoo on an XPS 17 (same laptop as mine) posted his "lspci -k" output and I have gotten mine pretty similar to his.
Code: |
$ lspci -k
0000:00:00.0 Host bridge: Intel Corporation 11th Gen Core Processor Host Bridge/DRAM Registers (rev 05)
Subsystem: Dell 11th Gen Core Processor Host Bridge/DRAM Registers
0000:00:01.0 PCI bridge: Intel Corporation 11th Gen Core Processor PCIe Controller #1 (rev 05)
Subsystem: Dell 11th Gen Core Processor PCIe Controller
Kernel driver in use: pcieport
0000:00:02.0 VGA compatible controller: Intel Corporation TigerLake-H GT1 [UHD Graphics] (rev 01)
DeviceName: Onboard - Video
Subsystem: Dell TigerLake-H GT1 [UHD Graphics]
Kernel driver in use: i915
0000:00:04.0 Signal processing controller: Intel Corporation TigerLake-LP Dynamic Tuning Processor Participant (rev 05)
Subsystem: Dell TigerLake-LP Dynamic Tuning Processor Participant
0000:00:07.0 PCI bridge: Intel Corporation Tiger Lake-H Thunderbolt 4 PCI Express Root Port #0 (rev 05)
Subsystem: Dell Tiger Lake-H Thunderbolt 4 PCI Express Root Port
Kernel driver in use: pcieport
0000:00:07.1 PCI bridge: Intel Corporation Tiger Lake-H Thunderbolt 4 PCI Express Root Port #1 (rev 05)
Subsystem: Dell Tiger Lake-H Thunderbolt 4 PCI Express Root Port
Kernel driver in use: pcieport
0000:00:07.2 PCI bridge: Intel Corporation Tiger Lake-H Thunderbolt 4 PCI Express Root Port #2 (rev 05)
Subsystem: Dell Tiger Lake-H Thunderbolt 4 PCI Express Root Port
Kernel driver in use: pcieport
0000:00:07.3 PCI bridge: Intel Corporation Tiger Lake-H Thunderbolt 4 PCI Express Root Port #3 (rev 05)
Subsystem: Dell Tiger Lake-H Thunderbolt 4 PCI Express Root Port
Kernel driver in use: pcieport
0000:00:0a.0 Signal processing controller: Intel Corporation Tigerlake Telemetry Aggregator Driver (rev 01)
Subsystem: Dell Tigerlake Telemetry Aggregator Driver
Kernel driver in use: intel_vsec
0000:00:0d.0 USB controller: Intel Corporation Tiger Lake-H Thunderbolt 4 USB Controller (rev 05)
Subsystem: Dell Tiger Lake-H Thunderbolt 4 USB Controller
Kernel driver in use: xhci_hcd
0000:00:0d.2 USB controller: Intel Corporation Tiger Lake-H Thunderbolt 4 NHI #0 (rev 05)
Subsystem: Dell Tiger Lake-H Thunderbolt 4 NHI
0000:00:0d.3 USB controller: Intel Corporation Tiger Lake-H Thunderbolt 4 NHI #1 (rev 05)
Subsystem: Dell Tiger Lake-H Thunderbolt 4 NHI
0000:00:0e.0 RAID bus controller: Intel Corporation Volume Management Device NVMe RAID Controller
Subsystem: Dell Volume Management Device NVMe RAID Controller
Kernel driver in use: vmd
0000:00:12.0 Serial controller: Intel Corporation Device 43fc (rev 11)
Subsystem: Dell Device 0a5d
Kernel driver in use: intel_ish_ipc
0000:00:14.0 USB controller: Intel Corporation Tiger Lake-H USB 3.2 Gen 2x1 xHCI Host Controller (rev 11)
Subsystem: Dell Tiger Lake-H USB 3.2 Gen 2x1 xHCI Host Controller
Kernel driver in use: xhci_hcd
0000:00:14.2 RAM memory: Intel Corporation Tiger Lake-H Shared SRAM (rev 11)
Subsystem: Dell Tiger Lake-H Shared SRAM
0000:00:14.3 Network controller: Intel Corporation Tiger Lake PCH CNVi WiFi (rev 11)
Subsystem: Rivet Networks Tiger Lake PCH CNVi WiFi
Kernel driver in use: iwlwifi
Kernel modules: iwlwifi
0000:00:15.0 Serial bus controller: Intel Corporation Tiger Lake-H Serial IO I2C Controller #0 (rev 11)
Subsystem: Dell Tiger Lake-H Serial IO I2C Controller
Kernel driver in use: intel-lpss
0000:00:15.1 Serial bus controller: Intel Corporation Device 43e9 (rev 11)
Subsystem: Dell Device 0a5d
Kernel driver in use: intel-lpss
0000:00:16.0 Communication controller: Intel Corporation Tiger Lake-H Management Engine Interface (rev 11)
Subsystem: Dell Tiger Lake-H Management Engine Interface
Kernel driver in use: mei_me
0000:00:1c.0 PCI bridge: Intel Corporation Device 43be (rev 11)
Subsystem: Dell Device 0a5d
Kernel driver in use: pcieport
0000:00:1f.0 ISA bridge: Intel Corporation Device 4389 (rev 11)
Subsystem: Dell Device 0a5d
0000:00:1f.3 Multimedia audio controller: Intel Corporation Tiger Lake-H HD Audio Controller (rev 11)
Subsystem: Dell Tiger Lake-H HD Audio Controller
Kernel driver in use: snd_hda_intel
Kernel modules: snd_hda_intel, snd_sof_pci_intel_tgl
0000:00:1f.4 SMBus: Intel Corporation Tiger Lake-H SMBus Controller (rev 11)
Subsystem: Dell Tiger Lake-H SMBus Controller
Kernel driver in use: i801_smbus
0000:00:1f.5 Serial bus controller: Intel Corporation Tiger Lake-H SPI Controller (rev 11)
Subsystem: Dell Tiger Lake-H SPI Controller
0000:01:00.0 3D controller: NVIDIA Corporation GA107M [GeForce RTX 3050 Mobile] (rev a1)
Subsystem: Dell GA107M [GeForce RTX 3050 Mobile]
Kernel driver in use: nouveau
0000:aa:00.0 Unassigned class [ff00]: Realtek Semiconductor Co., Ltd. RTS5260 PCI Express Card Reader (rev 01)
Subsystem: Dell RTS5260 PCI Express Card Reader
Kernel driver in use: rtsx_pci
10000:e0:01.0 System peripheral: Intel Corporation Device 09ab
10000:e0:01.1 PCI bridge: Intel Corporation Device 9a05 (rev 05)
Subsystem: Dell Device 0a5d
Kernel driver in use: pcieport
10000:e1:00.0 Non-Volatile memory controller: SK hynix Gold P31 SSD
Subsystem: SK hynix Gold P31 SSD
Kernel driver in use: nvme
|
It says there are drivers and modules for it (which I think is good?).
I don't know if this is useful but here is lsmod output:
Code: |
$ lsmod
Module Size Used by
snd_sof_pci_intel_tgl 16384 0
snd_sof_intel_hda_common 86016 1 snd_sof_pci_intel_tgl
iwlmvm 413696 0
snd_sof_intel_hda 16384 1 snd_sof_intel_hda_common
snd_hda_codec_hdmi 69632 1
snd_sof_pci 20480 2 snd_sof_intel_hda_common,snd_sof_pci_intel_tgl
snd_sof 151552 2 snd_sof_pci,snd_sof_intel_hda_common
snd_sof_utils 16384 1 snd_sof
snd_sof_xtensa_dsp 16384 1 snd_sof_intel_hda_common
snd_soc_hdac_hda 20480 1 snd_sof_intel_hda_common
mac80211 917504 1 iwlmvm
snd_hda_ext_core 32768 3 snd_sof_intel_hda_common,snd_soc_hdac_hda,snd_sof_intel_hda
snd_soc_acpi_intel_match 65536 2 snd_sof_intel_hda_common,snd_sof_pci_intel_tgl
snd_soc_acpi 16384 2 snd_soc_acpi_intel_match,snd_sof_intel_hda_common
libarc4 16384 1 mac80211
snd_soc_core 303104 3 snd_sof,snd_sof_intel_hda_common,snd_soc_hdac_hda
snd_compress 20480 1 snd_soc_core
snd_pcm_dmaengine 16384 1 snd_soc_core
snd_hda_intel 45056 0
snd_intel_dspcfg 28672 2 snd_hda_intel,snd_sof_intel_hda_common
dell_laptop 32768 0
dell_wmi 16384 0
snd_hda_codec 147456 3 snd_hda_codec_hdmi,snd_hda_intel,snd_soc_hdac_hda
iwlwifi 450560 1 iwlmvm
dell_smbios 20480 2 dell_wmi,dell_laptop
snd_hwdep 16384 1 snd_hda_codec
snd_hda_core 106496 7 snd_hda_codec_hdmi,snd_hda_intel,snd_hda_ext_core,snd_hda_codec,snd_sof_intel_hda_common,snd_soc_hdac_hda,snd_sof_intel_hda
dell_wmi_sysman 36864 0
snd_pcm 135168 10 snd_hda_codec_hdmi,snd_hda_intel,snd_hda_codec,snd_sof,snd_sof_intel_hda_common,snd_compress,snd_soc_core,snd_sof_utils,snd_hda_core,snd_pcm_dmaengine
dcdbas 16384 1 dell_smbios
dell_wmi_descriptor 16384 2 dell_wmi,dell_smbios
firmware_attributes_class 16384 1 dell_wmi_sysman
snd_timer 36864 1 snd_pcm
snd 90112 9 snd_hda_codec_hdmi,snd_hwdep,snd_hda_intel,snd_hda_codec,snd_sof,snd_timer,snd_compress,snd_soc_core,snd_pcm
cfg80211 950272 3 iwlmvm,iwlwifi,mac80211
|
also the alsa.conf:
Code: |
$ cat /etc/modprobe.d/alsa.conf
# Alsa kernel modules' configuration file.
# ALSA portion
alias char-major-116 snd
# OSS/Free portion
alias char-major-14 soundcore
##
## IMPORTANT:
## You need to customise this section for your specific sound card(s)
## and then run `update-modules' command.
## Read alsa-driver's INSTALL file in /usr/share/doc for more info.
##
## ALSA portion
## alias snd-card-0 snd-interwave
## alias snd-card-1 snd-ens1371
## OSS/Free portion
## alias sound-slot-0 snd-card-0
## alias sound-slot-1 snd-card-1
##
# OSS/Free portion - card #1
alias sound-service-0-0 snd-mixer-oss
alias sound-service-0-1 snd-seq-oss
alias sound-service-0-3 snd-pcm-oss
alias sound-service-0-8 snd-seq-oss
alias sound-service-0-12 snd-pcm-oss
## OSS/Free portion - card #2
## alias sound-service-1-0 snd-mixer-oss
## alias sound-service-1-3 snd-pcm-oss
## alias sound-service-1-12 snd-pcm-oss
alias /dev/mixer snd-mixer-oss
alias /dev/dsp snd-pcm-oss
alias /dev/midi snd-seq-oss
# Set this to the correct number of cards.
#options snd cards_limit=1
options snd cards_limit=2
options snd-hda-intel index=1,0
|
I have no ~/.asoundrc
When I do speaker test it doesn't work:
Code: |
$ speaker-test
speaker-test 1.2.6
Playback device is default
Stream parameters are 48000Hz, S16_LE, 1 channels
Using 16 octaves of pink noise
ALSA lib /var/tmp/portage/media-libs/alsa-lib-1.2.6.1/work/alsa-lib-1.2.6.1/src/confmisc.c:855:(parse_card) cannot find card '0'
ALSA lib /var/tmp/portage/media-libs/alsa-lib-1.2.6.1/work/alsa-lib-1.2.6.1/src/conf.c:5178:(_snd_config_evaluate) function snd_func_card_inum returned error: No such file or directory
ALSA lib /var/tmp/portage/media-libs/alsa-lib-1.2.6.1/work/alsa-lib-1.2.6.1/src/confmisc.c:422:(snd_func_concat) error evaluating strings
ALSA lib /var/tmp/portage/media-libs/alsa-lib-1.2.6.1/work/alsa-lib-1.2.6.1/src/conf.c:5178:(_snd_config_evaluate) function snd_func_concat returned error: No such file or directory
ALSA lib /var/tmp/portage/media-libs/alsa-lib-1.2.6.1/work/alsa-lib-1.2.6.1/src/confmisc.c:1334:(snd_func_refer) error evaluating name
ALSA lib /var/tmp/portage/media-libs/alsa-lib-1.2.6.1/work/alsa-lib-1.2.6.1/src/conf.c:5178:(_snd_config_evaluate) function snd_func_refer returned error: No such file or directory
ALSA lib /var/tmp/portage/media-libs/alsa-lib-1.2.6.1/work/alsa-lib-1.2.6.1/src/conf.c:5701:(snd_config_expand) Evaluate error: No such file or directory
ALSA lib /var/tmp/portage/media-libs/alsa-lib-1.2.6.1/work/alsa-lib-1.2.6.1/src/pcm/pcm.c:2664:(snd_pcm_open_noupdate) Unknown PCM default
Playback open error: -2,No such file or directory
|
also aplay doesn't show the card (I think):
Code: |
$ aplay -L
null
Discard all samples (playback) or generate zero samples (capture)
hdmi:CARD=PCH,DEV=0
HDA Intel PCH, HDMI 0
HDMI Audio Output
hdmi:CARD=PCH,DEV=1
HDA Intel PCH, HDMI 1
HDMI Audio Output
hdmi:CARD=PCH,DEV=2
HDA Intel PCH, HDMI 2
HDMI Audio Output
hdmi:CARD=PCH,DEV=3
HDA Intel PCH, HDMI 3
HDMI Audio Output
hdmi:CARD=PCH,DEV=4
HDA Intel PCH, HDMI 4
HDMI Audio Output
hdmi:CARD=PCH,DEV=5
HDA Intel PCH, HDMI 5
HDMI Audio Output
hdmi:CARD=PCH,DEV=6
HDA Intel PCH, HDMI 6
HDMI Audio Output
hdmi:CARD=PCH,DEV=7
HDA Intel PCH, HDMI 7
HDMI Audio Output
hdmi:CARD=PCH,DEV=8
HDA Intel PCH, HDMI 8
HDMI Audio Output
hdmi:CARD=PCH,DEV=9
HDA Intel PCH, HDMI 9
HDMI Audio Output
hdmi:CARD=PCH,DEV=10
HDA Intel PCH, HDMI 10
HDMI Audio Output
|
And dmesg:
https://pastebin.com/unPm9dTH
Sorry if there is something really obvious I am missing or if this forum post is all wrong, I can't find any help online and I have been trying to fix this for 2 afternoons. |
|
Back to top |
|
 |
saltychippies22 n00b

Joined: 31 May 2022 Posts: 9
|
Posted: Wed Jun 01, 2022 1:01 am Post subject: |
|
|
Forgot to say also have this installed which I think is enough:
Code: |
$ qlist -I | grep firmware
sys-firmware/sof-firmware
sys-kernel/linux-firmware
$ qlist -I | grep -i alsa
media-libs/alsa-lib
media-libs/alsa-topology-conf
media-libs/alsa-ucm-conf
media-sound/alsa-utils
|
|
|
Back to top |
|
 |
mike155 Advocate

Joined: 17 Sep 2010 Posts: 4438 Location: Frankfurt, Germany
|
Posted: Wed Jun 01, 2022 2:09 am Post subject: |
|
|
saltychippies22,
welcome to the Gentoo forums!
According to this post and this pull request, the notebook 'has the same audio subsystem as the 0A5E skew (RT711 headset codec, 2 RT1308 amps and RT715 for mic capture)'.
Therefore, it might help to enable the SOC modules for the Realtek RT711, RT715 and RT1308 devices.
Run 'make menuconfig' and go to:
Code: | Main menu
-> Device Drivers
-> Sound card support (SOUND [=y])
-> Advanced Linux Sound Architecture (SND [=y])
-> ALSA for SoC audio support (SND_SOC [=y])
-> CODEC drivers |
If you don't see the modules for the Realtek RT711, RT715 and RT1308 devices, press Z. That will show hidden options
Code: | - - Realtek RT711 Codec - SDW
- - Realtek RT711 SDCA Codec - SDW
- - Realtek RT715 Codec - SDW
- - Realtek RT715 SDCA Codec - SDW
- - Realtek RT1308 Codec - SDW |
Move the selection bar to one of those options and press H for help. There's a line that starts with "Depends on". You must enable all modules shown in that line before you can select the module.
Mike |
|
Back to top |
|
 |
saltychippies22 n00b

Joined: 31 May 2022 Posts: 9
|
Posted: Wed Jun 01, 2022 2:38 am Post subject: |
|
|
Ok I had to enable soundwire for those hidden options. I tried activating the codec drivers you mentioned as modules, then as built in, then activated everything in that codec directory as both builtin and modules, but nothing made a difference, other than the HDMI entries dissapered from aplay when I switched to built in, now it just says no graphics card detected. |
|
Back to top |
|
 |
saltychippies22 n00b

Joined: 31 May 2022 Posts: 9
|
Posted: Wed Jun 01, 2022 2:44 am Post subject: |
|
|
I was wrong, enabling soundwire as either a module or built in makes the HDMI entries in "aplay -L" disappear, not the codecs. |
|
Back to top |
|
 |
saltychippies22 n00b

Joined: 31 May 2022 Posts: 9
|
Posted: Wed Jun 01, 2022 3:09 am Post subject: |
|
|
Actually never mind I am dumb, after enabling those there is some extra stuff in dmesg saying some stuff failed
Code: |
[ 1.749544] Loading firmware: intel/sof/sof-tgl-h.ri
[ 1.751831] sof-audio-pci-intel-tgl 0000:00:1f.3: Direct firmware load for intel/sof/sof-tgl-h.ri failed with error -2
[ 1.753018] sof-audio-pci-intel-tgl 0000:00:1f.3: error: sof firmware file is missing, you might need to
[ 1.754220] sof-audio-pci-intel-tgl 0000:00:1f.3: download it from https://github.com/thesofproject/sof-bin/
[ 1.754475] PM: Magic number: 10:350:6
[ 1.755374] sof-audio-pci-intel-tgl 0000:00:1f.3: error: failed to load DSP firmware -2
[ 1.757721] printk: console [netcon0] enabled
[ 1.758135] irq/169-AudioDS (181) used greatest stack depth: 15136 bytes left
[ 1.758254] sof-audio-pci-intel-tgl 0000:00:1f.3: error: sof_probe_work failed err: -2
|
|
|
Back to top |
|
 |
saltychippies22 n00b

Joined: 31 May 2022 Posts: 9
|
Posted: Wed Jun 01, 2022 3:40 am Post subject: |
|
|
Ok so I disabled almost every codec except the ones you mentioned (and some were locked) and everything under ALSA was set to a module instead of built in, then soundwire is also a module, then it finally worked, kind of. Three are no errors in dmesg, speaker test doesn't crash but doesn't play sound, and alsamixer shows a bunch of options. I think I just need to mess with more stuff now.
Thank you for helping, I probably would never have been able to figure out which codecs I was supposed to enable. |
|
Back to top |
|
 |
saltychippies22 n00b

Joined: 31 May 2022 Posts: 9
|
Posted: Wed Jun 01, 2022 5:40 am Post subject: |
|
|
Actually I didn't get it to work. I had somehow enabled the kernel option "soundwire generic machine driver" which made it look ALSA detected the soundcard when it actually didn't |
|
Back to top |
|
 |
saltychippies22 n00b

Joined: 31 May 2022 Posts: 9
|
Posted: Wed Jun 01, 2022 11:45 pm Post subject: |
|
|
Ok turns out I am very dumb. I just needed to install pulse audio (wasted like 5 hours messing with the kernel ): ), I though the speaker-test could work with only ALSA and not pulseaudio but I also don't really understand anything.
For future people I had all the modules Mike said to do as modules instead of built in, then installed alsa and pulseaudio then it worked.
Also here is my kernel config (for "linux-5.18.1-gentoo-r1" but it will probably work on the older ones) because I was randomly flipping on and off for a whole day so I might have something on that magically makes it works somehow and didn't notice. Also if you are using XPS 17 9710 I think it gots everything working exept the touchpad and touchscreen.
I'm going to try and mark this as solved. |
|
Back to top |
|
 |
saltychippies22 n00b

Joined: 31 May 2022 Posts: 9
|
|
Back to top |
|
 |
|
|
You cannot post new topics in this forum You cannot reply to topics in this forum You cannot edit your posts in this forum You cannot delete your posts in this forum You cannot vote in polls in this forum
|
|