BCM4313 蓝牙无法在 64 位 Oneiric 上运行(无线运行)

BCM4313 蓝牙无法在 64 位 Oneiric 上运行(无线运行)

我刚刚在 HP dm1-4142nr (AMD E-450) 笔记本电脑上安装了 Oneiric,经过一些调整后,除了蓝牙 (BT) 之外,其他一切都正常。经过一番研究,我发现 BT 是可怕的 Broadcom 混合 BCM4313 硬件的一部分,据说它可以同时提供这两种功能。以下是我迄今为止尝试过的方法:

在所有测试中,硬件键(f12)均已启用,并且顶部工具栏显示蓝牙图标以及无线图标(单击键可打开/关闭 BT 和 wifi)。

我目前正在使用 linux-3.0.0-13-lowlatency 内核,但这应该与问题有关,因为我也尝试从 Broadcom 网站下载最新的 Broadcom 驱动程序(hybrid-portsrc_x86_64-v5_100_82_112.tar.gz)并根据他们的说明成功构建它。

我尝试了 brcmsmac 驱动程序和 wl 驱动程序。Wl 驱动程序解决了范围较差的问题,以及 f12 LED 灯颜色变化(使用 brcmsmac 驱动程序时不会发生)以反映启用状态。除此之外,它们在这个问题上的行为完全相同。

在所有测试中,一开始rfkill list都没有显示任何蓝牙设备,直到我手动 modprobed btusb。现在它列出了以下设备:

1: hp-wifi: Wireless LAN
    Soft blocked: no
    Hard blocked: no
2: hp-bluetooth: Bluetooth
    Soft blocked: no
    Hard blocked: no
6: brcmwl-0: Wireless LAN
    Soft blocked: no
    Hard blocked: no

启用/禁用设备正确反映在上述列表中(硬阻止值更改为是/否)。

hcitool dev显示没有可用的设备。

hcitool -i hp-bluetooth产量:

Invalid device: No such device

奇怪的是,lsusb没有显示蓝牙设备:

Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 002 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 003 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 004 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 005 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 006 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 001 Device 002: ID 064e:d217 Suyin Corp. 
Bus 006 Device 002: ID 0a5c:21e3 Broadcom Corp. 
Bus 002 Device 002: ID 152d:2339 JMicron Technology Corp. / JMicron USA Technology Corp.

顶部工具栏显示蓝牙已启用。右键单击它并选择属性(打开 BT 系统设置)显示蓝牙已禁用,尝试启用它会在一两秒内恢复为禁用状态。

到目前为止,我发现的唯一线索是,有些人能够在 Windows 中启用蓝牙(在双启动计算机上),然后重新启动到 Linux,此时蓝牙工作正常。但是,我的这台机器没有双启动。此外,每次在 Linux 之前都必须启动 Windows 才能“修复”蓝牙,这似乎不是一个解决办法。我确实找到了另一个线程,其中的用户处于相同的情况(没有双启动),并且没有解决上述问题。然而,基于此,在我看来,可能是缺少某种固件?

另外,有人尝试过使用 ndiswrapper 进行此设置,希望可以解决 BT 问题吗?如果是,wifi 稳定吗?

非常感谢您对此事的任何见解!

答案1

我升级到了 12.04 beta,在修补和安装 wl 驱动程序后(参见http://www.mindwerks.net/2011/11/wireless-bcm4312-3-2-kernel用于补丁),现在蓝牙和无线都可以正常工作!

相关内容