[XPS 13 7390 2-in-1, Intel Icelake HDMI, Digital Out, HDMI] sound rarely works

Bug #1879401 reported by Nathan Bryant
22
This bug affects 4 people
Affects Status Importance Assigned to Milestone
linux (Ubuntu)
Confirmed
Undecided
Unassigned

Bug Description

I have an Ice Lake laptop (Dell 7390 2-in-one) which I am connecting to a TV over HDMI via a Novoo USB-C multiport adapter. This is not a Thunderbolt device, it is just USB-C.

It seemed like things used to work fine before I upgraded this system from Ubuntu 19.10 to 20.04, although I couldn't say for certain at this point. But I'm having a ton of difficulty getting audio output over HDMI. Getting it to work requires a lot of retries to reinitialize the device (either by suspending/resuming the laptop, or plugging/unplugging the HDMI cable and/or the multiport adapter). It does work sometimes, but my success rate is very low at this point.

Even when it does work, it's brittle: any change to the output port (to speaker and back to HDMI, or from stereo to surround and back) will often break the audio. This fact seems to suggest that the problem doesn't have anything to do with the low-level initialization of the HDMI port; I'd be looking at some mid-layer code.

To be clear, there doesn't seem to be any particular symptom, or anything of interest in the logs, other than an absence of sound output.

ProblemType: Bug
DistroRelease: Ubuntu 20.04
Package: alsa-base 1.0.25+dfsg-0ubuntu5
ProcVersionSignature: Ubuntu 5.6.0-1010.10-oem 5.6.8
Uname: Linux 5.6.0-1010-oem x86_64
ApportVersion: 2.20.11-0ubuntu27
Architecture: amd64
AudioDevicesInUse:
 USER PID ACCESS COMMAND
 /dev/snd/controlC0: nbryant 1510 F.... pulseaudio
 /dev/snd/pcmC0D9p: nbryant 1510 F...m pulseaudio
CasperMD5CheckResult: skip
CurrentDesktop: ubuntu:GNOME
Date: Mon May 18 17:32:11 2020
InstallationDate: Installed on 2020-01-31 (108 days ago)
InstallationMedia: Ubuntu 19.10 "Eoan Ermine" - Release amd64 (20191017)
PackageArchitecture: all
ProcEnviron:
 TERM=xterm-256color
 PATH=(custom, no user)
 XDG_RUNTIME_DIR=<set>
 LANG=en_US.UTF-8
 SHELL=/bin/bash
SourcePackage: alsa-driver
Symptom: audio
Symptom_Card: Built-in Audio - HDA Intel PCH
Symptom_Jack: Digital Out, HDMI
Symptom_PulseAudioLog:
 May 18 16:36:42 atlantis dbus-daemon[633]: [system] Activating via systemd: service name='org.freedesktop.RealtimeKit1' unit='rtkit-daemon.service' requested by ':1.41' (uid=124 pid=1116 comm="/usr/bin/pulseaudio --daemonize=no --log-target=jo" label="unconfined")
 May 18 16:36:53 atlantis systemd[1109]: pulseaudio.service: Succeeded.
 May 18 16:37:03 atlantis systemd[1109]: pulseaudio.socket: Succeeded.
Symptom_Type: Sound works for a while, then breaks
Title: [XPS 13 7390 2-in-1, Intel Icelake HDMI, Digital Out, HDMI] fails after a while
UpgradeStatus: Upgraded to focal on 2020-04-21 (27 days ago)
dmi.bios.date: 03/02/2020
dmi.bios.vendor: Dell Inc.
dmi.bios.version: 1.3.1
dmi.board.name: 06CDVY
dmi.board.vendor: Dell Inc.
dmi.board.version: A00
dmi.chassis.type: 31
dmi.chassis.vendor: Dell Inc.
dmi.modalias: dmi:bvnDellInc.:bvr1.3.1:bd03/02/2020:svnDellInc.:pnXPS1373902-in-1:pvr:rvnDellInc.:rn06CDVY:rvrA00:cvnDellInc.:ct31:cvr:
dmi.product.family: XPS
dmi.product.name: XPS 13 7390 2-in-1
dmi.product.sku: 08B0
dmi.sys.vendor: Dell Inc.
---
ProblemType: Bug
ApportVersion: 2.20.11-0ubuntu27
Architecture: amd64
AudioDevicesInUse:
 USER PID ACCESS COMMAND
 /dev/snd/controlC0: nbryant 1510 F.... pulseaudio
