linux-bluetooth.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Ben Young Tae Kim <ytkim@qca.qualcomm.com>
To: Sumit's Mailing Lists <lists@battlepenguin.com>,
	Marcel Holtmann <marcel@holtmann.org>,
	"Huang, Rick" <rickh@qti.qualcomm.com>
Cc: <linux-bluetooth@vger.kernel.org>
Subject: Re: ath3k Bluetooth adapter not loading: [0cf3:3004] Atheros Communications, Inc. AR3012 Bluetooth 4.0
Date: Tue, 16 Jun 2015 13:52:59 -0700	[thread overview]
Message-ID: <55808CAB.3020205@qca.qualcomm.com> (raw)
In-Reply-To: <557F0FD2.7000000@battlepenguin.com>

Hi Sumit,

On 06/15/15 10:48, Sumit's Mailing Lists wrote:
> On 16/06/15 00:57, Ben Young Tae Kim wrote:
>> Hi Sumit,
>>
>>
>> On 06/15/15 07:16, Sumit's Mailing Lists wrote:
>>> On 15/06/15 21:55, Marcel Holtmann wrote:
>>>> Hi Smuit,
>>>>
>>>>>>> I'm currently using an MSI WS60 laptop which contains the following
>>>>>>> Bluetooth controller (from lsusb):
>>>>>>>
>>>>>>> Bus 003 Device 003: ID 0cf3:3004 Atheros Communications, Inc. AR3012
>>>>>>> Bluetooth 4.0
>>>>>> assuming that the firmware is present, this is most likely just missing the right VID/PID additions in the drivers. Please prepare a patch for that.
>>>>>>
>>>>>>> and the more detailed version:
>>>>>>>
>>>>>>> Bus 003 Device 003: ID 0cf3:3004 Atheros Communications, Inc. AR3012
>>>>>>> Bluetooth 4.0
>>>>>>> Device Descriptor:
>>>>>>> bLength                18
>>>>>>> bDescriptorType         1
>>>>>>> bcdUSB               1.10
>>>>>>> bDeviceClass          224 Wireless
>>>>>>> bDeviceSubClass         1 Radio Frequency
>>>>>>> bDeviceProtocol         1 Bluetooth
>>>>>>> bMaxPacketSize0        64
>>>>>>> idVendor           0x0cf3 Atheros Communications, Inc.
>>>>>>> idProduct          0x3004 AR3012 Bluetooth 4.0
>>>>>>> bcdDevice            0.01
>>>>>>> iManufacturer           0
>>>>>>> iProduct                0
>>>>>>> iSerial                 0
>>>>>>> bNumConfigurations      1
>>>>>>> Configuration Descriptor:
>>>>>> I actually prefer /sys/kernel/debug/usb/devices output for the devices.
>>>>>>
>>>>>> Regards
>>>>>>
>>>>>> Marcel
>>>>>>
>>>>> Here is the output from /sys/kernel/debug/usb/devices for my ath3k (also
>>>>> added it to the kernel bugzilla):
>>>>>
>>>>> T:  Bus=03 Lev=02 Prnt=02 Port=02 Cnt=01 Dev#=  3 Spd=12   MxCh= 0
>>>>> D:  Ver= 1.10 Cls=e0(wlcon) Sub=01 Prot=01 MxPS=64 #Cfgs=  1
>>>>> P:  Vendor=0cf3 ProdID=3004 Rev= 0.01
>>>>> C:* #Ifs= 2 Cfg#= 1 Atr=e0 MxPwr=100mA
>>>>> I:* If#= 0 Alt= 0 #EPs= 3 Cls=e0(wlcon) Sub=01 Prot=01 Driver=(none)
>>>>> E:  Ad=81(I) Atr=03(Int.) MxPS=  16 Ivl=1ms
>>>>> E:  Ad=82(I) Atr=02(Bulk) MxPS=  64 Ivl=0ms
>>>>> E:  Ad=02(O) Atr=02(Bulk) MxPS=  64 Ivl=0ms
>>>>> I:* If#= 1 Alt= 0 #EPs= 2 Cls=e0(wlcon) Sub=01 Prot=01 Driver=(none)
>>>>> E:  Ad=83(I) Atr=01(Isoc) MxPS=   0 Ivl=1ms
>>>>> E:  Ad=03(O) Atr=01(Isoc) MxPS=   0 Ivl=1ms
>>>>> I:  If#= 1 Alt= 1 #EPs= 2 Cls=e0(wlcon) Sub=01 Prot=01 Driver=(none)
>>>>> E:  Ad=83(I) Atr=01(Isoc) MxPS=   9 Ivl=1ms
>>>>> E:  Ad=03(O) Atr=01(Isoc) MxPS=   9 Ivl=1ms
>>>>> I:  If#= 1 Alt= 2 #EPs= 2 Cls=e0(wlcon) Sub=01 Prot=01 Driver=(none)
>>>>> E:  Ad=83(I) Atr=01(Isoc) MxPS=  17 Ivl=1ms
>>>>> E:  Ad=03(O) Atr=01(Isoc) MxPS=  17 Ivl=1ms
>>>>> I:  If#= 1 Alt= 3 #EPs= 2 Cls=e0(wlcon) Sub=01 Prot=01 Driver=(none)
>>>>> E:  Ad=83(I) Atr=01(Isoc) MxPS=  25 Ivl=1ms
>>>>> E:  Ad=03(O) Atr=01(Isoc) MxPS=  25 Ivl=1ms
>>>>> I:  If#= 1 Alt= 4 #EPs= 2 Cls=e0(wlcon) Sub=01 Prot=01 Driver=(none)
>>>>> E:  Ad=83(I) Atr=01(Isoc) MxPS=  33 Ivl=1ms
>>>>> E:  Ad=03(O) Atr=01(Isoc) MxPS=  33 Ivl=1ms
>>>>> I:  If#= 1 Alt= 5 #EPs= 2 Cls=e0(wlcon) Sub=01 Prot=01 Driver=(none)
>>>>> E:  Ad=83(I) Atr=01(Isoc) MxPS=  49 Ivl=1ms
>>>>> E:  Ad=03(O) Atr=01(Isoc) MxPS=  49 Ivl=1ms
>>>>>
>>>>> and the firmware the kernel is trying to load:
>>>>>
>>>>> [  762.729370] usb 3-1.3: Direct firmware load for
>>>>> ar3k/AthrBT_0x00000200.dfu failed with error -2
>>>>> [  762.729373] Bluetooth: Patch file not found ar3k/AthrBT_0x00000200.dfu
>>>>> [  762.729374] Bluetooth: Loading patch file failed
>>>>> [  762.729381] ath3k: probe of 3-1.3:1.0 failed with error -2
>>>>> [  762.729411] usbcore: registered new interface driver ath3k
>>>> I fail to see that firmware in linux-firmware tree. However this up to Atheros / Qualcomm to submit there. I can not do much about this.
>>>>
>>>> Regards
>>>>
>>>> Marcel
>>>>
>>> Marcel,
>>>
>>> So it's pulling the right firmware file for my device, but It just
>>> hasn't been released yet?
>>>
>>> I know with the Wi-Fi firmware, the ath10k devs had python scripts to
>>> extract the firmware binaries from the Windows drivers (mentioned in
>>> here https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1383184). Has
>>> anyone done that before with the bluetooth firmware, or do you typically
>>> just wait for atheros/qualcom to release official ones?
>> Where did you get your atheros board/card since I couldn't find that board here. Is it a laptop? The BT firmware driver was trying to load AthrBT_0x00000200.dfu file and it got failed because no firmware file was present. But 0x00000200 means fw_version.rom_version which coming from controller chip, however, I haven't seen this version on Atheros chipset.
>>
>> I'm adding my friend - Rick Huang here. He may help you out
>>
>> Hi Rick,
>>
>> Have you seen rom_version as 0x00000200?
>>
>>> Sumit
>>> --
>>> To unsubscribe from this list: send the line "unsubscribe linux-bluetooth" in
>>> the body of a message to majordomo@vger.kernel.org
>>> More majordomo info at  http://vger.kernel.org/majordomo-info.html
>> Thanks
>> -- Ben Kim
>>
> Yes, It's an MSI WS-60 Laptop, purchased two months ago in Australia. Is
> there any other debugging information I need to pull for you?
>
> Sumit
> --
> To unsubscribe from this list: send the line "unsubscribe linux-bluetooth" in
> the body of a message to majordomo@vger.kernel.org
> More majordomo info at  http://vger.kernel.org/majordomo-info.html

