#if defined(CONFIG_INPUT_EVDEV) || defined(CONFIG_INPUT_EVDEV_MODULE) av7110_ir_exit(av7110); #endif 
static int av7110_detach(struct saa7146_dev* saa){	struct av7110 *av7110 = saa->ext_priv;	dprintk(4, "%p\n", av7110);	if (budgetpatch) {		/* Disable RPS1 */		saa7146_write(saa, MC1, MASK_29);		/* VSYNC LOW (inactive) */		saa7146_setgpio(saa, 3, SAA7146_GPIO_OUTLO);		saa7146_write(saa, MC1, MASK_20);	/* DMA3 off */		SAA7146_IER_DISABLE(saa, MASK_10);		SAA7146_ISR_CLEAR(saa, MASK_10);		msleep(50);		tasklet_kill(&av7110->vpe_tasklet);		saa7146_pgtable_free(saa->pci, &av7110->pt);	}	av7110_exit_v4l(av7110);	av7110_arm_sync(av7110);	tasklet_kill(&av7110->debi_tasklet);	tasklet_kill(&av7110->gpio_tasklet);	dvb_unregister(av7110);	SAA7146_IER_DISABLE(saa, MASK_19 | MASK_03);	SAA7146_ISR_CLEAR(saa, MASK_19 | MASK_03);	av7110_ca_exit(av7110);	av7110_av_exit(av7110);	vfree(av7110->iobuf);	pci_free_consistent(saa->pci, 8192, av7110->debi_virt,			    av7110->debi_bus);	i2c_del_adapter(&av7110->i2c_adap);	dvb_unregister_adapter (&av7110->dvb_adapter);	av7110_num--;	put_firmware(av7110);	kfree(av7110);	saa->ext_priv = NULL;	return 0;}
10457	/local/tlutelli/issta_data/temp/c/2005_temp/2005/10457/03388ae30260475650bab24223151397afb72ec9/av7110.c/clean/drivers/media/dvb/ttpci/av7110.c