git.openpandora.org
/
pandora-kernel.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
[Bluetooth] Add support for newer ANYCOM USB dongles
[pandora-kernel.git]
/
drivers
/
bluetooth
/
hci_usb.c
diff --git
a/drivers/bluetooth/hci_usb.c
b/drivers/bluetooth/hci_usb.c
index
0801af4
..
fdea58a
100644
(file)
--- a/
drivers/bluetooth/hci_usb.c
+++ b/
drivers/bluetooth/hci_usb.c
@@
-118,6
+118,9
@@
static struct usb_device_id blacklist_ids[] = {
/* IBM/Lenovo ThinkPad with Broadcom chip */
{ USB_DEVICE(0x0a5c, 0x201e), .driver_info = HCI_WRONG_SCO_MTU },
/* IBM/Lenovo ThinkPad with Broadcom chip */
{ USB_DEVICE(0x0a5c, 0x201e), .driver_info = HCI_WRONG_SCO_MTU },
+ /* ANYCOM Bluetooth USB-200 and USB-250 */
+ { USB_DEVICE(0x0a5c, 0x2111), .driver_info = HCI_RESET },
+
/* Microsoft Wireless Transceiver for Bluetooth 2.0 */
{ USB_DEVICE(0x045e, 0x009c), .driver_info = HCI_RESET },
/* Microsoft Wireless Transceiver for Bluetooth 2.0 */
{ USB_DEVICE(0x045e, 0x009c), .driver_info = HCI_RESET },
@@
-176,8
+179,8
@@
static struct _urb *_urb_dequeue(struct _urb_queue *q)
return _urb;
}
return _urb;
}
-static void hci_usb_rx_complete(struct urb *urb
, struct pt_regs *regs
);
-static void hci_usb_tx_complete(struct urb *urb
, struct pt_regs *regs
);
+static void hci_usb_rx_complete(struct urb *urb);
+static void hci_usb_tx_complete(struct urb *urb);
#define __pending_tx(husb, type) (&husb->pending_tx[type-1])
#define __pending_q(husb, type) (&husb->pending_q[type-1])
#define __pending_tx(husb, type) (&husb->pending_tx[type-1])
#define __pending_q(husb, type) (&husb->pending_q[type-1])
@@
-732,7
+735,7
@@
static inline int __recv_frame(struct hci_usb *husb, int type, void *data, int c
return 0;
}
return 0;
}
-static void hci_usb_rx_complete(struct urb *urb
, struct pt_regs *regs
)
+static void hci_usb_rx_complete(struct urb *urb)
{
struct _urb *_urb = container_of(urb, struct _urb, urb);
struct hci_usb *husb = (void *) urb->context;
{
struct _urb *_urb = container_of(urb, struct _urb, urb);
struct hci_usb *husb = (void *) urb->context;
@@
-786,7
+789,7
@@
unlock:
read_unlock(&husb->completion_lock);
}
read_unlock(&husb->completion_lock);
}
-static void hci_usb_tx_complete(struct urb *urb
, struct pt_regs *regs
)
+static void hci_usb_tx_complete(struct urb *urb)
{
struct _urb *_urb = container_of(urb, struct _urb, urb);
struct hci_usb *husb = (void *) urb->context;
{
struct _urb *_urb = container_of(urb, struct _urb, urb);
struct hci_usb *husb = (void *) urb->context;