Fix non-working MT7921 BT after reboot

Bug #1966497 reported by Kai-Heng Feng
12
This bug affects 2 people
Affects Status Importance Assigned to Milestone
HWE Next
Fix Released
Undecided
Unassigned
linux-oem-5.14 (Ubuntu)
Invalid
Undecided
Unassigned
Focal
Fix Released
Medium
Unassigned

Bug Description

[Impact]
There's a high chance that MT7921 BT may go out to lunch after reboot.
Worse, there's no way to recover the controller unless the power cord is
unplugged.

[Fix]
In addition to SRU "Need to reset MT7921 BT when the firmware hang or
command no response", enable MSFT extension can magically solve the
issue.

[Test]
With the patch applied, the MT7921 BT continues to work after 100 times
reboots.

[Where problems could occur]
This fix is specific to MTK BT controllers, so the change is limited.

I totally don't understand why this patch can fix the issue, other than
it just does the trick. So I guess we have to accept the reality that
hardwares can have their own quirks.

Changed in linux-oem-5.14 (Ubuntu Focal):
status: New → Confirmed
importance: Undecided → Medium
Changed in linux-oem-5.14 (Ubuntu):
status: New → Invalid
tags: added: oem-priority originate-from-1961591 sutton
Timo Aaltonen (tjaalton)
Changed in linux-oem-5.14 (Ubuntu Focal):
status: Confirmed → Fix Committed
Revision history for this message
Ubuntu Kernel Bot (ubuntu-kernel-bot) wrote :

This bug is awaiting verification that the linux-oem-5.14/5.14.0-1033.36 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
tags: added: verification-done-focal
removed: verification-needed-focal
Revision history for this message
Launchpad Janitor (janitor) wrote :
Download full text (37.4 KiB)

This bug was fixed in the package linux-oem-5.14 - 5.14.0-1033.36

---------------
linux-oem-5.14 (5.14.0-1033.36) focal; urgency=medium

  * focal/linux-oem-5.14: 5.14.0-1033.36 -proposed tracker (LP: #1967397)

  * Bolt doesn't work with native USB4 hosts (LP: #1962349)
    - thunderbolt: Retry DROM reads for more failure scenarios
    - thunderbolt: Do not resume routers if UID is not set
    - thunderbolt: Do not make DROM read success compulsory
    - PCI/ACPI: Allow D3 only if Root Port can signal and wake from D3

  * Fix non-working MT7921 BT after reboot (LP: #1966497)
    - Bluetooth: btusb: Enable MSFT extension for Mediatek Chip (MT7921)

  * alsa/sdw: Fix the audio issue on a Dell machine without internal mic
    (LP: #1966841)
    - ASoC: Intel: soc-acpi: add entries in ADL match table

  * Enable headset mic on Lenovo P360 (LP: #1967069)
    - ALSA: hda/realtek: Enable headset mic on Lenovo P360

  * WCN6856 BT keep in OFF state after coldboot system (LP: #1967067)
    - Bluetooth: btusb: Improve stability for QCA devices

  * Focal update: upstream stable patchset 2022-03-21 (LP: #1965737)
    - mm/filemap: Fix handling of THPs in generic_file_buffered_read()
    - cgroup/cpuset: Fix a race between cpuset_attach() and cpu hotplug
    - cgroup-v1: Correct privileges check in release_agent writes
    - x86/ptrace: Fix xfpregs_set()'s incorrect xmm clearing
    - btrfs: tree-checker: check item_size for inode_item
    - btrfs: tree-checker: check item_size for dev_item
    - clk: jz4725b: fix mmc0 clock gating
    - io_uring: don't convert to jiffies for waiting on timeouts
    - io_uring: disallow modification of rsrc_data during quiesce
    - selinux: fix misuse of mutex_is_locked()
    - vhost/vsock: don't check owner in vhost_vsock_stop() while releasing
    - parisc/unaligned: Fix fldd and fstd unaligned handlers on 32-bit kernel
    - parisc/unaligned: Fix ldw() and stw() unalignment handlers
    - KVM: x86/mmu: make apf token non-zero to fix bug
    - drm/amd/display: Protect update_bw_bounding_box FPU code.
    - drm/amd/pm: fix some OEM SKU specific stability issues
    - drm/amdgpu: disable MMHUB PG for Picasso
    - drm/amdgpu: do not enable asic reset for raven2
    - drm/i915: Widen the QGV point mask
    - drm/i915: Correctly populate use_sagv_wm for all pipes
    - drm/i915: Fix bw atomic check when switching between SAGV vs. no SAGV
    - sr9700: sanity check for packet length
    - USB: zaurus: support another broken Zaurus
    - CDC-NCM: avoid overflow in sanity checking
    - netfilter: xt_socket: fix a typo in socket_mt_destroy()
    - netfilter: xt_socket: missing ifdef CONFIG_IP6_NF_IPTABLES dependency
    - tee: export teedev_open() and teedev_close_context()
    - optee: use driver internal tee_context for some rpc
    - ping: remove pr_err from ping_lookup
    - Revert "i40e: Fix reset bw limit when DCB enabled with 1 TC"
    - gpu: host1x: Always return syncpoint value when waiting
    - perf data: Fix double free in perf_session__delete()
    - mptcp: fix race in incoming ADD_ADDR option processing
    - mptcp: add mibs counter for ignored incoming options
    - selftests: mptcp: fix diag instability
 ...

Changed in linux-oem-5.14 (Ubuntu Focal):
status: Fix Committed → Fix Released
Revision history for this message
Timo Aaltonen (tjaalton) wrote :

included in 5.15

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