return read[0] << 8 | read[1]; 
retval = read[0] << 8 | read[1]; dprintk_trace("trace: msp3400c_read(0x%x, 0x%x): 0x%x\n", dev, addr, retval); return retval; 
msp3400c_read(struct i2c_client *client, int dev, int addr){	int err;        unsigned char write[3];        unsigned char read[2];        struct i2c_msg msgs[2] = {                { client->addr, 0,        3, write },                { client->addr, I2C_M_RD, 2, read  }        };        write[0] = dev+1;        write[1] = addr >> 8;        write[2] = addr & 0xff;	for (err = 0; err < 3;) {		if (2 == i2c_transfer(client->adapter,msgs,2))			break;		err++;		printk(KERN_WARNING "msp34xx: I/O error #%d (read 0x%02x/0x%02x)\n",		       err, dev, addr);		msleep(10);	}	if (3 == err) {		printk(KERN_WARNING "msp34xx: giving up, reseting chip. Sound will go off, sorry folks :-|\n");		msp3400c_reset(client);		return -1;	}	return read[0] << 8 | read[1];}
10457	/local/tlutelli/issta_data/temp/c/2005_temp/2005/10457/6df840f20d1ff63fd13ed1bb3e186395ee800794/msp3400.c/buggy/drivers/media/video/msp3400.c