int usb_driver_claim_interface (struct usb_driver * driver, struct usb_interface * iface, void* priv);
This is used by usb device drivers that need to claim more than one interface on a device when probing (audio and acm are current examples). No device driver should directly modify internal usb_interface or usb_device structure members.
Few drivers should need to use this routine, since the most natural way to bind to an interface is to return the private data from the driver's probe method.