[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <alpine.DEB.2.02.1010061948470.24463@aurora.sdinet.de>
Date: Wed, 6 Oct 2010 19:52:06 +0200 (CEST)
From: Sven-Haegar Koch <haegar@...net.de>
To: "Luis R. Rodriguez" <lrodriguez@...eros.com>
cc: Marcel Holtmann <holtmann@...ux.intel.com>,
Luis Rodriguez <Luis.Rodriguez@...eros.com>,
linux-bluetooth <linux-bluetooth@...r.kernel.org>,
"linux-kernel@...r.kernel.org" <linux-kernel@...r.kernel.org>,
"linux-wireless@...r.kernel.org" <linux-wireless@...r.kernel.org>,
Deepak Dhamdhere <Deepak.Dhamdhere@...eros.com>,
Sree Durbha <Sree.Durbha@...eros.com>
Subject: Re: RFC: btusb firmware load help
On Wed, 6 Oct 2010, Luis R. Rodriguez wrote:
> I just got this description from Sady:
>
> -------------------------------------------------------------------------------------------------------------------
> With eeprom based AR3011 hardware, normally this device gets detected
> as a normal USB device with VID=0x0CF3, PID=0x3000.
> Ath3k DFU driver will download the firmware in to RAM.
> Due to firmware download in the RAM it is exposed as new device
> with VID=0x0CF3, PID=0x3002 to host Bluetooth sub system and btusb.ko
> driver probe routine gets called to bring up Bluetooth interface.
> This is the normal procedure we have done so far on Linux.
>
> With sflash based AR3011 hardware, when we connect the device to USB
> port it gets detected as a Bluetooth device because of firmware in
> Flash (VID=0x0CF3, PID=0x3002). This triggers the Bluetooth sub
> system driver (btusb.ko) directly in the host instead of ath3k
> DFU driver. Therefore, there is no firmware downloaded in to the
> RAM to bring up Bluetooth at this point. This is the problem
> we're trying to "fix".
> -------------------------------------------------------------------------------------------------------------------
>
> With the above patch we'd get ath3k to do the firmware uploading but
> I'm afraid that we'll go into a loop here unless we can figure out a
> way to get btusb to know the device is now ready.
Modify the firmware file so that after loading the firmware it gets for
example VID=0x0CF3, PID=0x3003.
Blacklist VID=0x0CF3, PID=0x3002 in btusb and add it to ath3k.
>From then on VID=0x0CF3, PID=0x3000 and PID=0x3002 mean "need firmware"
and PID=0x3003 is the operational state (like half of your PID=0x3002
usage is now)
c'ya
sven-haegar
--
Three may keep a secret, if two of them are dead.
- Ben F.
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists