aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/bluetooth/ath3k.c
diff options
context:
space:
mode:
authorSteven.Li <Steven.Li@Atheros.com>2011-07-01 02:02:36 -0400
committerGustavo F. Padovan <padovan@profusion.mobi>2011-07-01 13:48:02 -0400
commit2d25f8b462f3b849d8913d02978657ef06e67dd8 (patch)
tree5be565cc703be416a342ec404f57010f57db422c /drivers/bluetooth/ath3k.c
parente1447d8d8da5ceea60dca027e78274e6ea9b660e (diff)
Bluetooth: Add Atheros AR3012 one PID/VID supported
The new Ath3k needs to download patch and radio table, and it keeps same PID/VID even after downloading the patch and radio table. This patch is to use the bcdDevice (Device Release Number) to judge whether the chip has been patched or not. The init bcdDevice value of the chip is 0x0001, this value increases after patch and radio table downloading. Signed-off-by: Steven.Li <yongli@qca.qualcomm.com> Signed-off-by: Gustavo F. Padovan <padovan@profusion.mobi>
Diffstat (limited to 'drivers/bluetooth/ath3k.c')
-rw-r--r--drivers/bluetooth/ath3k.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/drivers/bluetooth/ath3k.c b/drivers/bluetooth/ath3k.c
index 6bacef368fab..a5854735bb2e 100644
--- a/drivers/bluetooth/ath3k.c
+++ b/drivers/bluetooth/ath3k.c
@@ -375,6 +375,11 @@ static int ath3k_probe(struct usb_interface *intf,
375 375
376 /* load patch and sysconfig files for AR3012 */ 376 /* load patch and sysconfig files for AR3012 */
377 if (id->driver_info & BTUSB_ATH3012) { 377 if (id->driver_info & BTUSB_ATH3012) {
378
379 /* New firmware with patch and sysconfig files already loaded */
380 if (le16_to_cpu(udev->descriptor.bcdDevice) > 0x0001)
381 return -ENODEV;
382
378 ret = ath3k_load_patch(udev); 383 ret = ath3k_load_patch(udev);
379 if (ret < 0) { 384 if (ret < 0) {
380 BT_ERR("Loading patch file failed"); 385 BT_ERR("Loading patch file failed");