CasperMD5CheckResult: skip
CurrentDesktop: ubuntu:GNOME
DistroRelease: Ubuntu 20.04
InstallationDate: Installed on 2020-01-31 (108 days ago)
InstallationMedia: Ubuntu 19.10 "Eoan Ermine" - Release amd64 (20191017)
Lsusb:
 Bus 004 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
 Bus 003 Device 003: ID 8087:0026 Intel Corp.
 Bus 003 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
 Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
 Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
MachineType: Dell Inc. XPS 13 7390 2-in-1
Package: linux (not installed)
ProcEnviron:
 TERM=xterm-256color
 PATH=(custom, no user)
 XDG_RUNTIME_DIR=<set>
 LANG=en_US.UTF-8
 SHELL=/bin/bash
ProcFB: 0 i915drmfb
ProcKernelCmdLine: BOOT_IMAGE=/boot/vmlinuz-5.6.0-1010-oem root=UUID=caffa21a-82f2-4555-a416-67926241525a ro cma=64M pcie_aspm.policy=powersupersave drm.vblankoffdelay=1 video=1600x1200 mem_sleep_default=deep
ProcVersionSignature: Ubuntu 5.6.0-1010.10-oem 5.6.8
RelatedPackageVersions:
 linux-restricted-modules-5.6.0-1010-oem N/A
 linux-backports-modules-5.6.0-1010-oem N/A
 linux-firmware 1.187
Tags: focal
Uname: Linux 5.6.0-1010-oem x86_64
UpgradeStatus: Upgraded to focal on 2020-04-21 (27 days ago)
UserGroups: adm cdrom dip docker lpadmin lxd plugdev sambashare sudo
_MarkForUpload: True
dmi.bios.date: 03/02/2020
dmi.bios.vendor: Dell Inc.
dmi.bios.version: 1.3.1
dmi.board.name: 06CDVY
dmi.board.vendor: Dell Inc.
dmi.board.version: A00
dmi.chassis.type: 31
dmi.chassis.vendor: Dell Inc.
dmi.modalias: dmi:bvnDellInc.:bvr1.3.1:bd03/02/2020:svnDellInc.:pnXPS1373902-in-1:pvr:rvnDellInc.:rn06CDVY:rvrA00:cvnDellInc.:ct31:cvr:
dmi.product.family: XPS
dmi.product.name: XPS 13 7390 2-in-1
dmi.product.sku: 08B0
dmi.sys.vendor: Dell Inc.

Revision history for this message
Nathan Bryant (nbryant42) wrote :
affects: alsa-driver (Ubuntu) → linux (Ubuntu)
Revision history for this message
Ubuntu Kernel Bot (ubuntu-kernel-bot) wrote : Missing required logs.

This bug is missing log files that will aid in diagnosing the problem. While running an Ubuntu kernel (not a mainline or third-party kernel) please enter the following command in a terminal window:

apport-collect 1879401

and then change the status of the bug to 'Confirmed'.

If, due to the nature of the issue you have encountered, you are unable to run this command, please add a comment stating that fact and change the bug status to 'Confirmed'.

This change has been made by an automated script, maintained by the Ubuntu Kernel Team.

Changed in linux (Ubuntu):
status: New → Incomplete
Revision history for this message
Nathan Bryant (nbryant42) wrote : AlsaInfo.txt

apport information

tags: added: apport-collected
description: updated
Revision history for this message
Nathan Bryant (nbryant42) wrote : CRDA.txt

apport information

Revision history for this message
Nathan Bryant (nbryant42) wrote : CurrentDmesg.txt

apport information

Revision history for this message
Nathan Bryant (nbryant42) wrote : IwConfig.txt

apport information

Revision history for this message
Nathan Bryant (nbryant42) wrote : Lspci.txt

apport information

Revision history for this message
Nathan Bryant (nbryant42) wrote : Lspci-vt.txt

apport information

Revision history for this message
Nathan Bryant (nbryant42) wrote : Lsusb-t.txt

apport information

Revision history for this message
Nathan Bryant (nbryant42) wrote : Lsusb-v.txt

apport information

Revision history for this message
Nathan Bryant (nbryant42) wrote : ProcCpuinfo.txt

apport information

Revision history for this message
Nathan Bryant (nbryant42) wrote : ProcCpuinfoMinimal.txt

apport information

Revision history for this message
Nathan Bryant (nbryant42) wrote : ProcInterrupts.txt

apport information

Revision history for this message
Nathan Bryant (nbryant42) wrote : ProcModules.txt

apport information

