ir_input_nokey(&ir->input,&ir->ir); 
ir_input_nokey(ir->input, &ir->ir); 
static void ir_handle_key(struct IR *ir){	u32 gpio,data;	/* read gpio value */	gpio = bttv_gpio_read(ir->sub->core);	if (ir->polling) {		if (ir->last_gpio == gpio)			return;		ir->last_gpio = gpio;	}	/* extract data */	data = ir_extract_bits(gpio, ir->mask_keycode);	dprintk(DEVNAME ": irq gpio=0x%x code=%d | %s%s%s\n",		gpio, data,		ir->polling               ? "poll"  : "irq",		(gpio & ir->mask_keydown) ? " down" : "",		(gpio & ir->mask_keyup)   ? " up"   : "");	if (ir->mask_keydown) {		/* bit set on keydown */		if (gpio & ir->mask_keydown) {			ir_input_keydown(&ir->input,&ir->ir,data,data);		} else {			ir_input_nokey(&ir->input,&ir->ir);		}	} else if (ir->mask_keyup) {		/* bit cleared on keydown */		if (0 == (gpio & ir->mask_keyup)) {			ir_input_keydown(&ir->input,&ir->ir,data,data);		} else {			ir_input_nokey(&ir->input,&ir->ir);		}	} else {		/* can't disturgissh keydown/up :-/ */		ir_input_keydown(&ir->input,&ir->ir,data,data);		ir_input_nokey(&ir->input,&ir->ir);	}}
4520	/local/tlutelli/issta_data/temp/c/2005_temp/2005/4520/b7df3910c1298fee8ed7b9dfd2da74b85df5539c/ir-kbd-gpio.c/clean/drivers/media/video/ir-kbd-gpio.c