diff options
Diffstat (limited to 'drivers/media/video/bttv-i2c.c')
-rw-r--r-- | drivers/media/video/bttv-i2c.c | 11 |
1 files changed, 6 insertions, 5 deletions
diff --git a/drivers/media/video/bttv-i2c.c b/drivers/media/video/bttv-i2c.c index e509ed91a290..5ad335705e1f 100644 --- a/drivers/media/video/bttv-i2c.c +++ b/drivers/media/video/bttv-i2c.c | |||
@@ -308,21 +308,22 @@ static int attach_inform(struct i2c_client *client) | |||
308 | 308 | ||
309 | if (btv->tuner_type != UNSET) { | 309 | if (btv->tuner_type != UNSET) { |
310 | struct tuner_setup tun_setup; | 310 | struct tuner_setup tun_setup; |
311 | struct tuner *t = i2c_get_clientdata(client); | ||
311 | 312 | ||
312 | if ((addr==ADDR_UNSET)||(addr==client->addr)) { | 313 | if ((addr==ADDR_UNSET)||(addr==client->addr)) { |
313 | tun_setup.mode_mask = T_ANALOG_TV | T_DIGITAL_TV; | 314 | tun_setup.mode_mask = T_ANALOG_TV | T_DIGITAL_TV; |
314 | tun_setup.type = btv->tuner_type; | 315 | tun_setup.type = btv->tuner_type; |
315 | tun_setup.addr = ADDR_UNSET; | 316 | tun_setup.addr = ADDR_UNSET; |
316 | 317 | ||
317 | client->driver->command (client, TUNER_SET_TYPE_ADDR, &tun_setup); | ||
318 | } | 318 | } |
319 | if ((radio_addr==ADDR_UNSET)||(radio_addr==client->addr)) { | 319 | |
320 | if (t->type != UNSET && t->mode_mask == T_RADIO) { | ||
321 | tun_setup.type = t->type; | ||
320 | tun_setup.mode_mask = T_RADIO; | 322 | tun_setup.mode_mask = T_RADIO; |
321 | tun_setup.type = btv->tuner_type; | ||
322 | tun_setup.addr = ADDR_UNSET; | 323 | tun_setup.addr = ADDR_UNSET; |
323 | |||
324 | client->driver->command (client, TUNER_SET_TYPE_ADDR, &tun_setup); | ||
325 | } | 324 | } |
325 | |||
326 | client->driver->command (client, TUNER_SET_TYPE_ADDR, &tun_setup); | ||
326 | } | 327 | } |
327 | 328 | ||
328 | if (btv->pinnacle_id != UNSET) | 329 | if (btv->pinnacle_id != UNSET) |