if (device_is_registered(&intf->dev)) usb_create_sysfs_intf_files(intf); 
int usb_reset_configuration(struct usb_device *dev){	int			i, retval;	struct usb_host_config	*config;	if (dev->state == USB_STATE_SUSPENDED)		return -EHOSTUNREACH;	/* caller must have locked the device and must own	 * the usb bus readlock (so driver bindings are stable);	 * calls during probe() are fine	 */	for (i = 1; i < 16; ++i) {		usb_disable_endpoint(dev, i);		usb_disable_endpoint(dev, i + USB_DIR_IN);	}	config = dev->actconfig;	retval = usb_control_msg(dev, usb_sndctrlpipe(dev, 0),			USB_REQ_SET_CONFIGURATION, 0,			config->desc.bConfigurationValue, 0,			NULL, 0, USB_CTRL_SET_TIMEOUT);	if (retval < 0) {		usb_set_device_state(dev, USB_STATE_ADDRESS);		return retval;	}	dev->toggle[0] = dev->toggle[1] = 0;	/* re-init hc/hcd interface/endpoint state */	for (i = 0; i < config->desc.bNumInterfaces; i++) {		struct usb_interface *intf = config->interface[i];		struct usb_host_interface *alt;		alt = usb_altnum_to_altsetting(intf, 0);		/* No altsetting 0?  We'll assume the first altsetting.		 * We could use a GetInterface call, but if a device is		 * so non-compliant that it doesn't have altsetting 0		 * then I wouldn't trust its reply anyway.		 */		if (!alt)			alt = &intf->altsetting[0];		intf->cur_altsetting = alt;		usb_enable_interface(dev, intf);	}	return 0;}
10457	/local/tlutelli/issta_data/temp/c/2005_temp/2005/10457/0e6c8e8db508fcb292836b23d039649c5de29090/message.c/buggy/drivers/usb/core/message.c