Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Dell XPS 17 (9710) No Audio #3057

Closed
mblack154 opened this issue Jul 22, 2021 · 59 comments
Closed

Dell XPS 17 (9710) No Audio #3057

mblack154 opened this issue Jul 22, 2021 · 59 comments
Labels
Community end-user or distro-reported issues Dell SDW SKU SDW Applies to SoundWire bus for codec connection TGL Applies to Tiger Lake platform

Comments

@mblack154
Copy link

mblack154 commented Jul 22, 2021

File bug with Ubuntu #1935850. https://bugs.launchpad.net/ubuntu/+source/alsa-driver/+bug/1935850

Filing bug based on last comment:

According to #15, it looks like the topology file is not suitable for this machine.
Please file a bug to Intel/sof, let Intel engineers take a look at this issue.
https://github.com/thesofproject/linux/issues/new

Let me know what other info you need.
Running Ubuntu 21.04

@plbossart
Copy link
Member

@mblack154 I see this in your dmesg log:

[ 4.655486] sof-audio-pci 0000:00:1f.3: ASoC: physical link SDW3-Capture (id 4) not exist

That points to a missing quirk in the machine driver, we typically have to skip some BE IDs to keep consistency across devices.

Can you please attach the output of 'sudo dmidecode'?
Also please add this file
sof-dyndbg.conf.txt
as /etc/modprobe.d/sof-dyndbg.conf and attach the dmesg log. I need to check which SoundWire devices you have on this system.

Thanks!

plbossart added a commit to plbossart/sound that referenced this issue Jul 22, 2021
This device has the same audio subsystem as the 0A5E skew (RT711
headset codec, 2 RT1308 amps and RT715 for mic capture)

BugLink: thesofproject#3057
Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
@mblack154
Copy link
Author

Here are the files.
dmidecode.txt
dmesg.txt

@plbossart
Copy link
Member

thanks @mblack154 can you try the patch in a312717

You may need to rename the RT711_JD2 as SOF_RT711_JD_SRC_JD2 since a recent commit changed the JD definition.
https://lore.kernel.org/alsa-devel/20210712203240.46960-7-pierre-louis.bossart@linux.intel.com/

@mblack154
Copy link
Author

Can you send me the build instructions. Have the branch downloaded and replaced the patch file.
Thanks

@plbossart
Copy link
Member

Sorry @mblack154 I don't know what setup you have. can you work with @jason77-wang on this?

@plbossart
Copy link
Member

FWIW I use ktest.pl with the instructions listed here: https://thesofproject.github.io/latest/getting_started/setup/setup_ktest_environment.html

But if you want to change a specific Ubuntu kernel that's a different story

@mblack154
Copy link
Author

Do you have another option? Looks like ktest wants to do this over an ssh connection. Keep current kernel version

@mblack154
Copy link
Author

I can contact @jason77-wang

@plbossart
Copy link
Member

@mblack154
Copy link
Author

Thanks

Compiling now. Trying with RT711_JD2 first. If that doesn't work will try with SOF_RT711_JD_SRC_JD2.

Let you know what happens.

@plbossart plbossart added Community end-user or distro-reported issues SDW Applies to SoundWire bus for codec connection TGL Applies to Tiger Lake platform labels Jul 22, 2021
@mohitt
Copy link

mohitt commented Jul 23, 2021

Hi @mblack154 I am newbie, did the compiling helped. I am also facing the same issue. I can also try to recompile, if there are clear set of instructions

@perrysteger
Copy link

Thanks

Compiling now. Trying with RT711_JD2 first. If that doesn't work will try with SOF_RT711_JD_SRC_JD2.

Let you know what happens.

Hi @mblack154 -- any luck getting your shiny new XPS 9710 booting error-free into Ubuntu 21.04? I have the identical issue.

@mblack154
Copy link
Author

Not yet. Get the kernel compiled, but it is locking up on boot.

@joeracer321
Copy link

Not yet. Get the kernel compiled, but it is locking up on boot.

I noticed this note on the Ubuntu mainline kernel wiki and I am curious if the out of tree modules are the reason your kernel is not booting:

First, if one is using select proprietary or out-of-tree modules (e.g. bcmwl, fglrx, NVIDIA proprietary graphics drivers, VirtualBox, etc.) unless there is an extra package available for the version you are testing, you will need to uninstall the module first, in order to test the mainline kernel. If you do not uninstall these modules first, then the upstream kernel may fail to install, or boot.

@mblack154
Copy link
Author

Any idea what is causing this when doing sudo make modules_install (binutils is installed)

arch/x86/Makefile:148: CONFIG_X86_X32 enabled but no binutils support
sed: can't read modules.order: No such file or directory
make: *** [Makefile:1485: __modinst_pre] Error 2

@joeracer321
Copy link

Any idea what is causing this when doing sudo make modules_install (binutils is installed)

