diff --git a/drivers/net/usb/pegasus.c b/drivers/net/usb/pegasus.c index d1ed68a..d0b18a8 100644 --- a/drivers/net/usb/pegasus.c +++ b/drivers/net/usb/pegasus.c @@ -1300,6 +1300,18 @@ static int pegasus_probe(struct usb_interface *intf, DECLARE_MAC_BUF(mac); usb_get_dev(dev); + + /* Special quirk to keep the driver from handling the Belkin Bluetooth + * dongle which happens to have the same ID. + */ + if (id->idVendor == VENDOR_BELKIN && id->idProduct == 0x0121) { + if (id->bDeviceClass == USB_CLASS_WIRELESS_CONTROLLER) + if (id->bDeviceProtocol == 1) { + res = -ENODEV; + goto out; + } + } + net = alloc_etherdev(sizeof(struct pegasus)); if (!net) { dev_err(&intf->dev, "can't allocate %s\n", "device");