Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/padovan/bluetooth-2.6
This commit is contained in:
@@ -41,6 +41,9 @@ static struct usb_device_id ath3k_table[] = {
|
|||||||
|
|
||||||
/* Atheros AR9285 Malbec with sflash firmware */
|
/* Atheros AR9285 Malbec with sflash firmware */
|
||||||
{ USB_DEVICE(0x03F0, 0x311D) },
|
{ USB_DEVICE(0x03F0, 0x311D) },
|
||||||
|
|
||||||
|
/* Atheros AR5BBU12 with sflash firmware */
|
||||||
|
{ USB_DEVICE(0x0489, 0xE02C) },
|
||||||
{ } /* Terminating entry */
|
{ } /* Terminating entry */
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@@ -105,6 +105,9 @@ static struct usb_device_id blacklist_table[] = {
|
|||||||
/* Atheros AR9285 Malbec with sflash firmware */
|
/* Atheros AR9285 Malbec with sflash firmware */
|
||||||
{ USB_DEVICE(0x03f0, 0x311d), .driver_info = BTUSB_IGNORE },
|
{ USB_DEVICE(0x03f0, 0x311d), .driver_info = BTUSB_IGNORE },
|
||||||
|
|
||||||
|
/* Atheros AR5BBU12 with sflash firmware */
|
||||||
|
{ USB_DEVICE(0x0489, 0xe02c), .driver_info = BTUSB_IGNORE },
|
||||||
|
|
||||||
/* Broadcom BCM2035 */
|
/* Broadcom BCM2035 */
|
||||||
{ USB_DEVICE(0x0a5c, 0x2035), .driver_info = BTUSB_WRONG_SCO_MTU },
|
{ USB_DEVICE(0x0a5c, 0x2035), .driver_info = BTUSB_WRONG_SCO_MTU },
|
||||||
{ USB_DEVICE(0x0a5c, 0x200a), .driver_info = BTUSB_WRONG_SCO_MTU },
|
{ USB_DEVICE(0x0a5c, 0x200a), .driver_info = BTUSB_WRONG_SCO_MTU },
|
||||||
@@ -829,7 +832,7 @@ static void btusb_work(struct work_struct *work)
|
|||||||
|
|
||||||
if (hdev->conn_hash.sco_num > 0) {
|
if (hdev->conn_hash.sco_num > 0) {
|
||||||
if (!test_bit(BTUSB_DID_ISO_RESUME, &data->flags)) {
|
if (!test_bit(BTUSB_DID_ISO_RESUME, &data->flags)) {
|
||||||
err = usb_autopm_get_interface(data->isoc);
|
err = usb_autopm_get_interface(data->isoc ? data->isoc : data->intf);
|
||||||
if (err < 0) {
|
if (err < 0) {
|
||||||
clear_bit(BTUSB_ISOC_RUNNING, &data->flags);
|
clear_bit(BTUSB_ISOC_RUNNING, &data->flags);
|
||||||
usb_kill_anchored_urbs(&data->isoc_anchor);
|
usb_kill_anchored_urbs(&data->isoc_anchor);
|
||||||
@@ -858,7 +861,7 @@ static void btusb_work(struct work_struct *work)
|
|||||||
|
|
||||||
__set_isoc_interface(hdev, 0);
|
__set_isoc_interface(hdev, 0);
|
||||||
if (test_and_clear_bit(BTUSB_DID_ISO_RESUME, &data->flags))
|
if (test_and_clear_bit(BTUSB_DID_ISO_RESUME, &data->flags))
|
||||||
usb_autopm_put_interface(data->isoc);
|
usb_autopm_put_interface(data->isoc ? data->isoc : data->intf);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@@ -727,7 +727,9 @@ static int rfcomm_tty_open(struct tty_struct *tty, struct file *filp)
|
|||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
tty_unlock();
|
||||||
schedule();
|
schedule();
|
||||||
|
tty_lock();
|
||||||
}
|
}
|
||||||
set_current_state(TASK_RUNNING);
|
set_current_state(TASK_RUNNING);
|
||||||
remove_wait_queue(&dev->wait, &wait);
|
remove_wait_queue(&dev->wait, &wait);
|
||||||
|
Reference in New Issue
Block a user