arch/x86/Makefile:148: CONFIG_X86_X32 enabled but no binutils support
sed: can't read modules.order: No such file or directory
make: *** [Makefile:1485: __modinst_pre] Error 2

Are the 32bit libraries and bin utils installed? Did you try disabling 32bit support in the meantime?

@mblack154
Copy link
Author

Don't have the 32bit libraries installed but have disable 32bit in the .config file.

@mblack154
Copy link
Author

Got the kernel compiled this morning with the patch and I have sound. (5.14-rc2)

@plbossart
Copy link
Member

Thanks @mblack154, will send this upstream.

plbossart added a commit that referenced this issue Jul 26, 2021
This device has the same audio subsystem as the 0A5E skew (RT711
headset codec, 2 RT1308 amps and RT715 for mic capture)

BugLink: #3057
Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
@mohitt
Copy link

mohitt commented Jul 26, 2021

@mblack154 I suppose this would be 5.14-rc4 correct ?

plbossart added a commit that referenced this issue Aug 2, 2021
This device has the same audio subsystem as the 0A5E skew (RT711
headset codec, 2 RT1308 amps and RT715 for mic capture)

BugLink: #3057
Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
Reviewed-by: Kai Vehmanen <kai.vehmanen@linux.intel.com>
Reviewed-by: Ranjani Sridharan <ranjani.sridharan@linux.intel.com>
Reviewed-by: Bard Liao <bard.liao@intel.com>
Reviewed-by: FRED OH <fred.oh@intel.com>
fengguang pushed a commit to 0day-ci/linux that referenced this issue Aug 2, 2021
This device has the same audio subsystem as the 0A5E skew (RT711
headset codec, 2 RT1308 amps and RT715 for mic capture)

BugLink: thesofproject#3057
Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
Reviewed-by: Kai Vehmanen <kai.vehmanen@linux.intel.com>
Reviewed-by: Ranjani Sridharan <ranjani.sridharan@linux.intel.com>
Reviewed-by: Bard Liao <bard.liao@intel.com>
Reviewed-by: FRED OH <fred.oh@intel.com>
@wzrdtales
Copy link

Can't tell you. But fact is, after doing this there appeared more options inside alsamixer and I could configure it properly.

@wzrdtales
Copy link

The Dell 9070 also used SOF before already and required this step, so I don't think it should surprise too much as well. @plbossart

@plbossart
Copy link
Member

We have pretty much all Dell devices with SoundWire enabled, and we've never needed this configuration. if you can trace the history and who came up with the information that would be great. ArchWiki has a lot of information but in the case of SOF we routinely find 'surprising' information that isn't aligned with what we test/do.

Adding @kv2019i to this thread in case he's got any idea of what this might mean.

@wzrdtales
Copy link

my guess would be just the flag is important enable_msi

@plbossart
Copy link
Member

@wzrdtales try doing a blacklist snd-hda-intel and see what happens. I would bet there is no impact.

if you see the SOF driver code, we have a different option with MSI enabled by default.

#if IS_ENABLED(CONFIG_SND_SOC_SOF_DEBUG)
static bool hda_use_msi = true;
module_param_named(use_msi, hda_use_msi, bool, 0444);
MODULE_PARM_DESC(use_msi, "SOF HDA use PCI MSI mode");
#else
#define hda_use_msi	(1)
#endif

@wzrdtales
Copy link

Avanderbergh made that change though. I will try to blacklist it once and let you know

@wzrdtales
Copy link

