我使用的是 Ubuntu 14.04,带有 Vivid 的 HWE,这意味着我现在运行的是内核 3.19,直到 15.10 发布并且内核通过 HWE 可用。
我使用的是 MacBook Pro,但我的特定蓝牙设备未被识别btusb.c因为它不在识别的设备列表中。我的设备信息是:
Bus 001 Device 003: ID 05ac:8290 Apple, Inc.
Device Descriptor:
bLength 18
bDescriptorType 1
bcdUSB 2.01
bDeviceClass 239 Miscellaneous Device
bDeviceSubClass 2 ?
bDeviceProtocol 1 Interface Association
bMaxPacketSize0 64
idVendor 0x05ac Apple, Inc.
idProduct 0x8290
bcdDevice 1.04
iManufacturer 1 Broadcom Corp.
iProduct 2 Bluetooth USB Host Controller
我已经验证它没有工作并且未检测到该设备,并且我相信此更改可以修复它。
我需要做的是获取我的特定 Linux 分支的源代码树,将其下载到/usr/src
,将其注册为 DKMS 模块,并让它在每个内核安装上自动构建 btusb.ko 并将其插入其中。
我不清楚的是内核已经附带了 btusb,并且我不确定新编译的模块是否会覆盖内核提供的模块。有没有一种简单的方法可以做到这一点?而在内核Makefiles中,有没有办法让它只编译btusb驱动程序,而不需要编译整个内核?有没有更好、更直接的方法来做到这一点?
答案1
我已经为 3.19 内核制作了 DKMS 版本的修补 btusb.c
wget https://www.dropbox.com/s/47u2zjrkqvkf1tw/btusbmac-dkms_1.6_all.deb
dpkg -i btusbmac-dkms_1.6_all.deb
重启
如果您想查看源代码,可以右键单击 deb 文件并选择“使用存档管理器打开”,然后解压文件。您可能必须右键单击该文件夹来更改权限,以便您可以读取 /usr/src/btusbmac-1.6 中的文件
测试并确认这里