X-Git-Url: http://git.onelab.eu/?a=blobdiff_plain;f=drivers%2Fbluetooth%2Fbcm203x.c;h=3e7a067cc0871dafce5f0427f2690c383983a2c3;hb=43bc926fffd92024b46cafaf7350d669ba9ca884;hp=1de33046edd4ed7b51b7f8e83169f2f8706dc3c9;hpb=9213980e6a70d8473e0ffd4b39ab5b6caaba9ff5;p=linux-2.6.git diff --git a/drivers/bluetooth/bcm203x.c b/drivers/bluetooth/bcm203x.c index 1de33046e..3e7a067cc 100644 --- a/drivers/bluetooth/bcm203x.c +++ b/drivers/bluetooth/bcm203x.c @@ -2,6 +2,7 @@ * * Broadcom Blutonium firmware driver * + * Copyright (C) 2003 Maxim Krasnyansky * Copyright (C) 2003 Marcel Holtmann * * @@ -45,6 +46,8 @@ #define VERSION "1.0" +static int ignore = 0; + static struct usb_device_id bcm203x_table[] = { /* Broadcom Blutonium (BCM2033) */ { USB_DEVICE(0x0a5c, 0x2033) }, @@ -54,7 +57,6 @@ static struct usb_device_id bcm203x_table[] = { MODULE_DEVICE_TABLE(usb, bcm203x_table); - #define BCM203X_ERROR 0 #define BCM203X_RESET 1 #define BCM203X_LOAD_MINIDRV 2 @@ -174,17 +176,15 @@ static int bcm203x_probe(struct usb_interface *intf, const struct usb_device_id BT_DBG("intf %p id %p", intf, id); - if (intf->cur_altsetting->desc.bInterfaceNumber != 0) + if (ignore || (intf->cur_altsetting->desc.bInterfaceNumber != 0)) return -ENODEV; - data = kmalloc(sizeof(*data), GFP_KERNEL); + data = kzalloc(sizeof(*data), GFP_KERNEL); if (!data) { BT_ERR("Can't allocate memory for data structure"); return -ENOMEM; } - memset(data, 0, sizeof(*data)); - data->udev = udev; data->state = BCM203X_LOAD_MINIDRV; @@ -264,7 +264,7 @@ static void bcm203x_disconnect(struct usb_interface *intf) BT_DBG("intf %p", intf); - usb_unlink_urb(data->urb); + usb_kill_urb(data->urb); usb_set_intfdata(intf, NULL); @@ -275,7 +275,6 @@ static void bcm203x_disconnect(struct usb_interface *intf) } static struct usb_driver bcm203x_driver = { - .owner = THIS_MODULE, .name = "bcm203x", .probe = bcm203x_probe, .disconnect = bcm203x_disconnect, @@ -303,6 +302,9 @@ static void __exit bcm203x_exit(void) module_init(bcm203x_init); module_exit(bcm203x_exit); +module_param(ignore, bool, 0644); +MODULE_PARM_DESC(ignore, "Ignore devices from the matching table"); + MODULE_AUTHOR("Marcel Holtmann "); MODULE_DESCRIPTION("Broadcom Blutonium firmware driver ver " VERSION); MODULE_VERSION(VERSION);