ok @plbossart indeed, now if I blacklist or delete that modprobe entry. no difference. mic works and the options appear in alsamixer. Not sure what made this behave that weird. I initially installed alsa-utils which wasn't there before, but since that is no kernel component that shouldn't have had such a weird behavior. Dunno, a lot of things are weird currently on the new Dell 9710. I for example still get a non responding keyboard or trackpad randomly after booting or after some while of usage (didn't figure out yet where this comes from though). So I am surprised about exactly nothing right now...

@plbossart
Copy link
Member

@wzrdtales I have a tentative explanation: there is some level of sync between alsa-ctrl and UCM, the former relies on UCM files for initial mixer controls on boot. If you didn't have alsa-ctrl it's possible that the RT715 mixer values present in /usr/share/alsa/ucm2/codecs/rt715/init.conf were not set, and now they are.

@wzrdtales
Copy link

wzrdtales commented Sep 14, 2021

hm might be, but then rather caused by the first change to the rt715 values and the following reboot, rather than installing alsa-utils I guess. Now everything seems to work fine, also the soundwire audio devices did not yet disappear again, but will report back should that happen again.

@szbergeron
Copy link

Currently seeing the same behavior on a 9700. AFAIK it uses the exact same sound hardware as 9710. Maybe extend quirk to include 9700 as well?

@plbossart
Copy link
Member

@szbergeron please attach the results of 'alsa-info' so that we can check if the hardware is different, thanks!

@szbergeron
Copy link

@plbossart here's the output from alsa-info.sh

alsa-info.txt

@plbossart
Copy link
Member

@szbergeron we've had support for the SKU 098F for about two years now, it's a rather classic CometLake device with 2 amplifiers. The card is created alright and you expose the right configuration to userspace.

what is the issue you're seeing?

The only surprising things I see in your setup is the loopback, not sure why it's needed? and the configuration for servers looks weird

!!Sound Servers on this system
!!----------------------------

PipeWire:
      Installed - Yes (/usr/bin/pipewire)
      Running - Yes

No sound servers found. <<<< that's very odd since PipeWire is listed above.

@szbergeron
Copy link

@plbossart I get no signal for the built-in microphone or headphone microphone (but get input fine when using a usb headphone dac or wireless earbuds, so I think pw is handling input correctly). If it's off topic for this issue I can make a new one though

@plbossart
Copy link
Member

plbossart commented Feb 7, 2022

@szbergeron The headset mic is handled by the RT711 chip, and the local mics by the RT715 chips. They are exposed as separate ALSA devices.

you can try at the ALSA level by doing something like

alsaucm -c sof_sdw set _verb HiFi set _enadev Microphone
arecord -Dhw:1,4 -c2 -r48000 -f S16_LE

alsaucm -c sof_sdw set _verb HiFi set _enadev 'Jack In'
arecord -Dhw:1,1 -c2 -r48000 -f S16_LE

If you see any activity on the console then it proves my point that userspace is not working.

@szbergeron
Copy link

szbergeron commented Feb 7, 2022

@plbossart I don't have an sof_sdw device, only sof-soundwire. On that I don't have any entries in _enadevs to pick from:
image

The given command augmented with -c sof-soundwire yields:
image

@plbossart
Copy link
Member

try this @szbergeron

alsaucm -c sof-soundwire set _verb HiFi set _enadev Mic
alsaucm -c sof-soundwire set _verb HiFi set _enadev Headset

@szbergeron
Copy link

try this @szbergeron

alsaucm -c sof-soundwire set _verb HiFi set _enadev Mic
alsaucm -c sof-soundwire set _verb HiFi set _enadev Headset

That does seem to make arecord show terminal activity. Bummer, guess the problem is higher up.

@plbossart
Copy link
Member

@szbergeron I would try an update of alsa-ucm-conf and pipewire, it's likely between those two that there is a mismatch.

@szbergeron
Copy link

@plbossart both are currently running the latest stable version packaged for arch (alsa-ucm-conf 1.2.6.3-1 and pipewire 1:0.3.45-1) so not sure

@wzrdtales
Copy link

mic audio started to break again for me as well...

@wzrdtales
Copy link

wzrdtales commented Feb 16, 2022

https://0bin.net/paste/iDN-m8qZ#cC1ApntGgFpIDVlMNVBcXvXoJ3HuBHp+3ZjPJUNvbqq

already downgraded several resources still not functional again

with latest components. mic not working, checked under windows to check the mic in general, it works over there. so dunno what broke just now...

https://0bin.net/paste/zG5Qs7Kk#dsuCwknU02wozlrmTuVhOv8gx2yd48oN+Wec6Jmwvol

@wzrdtales
Copy link

ok after some research i found a note that told to deactivate and activate audio in the bios. weirdly that helped...

@plbossart
Copy link
Member

ok after some research i found a note that told to deactivate and activate audio in the bios. weirdly that helped...

@wzrdtales can you share your sources, this doesn't seem quite right indeed?

@wzrdtales
Copy link

it doesn't seem right at all. I tried downgrading to packages that I KNOW were working and it still didn't work. So I gave it a shot and to my own surprise... it worked.

I found the hint here for the older XPS model: https://unix.stackexchange.com/questions/637992/how-to-fix-xps-9700-microphone-given-audio-is-fixed

@wzrdtales
Copy link

my only guess is I did boot the windows partition which I never use unless I am on travel and once in a while want to consume some HDR content (which unfortunately still is nothing we have under linux :( ). booting into my real system again left the mic disfunctional. So I guess that this was related...

@plbossart
Copy link
Member

@wzrdtales pure speculation and possible red-herring: some Dell devices have support for a microphone privacy feature. It's possible that somehow the privacy feature was engaged and the only way to remove it was to toggle the entire audio off/on again. This is clearly not an SOF bug proper, more an issue with the configuration of the external mic codec

@wzrdtales
Copy link

wzrdtales commented Feb 17, 2022 via email

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Community end-user or distro-reported issues Dell SDW SKU SDW Applies to SoundWire bus for codec connection TGL Applies to Tiger Lake platform
Projects
None yet
Development

No branches or pull requests

7 participants