diff options
Diffstat (limited to 'drivers/bluetooth/hci_usb.c')
| -rw-r--r-- | drivers/bluetooth/hci_usb.c | 13 |
1 files changed, 11 insertions, 2 deletions
diff --git a/drivers/bluetooth/hci_usb.c b/drivers/bluetooth/hci_usb.c index a5df8b573cfa..673fcce8e2c8 100644 --- a/drivers/bluetooth/hci_usb.c +++ b/drivers/bluetooth/hci_usb.c @@ -66,6 +66,9 @@ #define URB_ZERO_PACKET 0 #endif +static int ignore = 0; +static int reset = 0; + #ifdef CONFIG_BT_HCIUSB_SCO static int isoc = 2; #endif @@ -827,7 +830,7 @@ static int hci_usb_probe(struct usb_interface *intf, const struct usb_device_id id = match; } - if (id->driver_info & HCI_IGNORE) + if (ignore || id->driver_info & HCI_IGNORE) return -ENODEV; if (intf->cur_altsetting->desc.bInterfaceNumber > 0) @@ -963,7 +966,7 @@ static int hci_usb_probe(struct usb_interface *intf, const struct usb_device_id hdev->owner = THIS_MODULE; - if (id->driver_info & HCI_RESET) + if (reset || id->driver_info & HCI_RESET) set_bit(HCI_QUIRK_RESET_ON_INIT, &hdev->quirks); if (hci_register_dev(hdev) < 0) { @@ -1036,6 +1039,12 @@ static void __exit hci_usb_exit(void) module_init(hci_usb_init); module_exit(hci_usb_exit); +module_param(ignore, bool, 0644); +MODULE_PARM_DESC(ignore, "Ignore devices from the matching table"); + +module_param(reset, bool, 0644); +MODULE_PARM_DESC(reset, "Send HCI reset command on initialization"); + #ifdef CONFIG_BT_HCIUSB_SCO module_param(isoc, int, 0644); MODULE_PARM_DESC(isoc, "Set isochronous transfers for SCO over HCI support"); |
