25 #include <linux/module.h>
69 static void usb6fire_chip_destroy(
struct sfire_chip *chip)
91 struct usb_device *
device = interface_to_usbdev(intf);
101 usb_set_intfdata(intf, chips[i]);
104 }
else if (regidx < 0)
136 device->bus->busnum, device->devnum);
140 chips[regidx] =
chip;
148 usb6fire_chip_destroy(chip);
154 usb6fire_chip_destroy(chip);
160 usb6fire_chip_destroy(chip);
166 usb6fire_chip_destroy(chip);
173 usb6fire_chip_destroy(chip);
176 usb_set_intfdata(intf, chip);
180 static void usb6fire_chip_disconnect(
struct usb_interface *intf)
185 chip = usb_get_intfdata(intf);
196 usb6fire_chip_abort(chip);
197 usb6fire_chip_destroy(chip);
204 .match_flags = USB_DEVICE_ID_MATCH_DEVICE,
213 static struct usb_driver usb_driver = {
214 .name =
"snd-usb-6fire",
215 .probe = usb6fire_chip_probe,
216 .disconnect = usb6fire_chip_disconnect,
217 .id_table = device_table,