alsa/hda: the hdmi audio dosn't work on TGL machines

Bug #1917829 reported by Hui Wang
8
This bug affects 1 person
Affects Status Importance Assigned to Milestone
HWE Next
Fix Released
Undecided
Unassigned
linux (Ubuntu)
Fix Released
High
Hui Wang
Groovy
Fix Released
Medium
Unassigned
Hirsute
Fix Released
High
Hui Wang
linux-oem-5.10 (Ubuntu)
Invalid
High
Unassigned
Focal
Fix Released
High
Unassigned

Bug Description

[Impact]
On the TGL machines, we plug a dp mst hub to the thunderbolt port,
and plug a hdmi/dp monitor to the dp mst hub, then check the
gnome-sound-setting, could not find the hdmi/dp audio device.

[Fix]
backport a patch from upstream, this patch change to assign
the pcm slot dynamically on TGL macines.

[Test]
On 2 lenovo and dell TGL machines, plug dp mst hub and plug
2 monitors to the hub or to the machine hdmi/dp ports, check
the gnome-sound-setting, there are 2 hdmi/dp audio devices.
and they all could output sound.

[Where problems could occur]
After this change, the hdmi audio device number starts from 0, 1, ...,
while without this change, the hdmi audio device number is fix
mapped, it could be 3 or 5 directly. So if there is some userspace
applications depends on the fix mapped hdmi audio device, these
applicatons could not work on TGL machines.

So far, we don't know if those applications exists or not, but I
could confirm the ubuntu audio stack builds on the alsa-lib and
pulseaudio, this change will not affect the applications based
on the alsa-lib and pulseaudio.

And I already tested audio functions under ubuntu on the TGL machines,
there is no regression.

