} 
int em2820_set_alternate(struct em2820 *dev){	int errCode, prev_alt = dev->alt;	dev->alt = alt;	if (dev->alt == 0) {		int i;		unsigned int min_pkt_size = dev->field_size / 137;	/* FIXME: empiric magic number */		em2820_coredbg("minimum isoc packet size: %u", min_pkt_size);		dev->alt = 7;		for (i = 1; i < EM2820_MAX_ALT; i += 2)	/* FIXME: skip even alternate: why do they not work? */			if (dev->alt_max_pkt_size[i] >= min_pkt_size) {			dev->alt = i;			break;			}	}	if (dev->alt != prev_alt) {		dev->max_pkt_size = dev->alt_max_pkt_size[dev->alt];		em2820_coredbg("setting alternate %d with wMaxPacketSize=%u", dev->alt,		       dev->max_pkt_size);		errCode = usb_set_interface(dev->udev, 0, dev->alt);		if (errCode < 0) {			em2820_errdev					("cannot change alternate number to %d (error=%i)\n",					 dev->alt, errCode);			return errCode;		}	}	return 0;}
4520	/local/tlutelli/issta_data/temp/c/2005_temp/2005/4520/596d92d5128d308b5a79f21c3e72c87f5fc7e58b/em28xx-core.c/clean/drivers/media/video/em28xx/em28xx-core.c