tuner_info ("could not clearly identify tuner address, defaulting to %x\n", tuner_addrs); 
tuner_info ("Could not clearly identify tda8290/8275 tuner address.\n"); return -1; 
int tda8290_init(struct i2c_client *c){	struct tuner *t = i2c_get_clientdata(c);	u8 data;	int i, ret, tuners_found;	u32 tuner_addrs;	struct i2c_msg msg = {.flags=I2C_M_RD, .buf=&data, .len = 1};	tda8290_i2c_bridge(c, 1);	/* probe for tuner chip */	tuners_found = 0;	tuner_addrs = 0;	for (i=0x60; i<= 0x63; i++) {		msg.addr = i;		ret = i2c_transfer(c->adapter, &msg, 1);		if (ret == 1) {			tuners_found++;			tuner_addrs = (tuner_addrs << 8) + i;		}	}	/* if there is more than one tuner, we expect the right one is	   behind the bridge and we choose the highest address that doesn't	   give a response now	 */	tda8290_i2c_bridge(c, 0);	if(tuners_found > 1)		for (i = 0; i < tuners_found; i++) {			msg.addr = tuner_addrs  & 0xff;			ret = i2c_transfer(c->adapter, &msg, 1);			if(ret == 1)				tuner_addrs = tuner_addrs >> 8;			else				break;		}	if (tuner_addrs == 0) {		tuner_addrs = 0x61;		tuner_info ("could not clearly identify tuner address, defaulting to %x\n",			     tuner_addrs);	} else {		tuner_addrs = tuner_addrs & 0xff;		tuner_info ("setting tuner address to %x\n", tuner_addrs);	}	t->tda827x_addr = tuner_addrs;	msg.addr = tuner_addrs;	tda8290_i2c_bridge(c, 1);	ret = i2c_transfer(c->adapter, &msg, 1);	if( ret != 1)		tuner_warn ("TDA827x access failed!\n");	if ((data & 0x3c) == 0) {		strlcpy(c->name, "tda8290+75", sizeof(c->name));		t->tda827x_ver = 0;	} else {		strlcpy(c->name, "tda8290+75a", sizeof(c->name));		t->tda827x_ver = 2;	}	tuner_info("tuner: type set to %s\n", c->name);	t->tv_freq    = set_tv_freq;	t->radio_freq = set_radio_freq;	t->has_signal = has_signal;	t->standby = standby;	t->tda827x_lpsel = 0;	tda8290_init_tuner(c);	tda8290_init_if(c);	return 0;}
10457	/local/tlutelli/issta_data/temp/c/2005_temp/2005/10457/13dd38d0814f36fce3a7ec9cb29a5ce6b0fc2522/tda8290.c/buggy/drivers/media/video/tda8290.c