class_device_create(dvb_class, MKDEV(DVB_MAJOR, nums2minor(adap->num, type, id)), 
class_device_create(dvb_class, NULL, MKDEV(DVB_MAJOR, nums2minor(adap->num, type, id)), 
int dvb_register_device(struct dvb_adapter *adap, struct dvb_device **pdvbdev,			const struct dvb_device *template, void *priv, int type){	struct dvb_device *dvbdev;	int id;	if (down_interruptible (&dvbdev_register_lock))		return -ERESTARTSYS;	if ((id = dvbdev_get_free_id (adap, type)) < 0) {		up (&dvbdev_register_lock);		*pdvbdev = NULL;		printk ("%s: could get find free device id...\n", __FUNCTION__);		return -ENFILE;	}	*pdvbdev = dvbdev = kmalloc(sizeof(struct dvb_device), GFP_KERNEL);	if (!dvbdev) {		up(&dvbdev_register_lock);		return -ENOMEM;	}	up (&dvbdev_register_lock);	memcpy(dvbdev, template, sizeof(struct dvb_device));	dvbdev->type = type;	dvbdev->id = id;	dvbdev->adapter = adap;	dvbdev->priv = priv;	dvbdev->fops->owner = adap->module;	list_add_tail (&dvbdev->list_head, &adap->device_list);	devfs_mk_cdev(MKDEV(DVB_MAJOR, nums2minor(adap->num, type, id)),			S_IFCHR | S_IRUSR | S_IWUSR,			"dvb/adapter%d/%s%d", adap->num, dnames[type], id);	class_device_create(dvb_class, MKDEV(DVB_MAJOR, nums2minor(adap->num, type, id)),			    NULL, "dvb%d.%s%d", adap->num, dnames[type], id);	dprintk("DVB: register adapter%d/%s%d @ minor: %i (0x%02x)\n",		adap->num, dnames[type], id, nums2minor(adap->num, type, id),		nums2minor(adap->num, type, id));	return 0;}
10457	/local/tlutelli/issta_data/temp/c/2005_temp/2005/10457/53f4654272df7c51064825024340554b39c9efba/dvbdev.c/clean/drivers/media/dvb/dvb-core/dvbdev.c