Broadcom Bluetooth

From Gentoo Wiki
Jump to:navigation Jump to:search
This page is a translated version of the page Broadcom Bluetooth and the translation is 100% complete.
Other languages:

Ez a cikk a Broadcom Bluetooth 4.x eszközök beállításáról szól, amelyek többnyire BCM20702, BCM4354 és BCM4356 chipkészleteken alapulnak. Ezeket a Bluetooth chipkészleteket különböző eszközökben használják, beleértve az USB-adaptereket, valamint a hibrid WIFI+Bluetooth beágyazott chipkészleteket is.

Hardver

A támogatott eszközök szinte teljes listája elérhető az upstream forrásban.

Eszköz Make/modell Státusz Vendor ID / Product ID Kernel driver(s) Kernel verziója Megjegyzések
USB Dongle Asus BT-400 USB Működik 0b05:17cb btbcm 4.2 Firmware szükséges.
USB Dongle Targus ACB75AU Működik 0a5c:21e8 btbcm 3.4+ Szükséges a brcm/BCM20702A1-0a5c-21e8.hcd firmware.

Biztonsági megfontolások

Nemrégiben számos sebezhetőség lett felfedezve a Bluetooth-rétegben, például a CVE-2018-5383, a CVE-2019-9506 (KNOB), a CVE-2020-10135 (BIAS) és mások. Mivel a Broadcom leállította fogyasztói eszközeinek aktív támogatását, az ezen szoftvert használó rendszerek biztonsági kockázatoknak lehetnek kitéve. Érdemes mérlegelni a kockázatokat, mielőtt továbblépne, mivel a szoftvercsomag-tárolónak a karbantartója nem tud biztonsági javításokat biztosítani.

Telepítés

Kernel

A Broadcom Bluetooth-eszközök a btbcm kernel modult igénylik, amely az alábbi kernelopciókkal építhető meg:

KERNEL Broadcom Bluetooth támogatás
[*] Networking support  --->
    <M>   Bluetooth subsystem support  --->
        Bluetooth device drivers  --->
            <M> HCI USB driver
            [*]   Broadcom protocol support
            [*] Broadcom protocol support

Firmware

A Broadcom Bluetooth-réteg többnyire külső firmware-t igényel, amelyet a Windows illesztőprogramok tartalmaznak. Ez az alábbi parancsok segítségével ellenőrizhető:

user $dmesg | grep -i bluetooth
Bluetooth: hci1: BCM: chip id 63
Bluetooth: hci1: BCM20702A
Bluetooth: hci1: BCM20702A1 (001.002.014) build 0000
bluetooth hci1: Direct firmware load for brcm/BCM20702A1-0b05-17cb.hcd failed with error -2
Bluetooth: hci1: BCM: Patch brcm/BCM20702A1-0b05-17cb.hcd not found

Szerencsére a sys-firmware/broadcom-bt-firmware szoftvercsomag használható a legújabb firmware-fájlok telepítésére a Broadcom Bluetooth-hoz.

root #emerge --ask sys-firmware/broadcom-bt-firmware

A telepítés után helyezze vissza a Bluetooth-eszközt, vagy indítsa újra az operációs rendszert a firmware alkalmazásának érdekében. Az újraindítás után a kimenet valahogy így fog kinézni:

user $dmesg | grep -i bluetooth
Bluetooth: hci1: BCM: chip id 63
Bluetooth: hci1: BCM20702A
Bluetooth: hci1: BCM20702A1 (001.002.014) build 0000
Bluetooth: hci1: BCM20702A1 (001.002.014) build 1467
Bluetooth: hci1: Broadcom Bluetooth Device

Beállítás

A kernelopciók engedélyezése és a firmware telepítése után lépjen tovább a Bluetooth cikkre.

Hibaelhárítás

Kernel BCM.hcd vagy BCM<CHIPSET>.hcd fájlt igényel

Egyes VID/PID azonosítók még nincsenek meghatározva a kernel illesztőprogramban, ezért a btbcm nem tudja megfelelően azonosítani az eszközt:

user $dmesg | grep -i bluetooth
Bluetooth: hci1: BCM: chip id 63
Bluetooth: hci1: BCM20702A
Bluetooth: hci1: BCM20702A1 (001.002.014) build 0000
bluetooth hci1: Direct firmware load for brcm/BCM.hcd failed with error -2
Bluetooth: hci1: BCM: Patch brcm/BCM.hcd not found

Ebben az esetben a VID/PID manuálisan lekérdezhető a lspci vagy a lsusb parancsok segítségével:

user $lsusb
...
Bus 003 Device 005: ID 0b05:17cb ASUSTek Computer, Inc. Broadcom BCM20702A0 Bluetooth
...

Itt a VID/PID - 0b05:17cb. Ezután ellenőrizze a eszközlistát, és válassza ki a megfelelő firmware-t. Ezt követően egyszerűen másolja a firmware-fájlt a kernel által igényelt névre.

root #cd /lib/firmware/brcm
root #cp BCM20702A1-0b05-17cb.hcd BCM.hcd

Ezt követően helyezze vissza az eszközt, vagy indítsa újra az operációs rendszert.

Firmware telepítése után az eszköz továbbra sem működik

Egyes Bluetooth-vezérlők (például BCM4354 és BCM4356) integrálva vannak a WiFi chipkészletbe (ez lehet BCM43XX 802.11ac Wireless Network Adapter vagy egyszerű generikus Broadcom PCIE Wireless). Ezek az eszközök kétféle firmware-t igényelnek: az egyiket a WiFi-hez, a másikat a Bluetooth-hoz. WiFi firmware nélkül a Bluetooth nem fog inicializálódni, és nem fog megfelelően működni. A WiFi-hez szükséges firmware már benne van a kernelben, de előfordulhat, hogy további munkára van szükség a megfelelő NVRAM elhelyezéséhez.

Íme egy példa arra, hogy miként nézhet ki (megjegyzés a brcm/brcmfmac4356-pcie.txt betöltéséről - ez a testre szabott NVRAM):

user $dmesg
usbcore: registered new interface driver brcmfmac
brcmfmac 0000:02:00.0: firmware: direct-loading firmware brcm/brcmfmac4356-pcie.bin
brcmfmac 0000:02:00.0: firmware: direct-loading firmware brcm/brcmfmac4356-pcie.txt
Bluetooth: hci0: BCM: chip id 101
Bluetooth: hci0: N360-11
Bluetooth: hci0: BCM4354A2 (001.003.015) build 0000
bluetooth hci0: firmware: direct-loading firmware brcm/BCM4354A2-13d3-3485.hcd

További olvasnivaló a témában

  • Bluetooth — a Bluetooth vezérlők, és Bluetooth eszközök konfigurációját, valamint azok használatát ismerteti.

Hivatkozások