dev_info(&ati_remote->interface->dev, "Input registered: %s on %s\n", 
dev_info(&ati_remote->interface->dev, "Input registered: %s on %s\n", 
static int ati_remote_probe(struct usb_interface *interface, const struct usb_device_id *id){	struct usb_device *udev = interface_to_usbdev(interface);	struct ati_remote *ati_remote = NULL;	struct usb_host_interface *iface_host;	int retval = -ENOMEM;	char path[64];	/* Allocate and clear an ati_remote struct */	if (!(ati_remote = kmalloc(sizeof (struct ati_remote), GFP_KERNEL)))		return -ENOMEM;	memset(ati_remote, 0x00, sizeof (struct ati_remote));	iface_host = interface->cur_altsetting;	if (iface_host->desc.bNumEndpoints != 2) {		err("%s: Unexpected desc.bNumEndpoints\n", __FUNCTION__);		retval = -ENODEV;		goto error;	}	ati_remote->endpoint_in = &(iface_host->endpoint[0].desc);	ati_remote->endpoint_out = &(iface_host->endpoint[1].desc);	ati_remote->udev = udev;	ati_remote->interface = interface;	if (!(ati_remote->endpoint_in->bEndpointAddress & 0x80)) {		err("%s: Unexpected endpoint_in->bEndpointAddress\n", __FUNCTION__);		retval = -ENODEV;		goto error;	}	if ((ati_remote->endpoint_in->bmAttributes & 3) != 3) {		err("%s: Unexpected endpoint_in->bmAttributes\n", __FUNCTION__);		retval = -ENODEV;		goto error;	}	if (le16_to_cpu(ati_remote->endpoint_in->wMaxPacketSize) == 0) {		err("%s: endpoint_in message size==0? \n", __FUNCTION__);		retval = -ENODEV;		goto error;	}	/* Allocate URB buffers, URBs */	ati_remote->inbuf = usb_buffer_alloc(udev, DATA_BUFSIZE, SLAB_ATOMIC,					     &ati_remote->inbuf_dma);	if (!ati_remote->inbuf)		goto error;	ati_remote->outbuf = usb_buffer_alloc(udev, DATA_BUFSIZE, SLAB_ATOMIC,					      &ati_remote->outbuf_dma);	if (!ati_remote->outbuf)		goto error;	ati_remote->irq_urb = usb_alloc_urb(0, GFP_KERNEL);	if (!ati_remote->irq_urb)		goto error;	ati_remote->out_urb = usb_alloc_urb(0, GFP_KERNEL);	if (!ati_remote->out_urb)		goto error;	usb_make_path(udev, path, NAME_BUFSIZE);	sprintf(ati_remote->phys, "%s/input%d", path, ATI_INPUTNUM);	if (udev->manufacturer)		strcat(ati_remote->name, udev->manufacturer);	if (udev->product)		sprintf(ati_remote->name, "%s %s", ati_remote->name, udev->product);	if (!strlen(ati_remote->name))		sprintf(ati_remote->name, DRIVER_DESC "(%04x,%04x)",			le16_to_cpu(ati_remote->udev->descriptor.idVendor), 			le16_to_cpu(ati_remote->udev->descriptor.idProduct));	/* Device Hardware Initialization - fills in ati_remote->idev from udev. */	retval = ati_remote_initialize(ati_remote);	if (retval)		goto error;	/* Set up and register input device */	ati_remote_input_init(ati_remote);	input_register_device(&ati_remote->idev);	dev_info(&ati_remote->interface->dev, "Input registered: %s on %s\n", 		 ati_remote->name, path);	usb_set_intfdata(interface, ati_remote);	error:	if (retval)		ati_remote_delete(ati_remote);	return retval;}
10457	/local/tlutelli/issta_data/temp/c/2005_temp/2005/10457/05f091ab4c8c1f12f8dd38ee789489904fea327d/ati_remote.c/clean/drivers/usb/input/ati_remote.c