Revision history for this message
Nathan Bryant (nbryant42) wrote : PulseList.txt

apport information

Revision history for this message
Nathan Bryant (nbryant42) wrote : RfKill.txt

apport information

Revision history for this message
Nathan Bryant (nbryant42) wrote : UdevDb.txt

apport information

Revision history for this message
Nathan Bryant (nbryant42) wrote : WifiSyslog.txt

apport information

Changed in linux (Ubuntu):
status: Incomplete → Confirmed
Revision history for this message
Nathan Bryant (nbryant42) wrote :

I did some more testing today:

* linux-image-5.4.0-31-generic --> not any better

* linux-image-5.4.0-32-generic --> not any better

* linux-image-5.6.0-1010-oem after removing kernel command line pcie_aspm.policy=powersupersave --> not any better

* linux-image-5.4.0-32-generic after removing kernel command line pcie_aspm.policy=powersupersave --> seems better so far, but of course this is something of an intermittent problem, so time will tell. However, there is still a very reproducible similar problem, in that any time I switch to surround sound mode and back to stereo that breaks it permanently.

Revision history for this message
Nathan Bryant (nbryant42) wrote :

Tested some mainline kernels, no luck. None of the following seem to be any better:

* 5.6.13
* 5.7-rc6
* drm-tip 202005190212

Revision history for this message
Kai-Heng Feng (kaihengfeng) wrote :
Revision history for this message
Nathan Bryant (nbryant42) wrote :

I'm having trouble coming up with a pin to get the PPA to install with apt update && apt upgrade. Why doesn't this work?

nbryant@atlantis:/etc/apt/preferences.d$ cat fix
Package: *
Pin: release o=LP-PPA-kaihengfeng-fix-lp1869819
Pin-Priority: 999

Revision history for this message
Nathan Bryant (nbryant42) wrote :

Sorry, I got it! Priority needs to be 1000 or more for a "downgrade"

Revision history for this message
Nathan Bryant (nbryant42) wrote :

I tested the PPA. It doesn't help. If anything, it might make things a bit worse.

Also, I can now confirm that I spoke a bit too soon in comment #19 when I said "linux-image-5.4.0-32-generic after removing kernel command line pcie_aspm.policy=powersupersave --> seems better so far". That configuration does seem a bit better, but exhibited the problem again a few times just now.

I'm not even sure this is a userspace problem. A week or two ago I ripped out pulseaudio and the rest of the ALSA userspace stack and replaced it with the packages from Eoan. That was on an older kernel but it didn't help.

Revision history for this message
Kai-Heng Feng (kaihengfeng) wrote :

Can you please test the 5.3 kernel, which is used in 19.10?

Revision history for this message
Nathan Bryant (nbryant42) wrote :

Tested version_signature Ubuntu 5.3.0-53.47-generic 5.3.18. Unfortunately the problem persists.

Revision history for this message
Nathan Bryant (nbryant42) wrote :

By the way, the TV I'm connecting to is an LG C9 running firmware 04.71.25 (current as of this writing) which is further connected to a Sony STR-DH750 via HDMI ARC. I connect the laptop via the TV, not the receiver, and problem persists whether TV is on or off.

Revision history for this message
Nathan Bryant (nbryant42) wrote :

*meant to say, whether receiver is on or off.

Revision history for this message
Nathan Bryant (nbryant42) wrote :

I have another system that I connect to this TV. It's built around an old Haswell, Z87-chipset desktop motherboard. I installed Linux on it today, to test this, and so far it seems to work fine.

I noticed that the Haswell doesn't even support ASPM; the BIOS either doesn't implement the required ACPI support, or it's disabled in one of the menus. Is that typical of more recent (Skylake and up) desktop boards?

In any case, I intend to run this laptop on 5.6.0-1010-oem for the next week or two with pcie_aspm.policy=performance and see if the issue resurfaces. So far, so good.

The ASPM policy can also be set at runtime; for example:
echo performance | sudo tee /sys/module/pcie_aspm/parameters/policy

Revision history for this message
sebastienhouze (sebastienhouze) wrote :

Hi, I have a Dell XPS 13 7390 and having the very same issue, sound is not working when I upgrade to 5.6.0-1010-oem but works on 5.6.0-1008-oem. Sound card is HDA Intel PCH and chipset Realtek ALC3271.

Revision history for this message
Nathan Bryant (nbryant42) wrote :

This may not be an ASPM issue after all. I just booted 5.6.0-1011-oem a few times with various settings, and had a few failures with pcie_aspm=off or pcie_aspm.policy=performance.

