[Bug 260161] usb enumeration stalls on a framework laptop
- In reply to: bugzilla-noreply_a_freebsd.org: "[Bug 260161] usb enumeration stalls on a framework laptop"
- Go to: [ bottom of page ] [ top of archives ] [ this month ]
Date: Thu, 02 Dec 2021 17:17:49 UTC
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=260161
Mark Johnston <markj@FreeBSD.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
CC| |wulf@freebsd.org
--- Comment #2 from Mark Johnston <markj@FreeBSD.org> ---
ng_ubt_intel is missing the device ID for this particular adapter. Adding it
"fixes" the problem, but only because ng_ubt_intel then fails to probe the
firmware version. It seems that newer devices return firmware version info in
a TLV array, and ng_ubt_intel (and iwmbtfw) doesn't know about it.
Dumping the returned TLV:
0000 00 10 04 10 04 40 00 11 04 10 04 40 00 12 04 00 |.....@.....@....|
0010 37 17 00 15 02 13 04 16 02 00 00 17 02 87 80 18 |7...............|
0020 02 32 00 1c 01 01 1d 02 28 13 1e 01 01 1f 04 26 |.2......(......&|
0030 00 00 00 27 01 00 28 01 01 29 01 00 2a 01 01 2b |...'..(..)..*..+|
0040 01 01 2c 01 00 2d 03 01 0a 0e 2e 01 00 2f 01 01 |..,..-......./..|
0050 30 06 20 6f 9c 09 7b f4 31 01 00 00 00 00 |0. o..{.1..... |
Image type TLV: 1c 01 01, and apparently a value of 0x01 there means that the
device is in boot loader mode.
I'm not sure how much work it is to extend ng_ubt_intel to support this device.
I'll try adding TLV parsing support and see how it goes.
I wonder if ng_ubt_intel should match on all Intel bluetooth devices, otherwise
we'll keep having to diagnose the same problem over and over again.
--
You are receiving this mail because:
You are the assignee for the bug.