[media] bttv: Use btv->has_radio rather then the card info when registering the tuner
bttv_init_card2() sets btv->has_audio to a *default* value from the tvcards array and then may update it by reading a card specific eeprom or gpio detection. After bttv_init_card2(), bttv_init_tuner() gets called, and it should clearly use the updated, dynamic has_radio value from btv->has_radio, rather then the const value in the tvcards array. This fixes the radio not working on my Hauppauge WinTV. Signed-off-by: Hans de Goede <hdegoede@redhat.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
This commit is contained in:
parent
40e006aea8
commit
5c164646e2
|
@ -3649,7 +3649,7 @@ void __devinit bttv_init_tuner(struct bttv *btv)
|
|||
struct tuner_setup tun_setup;
|
||||
|
||||
/* Load tuner module before issuing tuner config call! */
|
||||
if (bttv_tvcards[btv->c.type].has_radio)
|
||||
if (btv->has_radio)
|
||||
v4l2_i2c_new_subdev(&btv->c.v4l2_dev,
|
||||
&btv->c.i2c_adap, "tuner",
|
||||
0, v4l2_i2c_tuner_addrs(ADDRS_RADIO));
|
||||
|
@ -3664,7 +3664,7 @@ void __devinit bttv_init_tuner(struct bttv *btv)
|
|||
tun_setup.type = btv->tuner_type;
|
||||
tun_setup.addr = addr;
|
||||
|
||||
if (bttv_tvcards[btv->c.type].has_radio)
|
||||
if (btv->has_radio)
|
||||
tun_setup.mode_mask |= T_RADIO;
|
||||
|
||||
bttv_call_all(btv, tuner, s_type_addr, &tun_setup);
|
||||
|
|
Loading…
Reference in New Issue