Hui Wang (hui.wang)
no longer affects: linux-oem (Ubuntu Groovy)
no longer affects: linux-oem (Ubuntu)
no longer affects: linux-oem (Ubuntu Focal)
no longer affects: linux-oem (Ubuntu Hirsute)
no longer affects: linux-oem-5.10 (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 1917829

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
Hui Wang (hui.wang)
no longer affects: linux (Ubuntu Focal)
Changed in linux (Ubuntu Focal):
status: New → In Progress
importance: Undecided → High
Changed in linux (Ubuntu Groovy):
importance: Undecided → High
Changed in linux (Ubuntu Hirsute):
importance: Undecided → High
Changed in linux-oem-5.10 (Ubuntu):
importance: Undecided → High
Changed in linux-oem-5.10 (Ubuntu Focal):
importance: Undecided → High
Changed in linux (Ubuntu Groovy):
status: New → In Progress
Changed in linux (Ubuntu Hirsute):
status: Incomplete → In Progress
Changed in linux-oem-5.10 (Ubuntu):
status: New → In Progress
Changed in linux-oem-5.10 (Ubuntu Focal):
status: New → In Progress
Hui Wang (hui.wang)
tags: added: oem-priority originate-from-1911427 somerville
Hui Wang (hui.wang)
description: updated
Stefan Bader (smb)
Changed in linux (Ubuntu Groovy):
importance: High → Medium
Changed in linux (Ubuntu Focal):
importance: High → Medium
Changed in linux-oem-5.10 (Ubuntu):
status: In Progress → Invalid
Hui Wang (hui.wang)
no longer affects: linux (Ubuntu Focal)
Timo Aaltonen (tjaalton)
Changed in linux-oem-5.10 (Ubuntu Focal):
status: In Progress → Fix Committed
Changed in linux (Ubuntu Groovy):
status: In Progress → Fix Committed
Changed in linux (Ubuntu Hirsute):
status: In Progress → Fix Committed
Revision history for this message
Ubuntu Kernel Bot (ubuntu-kernel-bot) wrote :

This bug is awaiting verification that the kernel in -proposed solves the problem. Please test the kernel and update this bug with the results. If the problem is solved, change the tag 'verification-needed-focal' to 'verification-done-focal'. If the problem still exists, change the tag 'verification-needed-focal' to 'verification-failed-focal'.

If verification is not done by 5 working days from today, this fix will be dropped from the source code, and this bug will be closed.

See https://wiki.ubuntu.com/Testing/EnableProposed for documentation how to enable and use -proposed. Thank you!

tags: added: verification-needed-focal
Revision history for this message
Hui Wang (hui.wang) wrote :

Plugged 2 monitors into the Dell dock, and plug the dock to the dell TGL machines, we could see 2 hdmi audio devices, all worked well.

verified done.

tags: added: verification-done-focal
removed: verification-needed-focal
Revision history for this message
Launchpad Janitor (janitor) wrote :
Download full text (35.2 KiB)

This bug was fixed in the package linux-oem-5.10 - 5.10.0-1017.18

---------------
linux-oem-5.10 (5.10.0-1017.18) focal; urgency=medium

  * focal/linux-oem-5.10: 5.10.0-1017.18 -proposed tracker (LP: #1917468)

  * Fix Lenovo ThinkStation P620 rear audio (LP: #1917842)
    - ALSA: usb-audio: Disable USB autosuspend properly in
      setup_disable_autosuspend()

  * alsa/hda: the hdmi audio dosn't work on TGL machines (LP: #1917829)
    - ALSA: hda/hdmi: let new platforms assign the pcm slot dynamically

  * drm/i915: Drop force_probe requirement for JSL (LP: #1917843)
    - SAUCE: drm/i915: Drop require_force_probe from JSL

  * Add in-tree Realtek 8821CE wireless module support (LP: #1885862)
    - rtw88: coex: 8821c: correct antenna switch function
    - rtw88: 8821c: Correct CCK RSSI
    - rtw88: 8821c: support RFE type2 wifi NIC

  * Can't adjust brightness on Dell Precision 7000 laptop (LP: #1917419)
    - drm/i915: Init lspcon after HPD in intel_dp_detect()
    - drm/i915/dp: Program source OUI on eDP panels

  * Please trust Canonical Livepatch Service kmod signing key (LP: #1898716)
    - [Config] enable CONFIG_MODVERSIONS=y
    - [Packaging] build canonical-certs.pem from branch/arch certs
    - [Config] add Canonical Livepatch Service key to SYSTEM_TRUSTED_KEYS
    - [Config] add ubuntu-drivers key to SYSTEM_TRUSTED_KEYS
    - [Config] enable CONFIG_MODVERSIONS=y
    - [Packaging] build canonical-certs.pem from branch/arch certs

  * Packaging resync (LP: #1786013)
    - [Packaging] update update.conf

  * Missing device id for Intel TGL-H ISH [8086:43fc] in intel-ish-hid driver
    (LP: #1914543)
    - SAUCE: HID: intel-ish-hid: ipc: Add Tiger Lake H PCI device ID

  * Fix broken efifb on graphics device without driver (LP: #1914411)
    - SAUCE: efifb: Ensure graphics device for efifb stays at PCI D0

  * Focal update: v5.10.18 upstream stable release (LP: #1917004)
    - vdpa_sim: remove hard-coded virtq count
    - vdpa_sim: add struct vdpasim_dev_attr for device attributes
    - vdpa_sim: store parsed MAC address in a buffer
    - vdpa_sim: make 'config' generic and usable for any device type
    - vdpa_sim: add get_config callback in vdpasim_dev_attr
    - IB/isert: add module param to set sg_tablesize for IO cmd
    - net: qrtr: Fix port ID for control messages
    - mptcp: skip to next candidate if subflow has unacked data
    - net/sched: fix miss init the mru in qdisc_skb_cb
    - mt76: mt7915: fix endian issues
    - mt76: mt7615: fix rdd mcu cmd endianness
    - net: sched: incorrect Kconfig dependencies on Netfilter modules
    - net: openvswitch: fix TTL decrement exception action execution
    - net: bridge: Fix a warning when del bridge sysfs
    - net: fix proc_fs init handling in af_packet and tls
    - Xen/x86: don't bail early from clear_foreign_p2m_mapping()
    - Xen/x86: also check kernel mapping in set_foreign_p2m_mapping()
    - Xen/gntdev: correct dev_bus_addr handling in gntdev_map_grant_pages()
    - Xen/gntdev: correct error checking in gntdev_map_grant_pages()
    - xen/arm: don't ignore return errors from set_phys_to_machine
    - xen-blkback: don't "handle" error by BUG()
    - xen-netback: don't "h...

Changed in linux-oem-5.10 (Ubuntu Focal):
status: Fix Committed → Fix Released
Revision history for this message
Ubuntu Kernel Bot (ubuntu-kernel-bot) wrote :

This bug is awaiting verification that the kernel in -proposed solves the problem. Please test the kernel and update this bug with the results. If the problem is solved, change the tag 'verification-needed-groovy' to 'verification-done-groovy'. If the problem still exists, change the tag 'verification-needed-groovy' to 'verification-failed-groovy'.

If verification is not done by 5 working days from today, this fix will be dropped from the source code, and this bug will be closed.

See https://wiki.ubuntu.com/Testing/EnableProposed for documentation how to enable and use -proposed. Thank you!

tags: added: verification-needed-groovy
Revision history for this message
Hui Wang (hui.wang) wrote :

With the groovy kernel, plugged 2 monitors into the Dell dock, and plug the dock to the dell TGL machines, we could see 2 hdmi audio devices, all worked well.

verified done on groovy.

tags: added: verification-done-groovy
removed: verification-needed-groovy
Revision history for this message
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package linux - 5.11.0-13.14

---------------
linux (5.11.0-13.14) hirsute; urgency=medium

  * CVE-2020-27170
    - bpf: Prohibit alu ops for pointer types not defining ptr_limit
    - bpf, selftests: Fix up some test_verifier cases for unprivileged

  * CVE-2020-27171
    - bpf: Fix off-by-one for area size in creating mask to left

 -- Andrea Righi <email address hidden> Fri, 19 Mar 2021 16:49:32 +0100

Changed in linux (Ubuntu Hirsute):
status: Fix Committed → Fix Released
Revision history for this message
Launchpad Janitor (janitor) wrote :
Download full text (28.3 KiB)

This bug was fixed in the package linux - 5.8.0-49.55

---------------
linux (5.8.0-49.55) groovy; urgency=medium

  * groovy/linux: 5.8.0-49.55 -proposed tracker (LP: #1921053)

  * selftests: bpf verifier fails after sanitize_ptr_alu fixes (LP: #1920995)
    - bpf: Simplify alu_limit masking for pointer arithmetic
    - bpf: Add sanity check for upper ptr_limit
    - bpf, selftests: Fix up some test_verifier cases for unprivileged

  * Packaging resync (LP: #1786013)
    - update dkms package versions

  * improper memcg accounting causes NULL pointer derefs (LP: #1918668)
    - SAUCE: Revert "mm: memcg/slab: optimize objcg stock draining"

  * kernel: Enable CONFIG_BPF_LSM on Ubuntu (LP: #1905975)
    - [Config] Enable CONFIG_BPF_LSM

  * Groovy update: upstream stable patchset 2021-03-10 (LP: #1918516)
    - gpio: mvebu: fix pwm .get_state period calculation
    - HID: wacom: Correct NULL dereference on AES pen proximity
    - media: v4l2-subdev.h: BIT() is not available in userspace
    - RDMA/vmw_pvrdma: Fix network_hdr_type reported in WC
    - kernel/io_uring: cancel io_uring before task works
    - io_uring: dont kill fasync under completion_lock
    - objtool: Don't fail on missing symbol table
    - mm/page_alloc: add a missing mm_page_alloc_zone_locked() tracepoint
    - mm: fix a race on nr_swap_pages
    - tools: Factor HOSTCC, HOSTLD, HOSTAR definitions
    - iwlwifi: provide gso_type to GSO packets
    - tty: avoid using vfs_iocb_iter_write() for redirected console writes
    - ACPI: sysfs: Prefer "compatible" modalias
    - kernel: kexec: remove the lock operation of system_transition_mutex
    - ALSA: hda/realtek: Enable headset of ASUS B1400CEPE with ALC256
    - ALSA: hda/via: Apply the workaround generically for Clevo machines
    - parisc: Enable -mlong-calls gcc option by default when !CONFIG_MODULES
    - media: cec: add stm32 driver
    - media: hantro: Fix reset_raw_fmt initialization
    - media: rc: fix timeout handling after switch to microsecond durations
    - media: rc: ite-cir: fix min_timeout calculation
    - media: rc: ensure that uevent can be read directly after rc device register
    - ARM: dts: tbs2910: rename MMC node aliases
    - ARM: dts: ux500: Reserve memory carveouts
    - ARM: dts: imx6qdl-gw52xx: fix duplicate regulator naming
    - wext: fix NULL-ptr-dereference with cfg80211's lack of commit()
    - ASoC: AMD Renoir - refine DMI entries for some Lenovo products
    - drm/i915: Always flush the active worker before returning from the wait
    - drm/i915/gt: Always try to reserve GGTT address 0x0
    - drivers/nouveau/kms/nv50-: Reject format modifiers for cursor planes
    - net: usb: qmi_wwan: added support for Thales Cinterion PLSx3 modem family
    - s390: uv: Fix sysfs max number of VCPUs reporting
    - s390/vfio-ap: No need to disable IRQ after queue reset
    - PM: hibernate: flush swap writer after marking
    - x86/entry: Emit a symbol for register restoring thunk
    - efi/apple-properties: Reinstate support for boolean properties
    - drivers: soc: atmel: Avoid calling at91_soc_init on non AT91 SoCs
    - drivers: soc: atmel: add null entry at the end of at91_soc_allowed_list[]
   ...

Changed in linux (Ubuntu Groovy):
status: Fix Committed → Fix Released
Timo Aaltonen (tjaalton)
Changed in hwe-next:
status: New → Fix Released
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.