Bug 211013
Summary: | Cannot find ath3k bluetooth controller attached on USB | ||
---|---|---|---|
Product: | Drivers | Reporter: | Tianhao Chai (cth451) |
Component: | Bluetooth | Assignee: | linux-bluetooth (linux-bluetooth) |
Status: | RESOLVED DUPLICATE | ||
Severity: | normal | CC: | aivaraslaimikis |
Priority: | P1 | ||
Hardware: | x86-64 | ||
OS: | Linux | ||
Kernel Version: | 5.10.x | Subsystem: | |
Regression: | Yes | Bisected commit-id: |
Description
Tianhao Chai
2021-01-03 05:34:13 UTC
Apparently this ver_rom 0x11020000 has never been recorded in qca_devices_table[] defined in btusb.c. Before 5.10 (i.e. 5.9.x and possibly earlier), the function btusb_setup_qca() will short circuit and return 0 before querying the device table (the following from 5.9.16, btusb.c:3627): ver_rom = le32_to_cpu(ver.rom_version); /* Don't care about high ROM versions */ if (ver_rom & ~0xffffU) return 0; Since this check is removed in 5.10.x due to added support of WCN6855 (which has a high ROM version), the driver would return -ENODEV as this 0x11020000 doesn't exist in qca_devices_table in the first place. I am not sure how this should be resolved. We could check whether ver_rom == 0x11020000 and directly return 0 (and the card would work after that), but I think this is a very dirty approach. *** This bug has been marked as a duplicate of bug 210681 *** |