According to my colleague, it is not AR chip but QCA ROME core inside even though they're sharing same VID/PID with AR/QCA ROME(version 2). That's why you cannot bring up your card with ath3k driver. I knew it was not a good idea as it was early stage to develop the card so that next version of ROME USB card(v3.0 or v3.2) will use different PID/VID as you can see below.

Can you follow up these instructions to see whether or not it can be addressed on your setup?

--
1. put this code in drivers/bluetooth/btusb.c

static const struct usb_device_id blacklist_table[] = {
...
    /* QCA ROME chipset */
    { USB_DEVICE(0x0cf3, 0xe300), .driver_info = BTUSB_QCA_ROME },
    { USB_DEVICE(0x0cf3, 0xe360), .driver_info = BTUSB_QCA_ROME },
    { USB_DEVICE(0x0cf3, 0x3004), .driver_info = BTUSB_QCA_ROME }, // <-- add new VID/PID here
...

2. Copy firmware files into /lib/firmware/qca
 - nvm_usb_00000200.bin
 - rampatch_usb_00000200.bin
Those FW files won't be available on linux-firmware.git til today but it it will be available soon I believe.
--

Thanks
-- Ben Kim

 

  reply	other threads:[~2015-06-16 20:52 UTC|newest]

Thread overview: 29+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-05-26 14:44 ath3k Bluetooth adapter not loading: [0cf3:3004] Atheros Communications, Inc. AR3012 Bluetooth 4.0 Sumit's Mailing Lists
2015-06-06  6:16 ` Marcel Holtmann
2015-06-15 12:05   ` Sumit's Mailing Lists
2015-06-15 13:55     ` Marcel Holtmann
2015-06-15 14:16       ` Sumit's Mailing Lists
2015-06-15 16:57         ` Ben Young Tae Kim
2015-06-15 17:48           ` Sumit's Mailing Lists
2015-06-16 20:52             ` Ben Young Tae Kim [this message]
2015-06-17  9:36               ` Marcel Holtmann
2015-06-17 18:34                 ` Ben Young Tae Kim
2015-06-17 12:46               ` Sumit's Mailing Lists
2015-06-17 13:00                 ` Sumit Khanna
2015-06-17 18:54                   ` Ben Young Tae Kim
2015-06-18  2:36                     ` Sumit's Mailing Lists
2015-06-18  2:53                       ` Kim, Ben Young Tae
2015-06-18  3:01                         ` Sumit's Mailing Lists
2015-06-18 16:00                           ` Ben Young Tae Kim
2015-06-18 16:33                             ` Sumit's Mailing Lists
2015-06-18 16:37                               ` Ben Young Tae Kim
2015-06-19  5:04                                 ` Sumit's Mailing Lists
2015-06-30 14:05                                 ` Sumit's Mailing Lists
2015-07-01  0:08                                   ` Ben Young Tae Kim
2015-12-11 21:16                                     ` Sumit's Mailing Lists
2015-06-18  3:02                         ` Sumit's Mailing Lists
2015-06-18  5:53                           ` Kim, Ben Young Tae
2015-06-18  8:45                             ` Sumit's Mailing Lists
2015-06-18 10:09                               ` Huang, Rick
  -- strict thread matches above, loose matches on Subject: below --
2015-11-01  0:55 Clément de l'Hamaide
2015-05-26 12:25 Sumit's Mailing Lists

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=55808CAB.3020205@qca.qualcomm.com \
    --to=ytkim@qca.qualcomm.com \
    --cc=linux-bluetooth@vger.kernel.org \
    --cc=lists@battlepenguin.com \
    --cc=marcel@holtmann.org \
    --cc=rickh@qti.qualcomm.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).