2023-08-19 09:22:08

by bugzilla-daemon

[permalink] [raw]
Subject: [Bug 217805] New: Qualcomm NFA725A on T14s AMD Gen3: Bluetooth: hci0: Failed to send headers (or body or access otp area)

https://bugzilla.kernel.org/show_bug.cgi?id=217805

Bug ID: 217805
Summary: Qualcomm NFA725A on T14s AMD Gen3: Bluetooth: hci0:
Failed to send headers (or body or access otp area)
Product: Drivers
Version: 2.5
Hardware: All
OS: Linux
Status: NEW
Severity: normal
Priority: P3
Component: Bluetooth
Assignee: [email protected]
Reporter: [email protected]
Regression: No

Hello,

(Sorry by advance if it's not the correct place to discuss that, but I tried
other place like my distro kernel forum
(https://bbs.archlinux.org/viewtopic.php?id=286929), interactive chat, etc and
nobody was able to help).

[1] == Short summary ==

I have a lenovo T14S AMD Gen 3 with a *Qualcomm NFA725A* Wi-Fi card (which is
actually reported by lspci as QCNFA765) and bluetooth never worked on it,
failing to load the rampatch with "failed to send header" or "failed to send
body" or "Failed to access otp area (-71)".

Other people reports bluetooth as working
(https://wiki.archlinux.org/title/Lenovo_ThinkPad_T14s_(AMD)_Gen_3) and a work
friend has a T16 AMD gen1 which seems to have exactly the same chipset and work
flowlessly. So perhaps it's an hardware issue, but I don't know how to qualify
it if so.

=> How can this be further qualified/debuged/workarounded?

Any help, even RTFM pointing to corresponding manuals would be very much
appreciated.


[2] == logs and more details ==

I have that laptop since october 2022 and use archlinux with the standard
kernels. None made bluetooth wroked since then. First install was around linux
6.0.10 and current kernel: 6.4.10-arch1-10.

There is nothing obvious in bios setting that could lead to that (bluetooth is
enabled).

# LSPCI

lspci -k -s 01:00.0
01:00.0 Network controller: Qualcomm Technologies, Inc QCNFA765 Wireless
Network Adapter (rev 01)
Subsystem: Lenovo QCNFA765 Wireless Network Adapter
Kernel driver in use: ath11k_pci
Kernel modules: ath11k_pci


# kernel boot log: "Failed to send headers (-71)"

kernel: thinkpad_acpi: radio switch found; radios are enabled
kernel: thinkpad_acpi: This ThinkPad has standard ACPI backlight brightness
control, supported by the ACPI video driver
kernel: thinkpad_acpi: Disabling thinkpad-acpi brightness events by default
...
kernel: thinkpad_acpi: rfkill switch tpacpi_bluetooth_sw: radio is unblocked
...
rfkill[6774]: unblock set for type bluetooth sudo[6773]:
pam_unix(sudo:session): session closed for user root
kernel: usb 1-3.1: new full-speed USB device number 3 using xhci_hcd
kernel: usb 1-3.1: New USB device found, idVendor=10ab, idProduct=9309,
bcdDevice= 0.01 kernel: usb 1-3.1: New USB device strings: Mfr=0, Product=0,
SerialNumber=0 boltd[935]: probing: started [1000]
kernel: Bluetooth: Core ver 2.22 kernel: NET: Registered PF_BLUETOOTH protocol
family kernel: Bluetooth: HCI device and connection manager initialized
kernel: Bluetooth: HCI socket layer initialized kernel: Bluetooth: L2CAP socket
layer initialized
kernel: Bluetooth: SCO socket layer initialized kernel: usbcore: registered new
interface driver btusb
systemd[1328]: Reached target Bluetooth.
kernel: Bluetooth: hci0: using rampatch file: qca/rampatch_usb_00130201.bin
kernel: Bluetooth: hci0: QCA: patch rome 0x130201 build 0x5073, firmware rome
0x130201 build 0x38e6
kernel: Bluetooth: hci0: Failed to send headers (-71)
systemd[1]: Starting Bluetooth service...
bluetoothd[6866]: Bluetooth daemon 5.66
systemd[1]: Started Bluetooth service.
systemd[1]: Reached target Bluetooth Support.
bluetoothd[6866]: Starting SDP server bluetoothd[6866]:
profiles/audio/vcp.c:vcp_init() D-Bus experimental not enabled

# rfkill status

sudo rfkill
ID TYPE DEVICE SOFT HARD
0 bluetooth tpacpi_bluetooth_sw blocked unblocked
1 wlan phy0 unblocked unblocked

# when trying to unlock: "failed to send body at 40 of 142192 (-71)"

rfkill[105640]: unblock set for type bluetooth
sudo[105639]: pam_unix(sudo:session): session closed for user root
kernel: usb 1-3.1: new full-speed USB device number 4 using xhci_hcd
kernel: usb 1-3.1: New USB device found, idVendor=10ab, idProduct=9309,
bcdDevice= 0.01
kernel: usb 1-3.1: New USB device strings: Mfr=0, Product=0, SerialNumber=0
kernel: Bluetooth: hci0: using rampatch file: qca/rampatch_usb_00130201.bin
kernel: Bluetooth: hci0: QCA: patch rome 0x130201 build 0x5073, firmware rome
0x130201 build 0x38e6
kernel: Bluetooth: hci0: Failed to send body at 40 of 142192 (-71)
kernel: usb 1-3.1: USB disconnect, device number 4
boltd[935]: probing: started [1000]
systemd[1328]: Reached target Bluetooth.
systemd[1328]: Stopped target Bluetooth.
systemd[1]: Reached target Bluetooth Support.
systemd[1]: Stopped target Bluetooth Support.

# unloading and loading back kernel related modules (`bluetooth`, `btusb`, etc)
and modprobe them back, and I get the same kind of logs after `rfkill unblock
bluetoot`:

rfkill[106483]: unblock set for type bluetooth
sudo[106482]: pam_unix(sudo:session): session closed for user root
kernel: usb 1-3.1: new full-speed USB device number 5 using xhci_hcd
kernel: usb 1-3.1: New USB device found, idVendor=10ab, idProduct=9309,
bcdDevice= 0.01
kernel: usb 1-3.1: New USB device strings: Mfr=0, Product=0, SerialNumber=0
kernel: usb 1-3.1: Failed to access otp area (-71)
kernel: usb 1-3.1: USB disconnect, device number 5
boltd[935]: probing: started [1000]
systemd[1328]: Reached target Bluetooth.
systemd[1]: Reached target Bluetooth Support.
systemd[1328]: Stopped target Bluetooth.
systemd[1]: Stopped target Bluetooth Support.
boltd[935]: probing: timeout, done: [3001068] (2000000)

Have a nice day

--
You may reply to this email to add a comment.

You are receiving this mail because:
You are the assignee for the bug.


2023-08-28 07:19:54

by bugzilla-daemon

[permalink] [raw]
Subject: [Bug 217805] Qualcomm NFA725A on T14s AMD Gen3: Bluetooth: hci0: Failed to send headers (or body or access otp area)

https://bugzilla.kernel.org/show_bug.cgi?id=217805

--- Comment #1 from François Armand ([email protected]) ---
Created attachment 304965
--> https://bugzilla.kernel.org/attachment.cgi?id=304965&action=edit
lsmod

I failed to attach lsmod, so here we go.

--
You may reply to this email to add a comment.

You are receiving this mail because:
You are the assignee for the bug.

2023-08-31 19:37:01

by bugzilla-daemon

[permalink] [raw]
Subject: [Bug 217805] Qualcomm NFA725A on T14s AMD Gen3: Bluetooth: hci0: Failed to send headers (or body or access otp area)

https://bugzilla.kernel.org/show_bug.cgi?id=217805

--- Comment #2 from François Armand ([email protected]) ---
For info, I find that subject: https://superuser.com/a/1451102

So I tried to disable bluetooth in bios, boot, re-enable bluetooth in bios.

With that, I was able to "unblock" the bluetooth adaptater in rfkill.


But I still didn't have any controler listed in `bluethoothctl list`.


I then tried to disable laptot battery ("power > servicing" option in bios) to
see if a full cold restart does something.
It does: I've came back to the initial state, where the controler can't be
enabled at all.
I tried the disable-then-enable-bluetooth-in-bios trick, but that time it
doesn't do anything.

I also notice than early in boot, I have that message:

---
kernel: usb usb1-port3: connect-debounce failed
---

Which seems to be link to the bluetooth controler (I don't have the message
when bluetooth is disabled in bios).

So it looks like an hardware problem right?

--
You may reply to this email to add a comment.

You are receiving this mail because:
You are the assignee for the bug.

2023-12-08 08:23:29

by bugzilla-daemon

[permalink] [raw]
Subject: [Bug 217805] Qualcomm NFA725A on T14s AMD Gen3: Bluetooth: hci0: Failed to send headers (or body or access otp area)

https://bugzilla.kernel.org/show_bug.cgi?id=217805

--- Comment #3 from François Armand ([email protected]) ---
More information on that subject:

- the bluetooth antenna was physically disconnect from the chipset, I
reconnected it.

- now, I'm able to have bluetooth from an old ubuntu 22.04 live usb key,
- I still don't have it from a modern linux 6.6.4 arch kernel

The main difference I noticed happened when the firmware is loaded:

- on ubuntu, where it works:

Dec 08 07:00:36 ubuntu kernel: usb 1-3: new high-speed USB device number 2
using xhci_hcd
...
Decrep 08 07:00:36 ubuntu kernel: usb 1-3.1: new full-speed USB device number 3
using xhci_hcd
Dec 08 07:00:36 ubuntu kernel: usb 1-3.1: New USB device found, idVendor=10ab,
idProduct=9309, bcdDevice= 0.01
Dec 08 07:00:36 ubuntu kernel: usb 1-3.1: New USB device strings: Mfr=0,
Product=0, SerialNumber=0
...
Dec 08 07:00:37 ubuntu kernel: thinkpad_acpi: radio switch found; radios are
enabled
...
Dec 08 07:00:37 ubuntu kernel: thinkpad_acpi: rfkill switch
tpacpi_bluetooth_sw: radio is unblocked
....


- on the newer kernel:
Dec 08 08:54:42 lalande21185 kernel: thinkpad_acpi: radio switch found; radios
are enabled
...

Dec 08 08:54:42 lalande21185 kernel: thinkpad_acpi: rfkill switch
tpacpi_bluetooth_sw: radio is unblocked

Dec 08 07:00:3Dec 08 08:56:14 lalande21185 kernel: usb 1-3.1: new full-speed
USB device number 5 using xhci_hcd
Dec 08 08:56:14 lalande21185 kernel: usb 1-3.1: New USB device found,
idVendor=10ab, idProduct=9309, bcdDevice= 0.01
Dec 08 08:56:14 lalande21185 kernel: usb 1-3.1: New USB device strings: Mfr=0,
Product=0, SerialNumber=0
Dec 08 08:56:15 lalande21185 kernel: Bluetooth: hci0: using rampatch file:
qca/rampatch_usb_00130201.bin
Dec 08 08:56:15 lalande21185 kernel: Bluetooth: hci0: QCA: patch rome 0x130201
build 0x65e2, firmware rome 0x130201 build 0x38e6
Dec 08 08:56:15 lalande21185 kernel: Bluetooth: hci0: Failed to send headers
(-71)
Dec 08 08:56:15 lalande21185 kernel: usb 1-3.1: USB disconnect, device number 5
8 ubuntu kernel: Bluetooth: hci0: using NVM file: qca/nvm_usb_00130201_gf.bin



Could it have something to do with the `thinkpad_acpi` module? The exact rome
build is not the same too, which is expected I think for a newer kernel

--
You may reply to this email to add a comment.

You are receiving this mail because:
You are the assignee for the bug.