Revision history for this message
sebastienhouze (sebastienhouze) wrote :

it's still not working on 5.6.0-1011-oem I always boot on 5.6.0-1008-oem to have soundcard working.

Revision history for this message
Kai-Heng Feng (kaihengfeng) wrote :

Nathan,

Can you please upload logs when it's working?

Revision history for this message
Kai-Heng Feng (kaihengfeng) wrote :

sebastienhouze,

If the issue you are seeing is not the same (i.e. Type-c HUB -> HDMI), please file a separate bug.

Revision history for this message
Nathan Bryant (nbryant42) wrote :

@kaihengfeng,

Sure. I'm attaching the "dmesg -H" output from a run that worked.

My odds of success lately have been a bit better than "rarely works", but I still often need a few retries to get it working. A "retry" could mean unplugging and re-plugging the hub or HDMI cable, or simply suspending and resuming the laptop.

HDMI port detection has been flaky on most kernels I've tried. This means that sometimes I will get neither video nor audio, and will have to retry. Other times, I will get video but no audio.

What happened *this* time was that I had to retry twice to get video, but the first successful attempt which had video, also had audio.

Revision history for this message
Kai-Heng Feng (kaihengfeng) wrote :

Ok. The first two attempts did produce some useful error message:
[Jun19 15:55] [drm:intel_dp_get_link_train_fallback_values [i915]] *ERROR* Link Training Unsuccessful
[ +0.143341] [drm:intel_dp_get_link_train_fallback_values [i915]] *ERROR* Link Training Unsuccessful

Revision history for this message
Kai-Heng Feng (kaihengfeng) wrote :

Can you please install latest drm-tip kernel:
https://kernel.ubuntu.com/~kernel-ppa/mainline/drm-tip/current/

Then boot with kernel parameter "drm.debug=0xe log_buf_len=16M", reproduce both good and failed case, and attach dmesg here?

Revision history for this message
Nathan Bryant (nbryant42) wrote :

Hi @kaihengfeng, I'm happy to do that but it'll have to wait a few days for the 5.8-rc6 rebase. The bpfilter regression in rc5 is blocking for me.

Revision history for this message
Nathan Bryant (nbryant42) wrote :

Last night I built a kernel from drm-tip. CONFIG_BPFILTER is disabled because of regressions, otherwise config is the same as used in https://kernel.ubuntu.com/~kernel-ppa/mainline/drm-tip/current/

I was eventually able to reproduce the problem but it seemed like I need to reboot in order to do so. The first boot worked OK across many attempts. Attaching success and failed dmesg.

Revision history for this message
Nathan Bryant (nbryant42) wrote :

Now attaching failed dmesg.

Revision history for this message
Kai-Heng Feng (kaihengfeng) wrote :

Can you please attach `pactl list cards` when it fails?

Revision history for this message
Nathan Bryant (nbryant42) wrote :

Sure. pactl list cards output is identical on success and failure:

$ md5sum pactl-list-cards-*
1b3e54a38e363e16115a0428901f71ed pactl-list-cards-fail.txt
1b3e54a38e363e16115a0428901f71ed pactl-list-cards-success.txt

Revision history for this message
Nathan Bryant (nbryant42) wrote :

I don't know if it's relevant; it may very well not be, because after this kernel message (described below) things sometimes succeed, or sometimes fail.

But I noticed that there's a new feature in drm-tip (but not in mainline 5.8), for HDMI silent stream audio. I turned it on. It seems to work well, but only if power_save=0 is also specified. So I'm booting with two additional options on the kernel commandline: snd_hda_intel.power_save=0 snd_hda_codec_hdmi.enable_silent_stream=Y

When configured like this, it seems like 100% of the time there is this message when booting with HDMI already plugged in:

snd_hda_codec_hdmi hdaudioC0D2: Monitor plugged-in, Failed to power up codec ret=[-13]

I'm attaching the full dmesg from a run with debug turned on. This particular run seemed to fail to output audio at first, then it eventually succeeded after changing the output source in sound settings a few times. So I'll attach two files from the same bootup of this machine, if you do a "diff" between them you will see that "success" simply picks up where "failed" left off. It didn't start succeeding until sometime during the second file, I think.

Revision history for this message
Nathan Bryant (nbryant42) wrote :
Revision history for this message
Kai-Heng Feng (kaihengfeng) wrote :

Probably file an upstream bug at intel graphics upstream:
https://gitlab.freedesktop.org/drm/intel/wikis/How-to-file-i915-bugs

To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.