Commit fafdc26b authored by Hans Verkuil's avatar Hans Verkuil Committed by Mauro Carvalho Chehab

[media] bttv: there may be multiple tvaudio/tda7432 devices

Probe for additional tvaudio devices, and allow tvaudio+tda7432 to
co-exist. My STB TV PCI FM bttv card has a tda7432, a tda9850 and a
tea6420 and with this patch it finally works again (probably for the
first time in many years).
Signed-off-by: default avatarHans Verkuil <hans.verkuil@cisco.com>
Signed-off-by: default avatarMauro Carvalho Chehab <mchehab@redhat.com>
parent 6795cc55
...@@ -3547,6 +3547,16 @@ void bttv_init_card2(struct bttv *btv) ...@@ -3547,6 +3547,16 @@ void bttv_init_card2(struct bttv *btv)
if (btv->sd_msp34xx) if (btv->sd_msp34xx)
return; return;
/* Now see if we can find one of the tvaudio devices. */
btv->sd_tvaudio = v4l2_i2c_new_subdev(&btv->c.v4l2_dev,
&btv->c.i2c_adap, "tvaudio", 0, tvaudio_addrs());
if (btv->sd_tvaudio) {
/* There may be two tvaudio chips on the card, so try to
find another. */
v4l2_i2c_new_subdev(&btv->c.v4l2_dev,
&btv->c.i2c_adap, "tvaudio", 0, tvaudio_addrs());
}
/* it might also be a tda7432. */ /* it might also be a tda7432. */
if (!bttv_tvcards[btv->c.type].no_tda7432) { if (!bttv_tvcards[btv->c.type].no_tda7432) {
static const unsigned short addrs[] = { static const unsigned short addrs[] = {
...@@ -3559,10 +3569,6 @@ void bttv_init_card2(struct bttv *btv) ...@@ -3559,10 +3569,6 @@ void bttv_init_card2(struct bttv *btv)
if (btv->sd_tda7432) if (btv->sd_tda7432)
return; return;
} }
/* Now see if we can find one of the tvaudio devices. */
btv->sd_tvaudio = v4l2_i2c_new_subdev(&btv->c.v4l2_dev,
&btv->c.i2c_adap, "tvaudio", 0, tvaudio_addrs());
if (btv->sd_tvaudio) if (btv->sd_tvaudio)
return; return;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment