Каждый раз, когда я соединяю свой наушник Bluetooth в Ubuntu, мой Wi-Fi начинает отбрасывать и замедляться. Но только путем превращения Bluetooth от соединения Wi-Fi становится нормальным снова. Как я могу обычно использовать два? (Obs: я имею, прибыл из Windows, и он хорошо работал),
ubuntu@ubuntu:~$ lspci -knn | grep Net -A3; lsusb
02`enter code here`:00.0 Network controller [0280]: Qualcomm Atheros QCA9377 802.11ac Wireless Network Adapter [168c:0042] (rev 31)
Subsystem: Lenovo QCA9377 802.11ac Wireless Network Adapter [17aa:0901]
Kernel driver in use: ath10k_pci
Kernel modules: ath10k_pci
Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 001 Device 004: ID 174f:116a Syntek
Bus 001 Device 003: ID 0cf3:e500 Atheros Communications, Inc.
Bus 001 Device 002: ID 0781:5567 SanDisk Corp. Cruzer Blade
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
У меня была та же проблема с QCA9377 0cf3:e500 Atheros Communications, Inc.
адаптер Bluetooth. Я ответил в этом вопросе, я решил включением 0cf3:e500
поместить в черный список в btusb.c
и перекомпиляция модулей. Можно проверить ссылку, если Вы хотите видеть, как я прибыл в этот ответ.
К сожалению, эта фиксация все еще не применяется в официальном репозитории. Но можно сделать это выполняющее шаги ниже:
1) Загрузите Источник Ядра (рассмотрите изменение '4.18.0' для того, какой бы ни версия Вы используете):
# In a working directory, run:
apt source linux-source-4.18.0
2) Исправьте код для этого устройства. Включайте 0x0cf3:e500 для помещения в черный список в btusb.c
.
# Here the source was extracted to linux-hwe-4.18.0.
cd linux-hwe-4.18.0/drivers/bluetooth
# Change btusb.c with editor of your choice. Ex:
vim btusb.c
В btusb.c
файл просто добавляет { USB_DEVICE(0x0cf3, 0xe500), .driver_info = BTUSB_QCA_ROME },
кому: static const struct usb_device_id blacklist_table[]
.
Файл должен быть чем-то вроде этого:
static const struct usb_device_id blacklist_table[] = {
...
/* QCA ROME chipset */
...
{ USB_DEVICE(0x04ca, 0x3015), .driver_info = BTUSB_QCA_ROME },
{ USB_DEVICE(0x04ca, 0x3016), .driver_info = BTUSB_QCA_ROME },
{ USB_DEVICE(0x04ca, 0x301a), .driver_info = BTUSB_QCA_ROME },
{ USB_DEVICE(0x13d3, 0x3496), .driver_info = BTUSB_QCA_ROME },
// This is the fix for QCA9377 bluetooth 0x0cf3:e500
{ USB_DEVICE(0x0cf3, 0xe500), .driver_info = BTUSB_QCA_ROME },
...
3) Скомпилируйте модули. Вам, возможно, понадобится некоторая потребность make
и build-essential
для этого установка с помощью 'sudo способную установку делает существенными для сборки', если они не установлены.
make -C /lib/modules/$(uname -r)/build M=$PWD modules
4) "Установка" и перезагрузка. Замените btusb модуль для нового btusb и перезагрузки.
# You may do a backup of the old file:
sudo mv /lib/modules/$(uname -r)/kernel/drivers/bluetooth/btusb.ko /lib/modules/$(uname -r)/kernel/drivers/bluetooth/btusb.ko.backup
# Copy and replace btusb.ko to module location:
sudo cp btusb.ko /lib/modules/$(uname -r)/kernel/drivers/bluetooth/
# Reboot and test
reboot
Я не испытал проблемы после этого. Беспроводная связь кажется хорошо, гарнитура Bluetooth также, кажется, в порядке.
Если Вы также могли бы протестировать, доля заканчивается здесь. Если это действительно решает проблему, мы можем попросить, чтобы это было включено в будущие версии ядра Linux.