WCN6856 BT keep in OFF state after coldboot system

Bug #1967067 reported by You-Sheng Yang
10
This bug affects 1 person
Affects Status Importance Assigned to Milestone
HWE Next
Fix Released
Undecided
Unassigned
linux (Ubuntu)
Invalid
High
You-Sheng Yang
Focal
Invalid
Undecided
Unassigned
Jammy
Fix Released
High
You-Sheng Yang
Kinetic
Fix Released
Undecided
Unassigned
linux-oem-5.14 (Ubuntu)
Invalid
Undecided
Unassigned
Focal
Fix Released
High
You-Sheng Yang
Jammy
Invalid
Undecided
Unassigned
Kinetic
Invalid
Undecided
Unassigned
linux-oem-5.17 (Ubuntu)
Invalid
High
You-Sheng Yang
Focal
Invalid
Undecided
Unassigned
Jammy
Fix Released
High
You-Sheng Yang
Kinetic
Invalid
Undecided
Unassigned

Bug Description

[SRU Justification]

[Impact]

WCN6856 BT keep in OFF state after coldboot system.

[Fix]

Mainline commit 599ece4f8f07 ("Bluetooth: btusb: Improve stability for
QCA devices") added a 100ms delay for the underlying hw to apply
downloaded firmware.

[Test Case]

This can be reproduced and therefore verified by checkbox poweroff
stress test:

  $ checkbox-cli run com.canonical.certification::stress/poweroff

[Where problems could occur]

Unlikely to have side effect so far except slowing down boot process for
a tiny moment.

[Other Info]

While this is only in the v5.18 merge window, all the kernels in use are
affected and nominated here.

========== original bug report ==========

[Reproduce Steps]
1.Insert WCN6856 card to SUT.
2.Press power button to power on SUT.
3.Clean install Ubuntu 20.04.
4.Check BT function after installation is complete.
5.Coldboot system and check the BT function.
6.Repeat step5, Issue occur.
7.Only found with CB, can't reproduce on WB.

[Results]
 Expected Result
 BT function work normally.
 Actual Result
 BT has no function. Can't turn ON BT function. Need CB to recover BT function.
 "WB" and "swicth tab" cannot restore the BT function.

[Others]
Wifi function work normally.

CVE References

Revision history for this message
You-Sheng Yang (vicamo) wrote :

commit 599ece4f8f07 ("Bluetooth: btusb: Improve stability for QCA devices")[1] in mainline now and is to be released in v5.18.

[1]: https://github.com/torvalds/linux/commit/599ece4f8f073097904d411ee70280a2ec890ad3

tags: added: oem-priority originate-from-1966378 somerville
Changed in linux (Ubuntu Focal):
status: New → Invalid
Changed in linux-oem-5.14 (Ubuntu Jammy):
status: New → Invalid
Changed in linux-oem-5.17 (Ubuntu Focal):
status: New → Invalid
Changed in linux-oem-5.14 (Ubuntu Focal):
status: New → Triaged
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 1967067

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
You-Sheng Yang (vicamo) wrote :

Included in following kernels in https://launchpad.net/~canonical-hwe-team/+archive/ubuntu/intermediate-kernel
* linux-unstable/jammy version 5.17.0-9006.6+exp.9
* linux-oem-5.17/jammy version 5.17.0-9003.3+exp.5
* linux/jammy version 5.15.0-9024.24+exp.18
* linux-oem-5.14/focal version 5.14.0-9031.34+exp.62

Revision history for this message
Yao Wei (medicalwei) wrote :

Can confirm that 5.14.0-9031.34+exp.62 fixed this bug. cold-boot 50 times by script and BT can scan normally in all reboots.

Revision history for this message
You-Sheng Yang (vicamo) wrote :
description: updated
Changed in linux-oem-5.17 (Ubuntu Jammy):
assignee: nobody → You-Sheng Yang (vicamo)
importance: Undecided → High
status: New → In Progress
Changed in linux-oem-5.14 (Ubuntu Focal):
assignee: nobody → You-Sheng Yang (vicamo)
importance: Undecided → High
status: Triaged → In Progress
Changed in linux (Ubuntu Jammy):
assignee: nobody → You-Sheng Yang (vicamo)
importance: Undecided → High
status: Incomplete → In Progress
Timo Aaltonen (tjaalton)
Changed in linux-oem-5.17 (Ubuntu Jammy):
status: In Progress → Fix Committed
Changed in linux-oem-5.14 (Ubuntu Focal):
status: In Progress → 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
Revision history for this message
Yao Wei (medicalwei) wrote (last edit ):

With linux-oem-5.14/5.14.0-1033.36, this issue is not reproducible within 20 cold reboots.

A script is used to run rtcwake to cold boot 20 times and attach `bluetoothctl scan on` result to a log file. If the bluetooth device cannot be probed, the scan should output "No default controller available". There was no such error when using 5.14.0-1033.36 kernel.

tags: added: verification-done-focal
removed: verification-needed-focal
Revision history for this message
Yao Wei (medicalwei) wrote :
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
Stefan Bader (smb) wrote :

This never got applied to jammy...

Changed in linux-oem-5.17 (Ubuntu Jammy):
status: Fix Committed → In Progress
Stefan Bader (smb)
Changed in linux (Ubuntu Jammy):
status: In Progress → Fix Committed
Revision history for this message
Ubuntu Kernel Bot (ubuntu-kernel-bot) wrote :

This bug is awaiting verification that the linux/5.15.0-28.29 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-jammy' to 'verification-done-jammy'. If the problem still exists, change the tag 'verification-needed-jammy' to 'verification-failed-jammy'.

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-jammy
Revision history for this message
Launchpad Janitor (janitor) wrote :
Download full text (96.0 KiB)

This bug was fixed in the package linux-oem-5.17 - 5.17.0-1004.4

---------------
linux-oem-5.17 (5.17.0-1004.4) jammy; urgency=medium

  * jammy/linux-oem-5.17: 5.17.0-1004.4 -proposed tracker (LP: #1970584)

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

  * alsa: enable the cirrus-logic side-codec to make the speaker output sound
    (LP: #1965496)
    - spi: Make spi_alloc_device and spi_add_device public again
    - spi: Create helper API to lookup ACPI info for spi device
    - spi: Support selection of the index of the ACPI Spi Resource before alloc
    - spi: Add API to count spi acpi resources
    - platform/x86: i2c-multi-instantiate: Rename it for a generic serial driver
      name
    - platform/x86: serial-multi-instantiate: Reorganize I2C functions
    - platform/x86: serial-multi-instantiate: Add SPI support
    - ACPI / scan: Create platform device for CS35L41
    - [Config]: enable SERIAL_MULTI_INSTANTIATE

  * 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

  * DMCUB hangs if a PSR unsupported set version command is sent on AMD
    Rembrandt platform (LP: #1969407)
    - drm/amd/display: Only set PSR version when valid

  * Micmute LED support for Zbook Fury 16 G9 (LP: #1968892)
    - ALSA: hda/realtek: Add support for HP Laptops
    - ALSA: hda/realtek: Add mute and micmut LED support for Zbook Fury 17 G9

  * PCIE LnkCtl ASPM not enabled under VMD mode for Alder Lake platforms
    (LP: #1942160)
    - SAUCE: PCI/ASPM: Enable ASPM for links under VMD domain
    - SAUCE: PCI/ASPM: Enable LTR for endpoints behind VMD
    - SAUCE: vmd: fixup bridge ASPM by driver name instead

  * Support AMD P-State cpufreq control mechanism (LP: #1956509)
    - [Config] enable X86_AMD_PSTATE as built-in on amd64

  * Use kernel-testing repo from launchpad for ADT tests (LP: #1968016)
    - [Debian] Use kernel-testing repo from launchpad

  * Fix beacon loss for rtl8821ce on certain platforms (LP: #1969771)
    - SAUCE: rtw88: pci: 8821c: Disable 21ce completion timeout

  * 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

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

  * Miscellaneous Ubuntu changes
    - [Config] update configs and annotations after stable updates

  [ Ubuntu: 5.17.0-8.8~22.04.2 ]

  * jammy/linux-hwe-5.17: 5.17.0-8.8~22.04.2 -proposed tracker (LP: #1969219)
  * Packaging resync (LP: #1786013)
    - [Packaging] update Ubuntu.md
    - [Packaging] update update.conf

  [ Ubuntu: 5.17.0-8.8~22.04.1 ]

  * Empty entry

  [ Ubuntu: 5.17.0-8.8 ]

  * jammy/linux-unstable: 5.17.0-8.8 -proposed tracker (LP: #1969016)
  * Packaging resync (LP: #1786013)
    - debian/dkms-versions -- update from kernel-versions (main/master)

  [ Ubuntu: 5.17.0-7.7 ]

  * jammy/linux-unsta...

Changed in linux-oem-5.17 (Ubuntu Jammy):
status: In Progress → Fix Released
Revision history for this message
Launchpad Janitor (janitor) wrote :
Download full text (101.7 KiB)

This bug was fixed in the package linux - 5.15.0-35.36

---------------
linux (5.15.0-35.36) jammy; urgency=medium

  * CVE-2022-21499
    - SAUCE: debug: Lock down kgdb

linux (5.15.0-34.35) jammy; urgency=medium

  * jammy/linux: 5.15.0-34.35 -proposed tracker (LP: #1974322)

  * AMD APU s2idle is broken after the ASIC reset fix (LP: #1972134)
    - drm/amdgpu: unify BO evicting method in amdgpu_ttm
    - drm/amdgpu: explicitly check for s0ix when evicting resources

  * amd_gpio AMDI0030:00: Failed to translate GPIO pin 0x0000 to IRQ, err -517
    (LP: #1971597)
    - gpio: Request interrupts after IRQ is initialized

  * config CONFIG_HISI_PMU for kunpeng920 (LP: #1956086)
    - [Config] CONFIG_HISI_PMU=m

  * Mute/mic LEDs no function on EliteBook G9 platfroms (LP: #1970552)
    - ALSA: hda/realtek: Enable mute/micmute LEDs support for HP Laptops

  * network-manager/1.36.4-2ubuntu1 ADT test failure with linux/5.15.0-28.29
    (LP: #1971418)
    - Revert "rfkill: make new event layout opt-in"

  * PCIE LnkCtl ASPM not enabled under VMD mode for Alder Lake platforms
    (LP: #1942160)
    - SAUCE: vmd: fixup bridge ASPM by driver name instead

  * Mute/mic LEDs no function on HP EliteBook 845/865 G9 (LP: #1970178)
    - ALSA: hda/realtek: Enable mute/micmute LEDs and limit mic boost on EliteBook
      845/865 G9

  * 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

  * Screen sometimes can't update [Failed to post KMS update: CRTC property
    (GAMMA_LUT) not found] (LP: #1967274)
    - drm/i915/xelpd: Enable Pipe color support for D13 platform
    - drm/i915: Use unlocked register accesses for LUT loads
    - drm/i915/xelpd: Enable Pipe Degamma
    - drm/i915/xelpd: Add Pipe Color Lut caps to platform config

  * Jammy update: v5.15.35 upstream stable release (LP: #1969857)
    - drm/amd/display: Add pstate verification and recovery for DCN31
    - drm/amd/display: Fix p-state allow debug index on dcn31
    - hamradio: defer 6pack kfree after unregister_netdev
    - hamradio: remove needs_free_netdev to avoid UAF
    - cpuidle: PSCI: Move the `has_lpi` check to the beginning of the function
    - ACPI: processor idle: Check for architectural support for LPI
    - ACPI: processor: idle: fix lockup regression on 32-bit ThinkPad T40
    - btrfs: remove unused parameter nr_pages in add_ra_bio_pages()
    - btrfs: remove no longer used counter when reading data page
    - btrfs: remove unused variable in btrfs_{start,write}_dirty_block_groups()
    - soc: qcom: aoss: Expose send for generic usecase
    - dt-bindings: net: qcom,ipa: add optional qcom,qmp property
    - net: ipa: request IPA register values be retained
    - btrfs: release correct delalloc amount in direct IO write path
    - ALSA: core: Add snd_card_free_on_error() helper
    - ALSA: sis7019: Fix the missing error handling
    - ALSA: ali5451: Fix the missing snd_card_free() call at probe error
    - ALSA: als300: Fix the missing snd_card_free() call at probe error
    - ALSA: als4000: Fix ...

Changed in linux (Ubuntu Jammy):
status: Fix Committed → Fix Released
You-Sheng Yang (vicamo)
Changed in linux-oem-5.17 (Ubuntu):
status: In Progress → Invalid
Changed in linux (Ubuntu):
status: In Progress → Invalid
Changed in hwe-next:
status: New → Fix Released
Changed in linux (Ubuntu Kinetic):
status: New → Fix Released
Changed in linux-oem-5.14 (Ubuntu Kinetic):
status: New → Invalid
Changed in linux-oem-5.17 (Ubuntu Kinetic):
status: New → Invalid
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.