Intel 7260 bluetooth malfunction when it is connected to EHCI bus

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



The problem is:
On the machine which has Intel 7260 BT module, i use it to connect a bluetooth headset, it can successfully scan and connect to the headset, when i play sound to the bt headset, the problem comes, if the bt module is connected to the XHCI, it can work very well.

u@u-Lenovo-B4400:~$ lsusb -t
1-7:1.0: No such file or directory
/: Bus 02.Port 1: Dev 1, Class=root_hub, Driver=xhci_hcd/4p, 5000M
/: Bus 01.Port 1: Dev 1, Class=root_hub, Driver=xhci_hcd/14p, 480M
    |__ Port 6: Dev 8, If 0, Class=HID, Driver=usbhid, 1.5M
    |__ Port 7: Dev 2, If 0, Class=vend., Driver=, 12M
|__ Port 11: Dev 3, If 0, Class='bInterfaceClass 0xe0 not yet handled', Driver=btusb, 12M |__ Port 11: Dev 3, If 1, Class='bInterfaceClass 0xe0 not yet handled', Driver=btusb, 12M

But if the bt module is connected to the EHCI, it always fails to play sound.

u@u-Lenovo-B4400:~$ lsusb -t
/: Bus 04.Port 1: Dev 1, Class=root_hub, Driver=xhci_hcd/4p, 5000M
/: Bus 03.Port 1: Dev 1, Class=root_hub, Driver=xhci_hcd/14p, 480M
/: Bus 02.Port 1: Dev 1, Class=root_hub, Driver=ehci_hcd/3p, 480M
    |__ Port 1: Dev 2, If 0, Class=hub, Driver=hub/8p, 480M
/: Bus 01.Port 1: Dev 1, Class=root_hub, Driver=ehci_hcd/3p, 480M
    |__ Port 1: Dev 2, If 0, Class=hub, Driver=hub/6p, 480M
|__ Port 5: Dev 3, If 0, Class='bInterfaceClass 0xe0 not yet handled', Driver=btusb, 12M |__ Port 5: Dev 3, If 1, Class='bInterfaceClass 0xe0 not yet handled', Driver=btusb, 12M |__ Port 6: Dev 4, If 0, Class='bInterfaceClass 0x0e not yet handled', Driver=uvcvideo, 480M |__ Port 6: Dev 4, If 1, Class='bInterfaceClass 0x0e not yet handled', Driver=uvcvideo, 480M

---------------------------------------------------------------------------------------------------------
The BT moudle version, firmware version and linux kernel version:
dmesg snippet,
[    2.164386] Bluetooth: hci0: read Intel version: 370710018002030d00
[ 2.200701] Bluetooth: hci0: Intel Bluetooth firmware file: intel/ibt-hw-37.7.10-fw-1.80.2.3.d.bseq

And the firmware was got from http://permalink.gmane.org/gmane.linux.bluez.kernel/37580.

To verify the firmware is the latest, i execute following commands,
u@u-Lenovo-B4400:~$ sudo hcitool cmd 0x3f 0x005 0x00
< HCI Command: ogf 0x3f, ocf 0x0005, plen 1
  00
> HCI Event: 0x0e plen 13
  01 05 FC 00 37 07 10 01 80 02 03 0D 2E

On the machine, i installed ubuntu-12.04 (kernel is 3.5), then i replaced the kernel to the linux-3.8 and the latest upstream kernel linux-3.12.0-rc6, the situation had no difference, the problem still can be
reproduced on very linux kernel version.

----------------------------------------------------------------------------------------------------------
My investigation:

I did the test on dozens of laptops on which all installed intel 7260 wifi+bt combo, in case the bt module is connected to EHCI bus, it will 100% fail to play sound to the bt headset. If the bt module is connected to the XHCI bus, it will work very well, including play audio to a bt headset.

And more investigation show, if the bt module is on the EHCI bus, it can't receive any SCO packet like this,
u@u-Lenovo-B4400:~$ hciconfig
hci0: Type: BR/EDR Bus: USB
 BD Address: 00:15:00:CC:2D:D2 ACL MTU: 1021:5 SCO MTU: 96:5
 UP RUNNING PSCAN
 RX bytes:6687 acl:61 sco:0 events:308 errors:0
 TX bytes:19367 acl:70 sco:3 commands:179 errors:0

if the bt module is on the XHCI bus, it can transmit and receive SCO packets very well,
u@u-Lenovo-B4400:~$ hciconfig
hci0: Type: BR/EDR Bus: USB
 BD Address: 00:15:00:CC:2D:D2 ACL MTU: 1021:5 SCO MTU: 96:5
 UP RUNNING PSCAN
 RX bytes:572756 acl:47 sco:11173 events:221 errors:0
 TX bytes:586261 acl:55 sco:11137 commands:137 errors:0

----------------------------------------------------------------------------------------------------------
So could anybody be kindly help to confirm this problem, and could the maintainer of intel 7260 bt driver/firmware
be kindly to solve this problem?

Thanks in advance.

Hui.
--
To unsubscribe from this list: send the line "unsubscribe linux-bluetooth" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html




[Index of Archives]     [Bluez Devel]     [Linux Wireless Networking]     [Linux Wireless Personal Area Networking]     [Linux ATH6KL]     [Linux USB Devel]     [Linux Media Drivers]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [Big List of Linux Books]

  Powered by Linux