/* avoid fast reapeating */ if (buf[1]==ir->old) return 0; 
static int get_key_em_haup(struct IR_i2c *ir, u32 *ir_key, u32 *ir_raw){	unsigned char buf[2];	unsigned char code;	/* poll IR chip */	if (2 != i2c_master_recv(&ir->c,buf,2))		return -EIO;	/* Does eliminate repeated parity code */	if (buf[1]==0xff)		return 0;	/* avoid fast reapeating */	if (buf[1]==ir->old)		return 0;	ir->old=buf[1];	/* Rearranges bits to the right order */	code=    ((buf[0]&0x01)<<5) | /* 0010 0000 */		 ((buf[0]&0x02)<<3) | /* 0001 0000 */		 ((buf[0]&0x04)<<1) | /* 0000 1000 */		 ((buf[0]&0x08)>>1) | /* 0000 0100 */		 ((buf[0]&0x10)>>3) | /* 0000 0010 */		 ((buf[0]&0x20)>>5);  /* 0000 0001 */	dprintk("ir hauppauge (em2840): code=0x%02x (rcv=0x%02x)\n",code,buf[0]);	/* return key */	*ir_key = code;	*ir_raw = code;	return 1;}
10457	/local/tlutelli/issta_data/temp/c/2005_temp/2005/10457/6555f4322f5c8dc03047eb566d8519ba348e02de/em28xx-input.c/buggy/drivers/media/video/em28xx/em28xx-input.c