On Mon, 10 Oct 2016 06:30:35 -0300 Mauro Carvalho Chehab <mchehab@xxxxxxxxxxxxxxxx> wrote: > > drivers/media/usb/dvb-usb/dib0700_devices.c | 10 +++------- > > 1 file changed, 3 insertions(+), 7 deletions(-) > > > > diff --git a/drivers/media/usb/dvb-usb/dib0700_devices.c > > b/drivers/media/usb/dvb-usb/dib0700_devices.c index > > 0857b56..3cd8566 100644 --- > > a/drivers/media/usb/dvb-usb/dib0700_devices.c +++ > > b/drivers/media/usb/dvb-usb/dib0700_devices.c @@ -1736,13 +1736,9 > > @@ static int dib809x_tuner_attach(struct dvb_usb_adapter *adap) > > struct dib0700_adapter_state *st = adap->priv; struct i2c_adapter > > *tun_i2c = st->dib8000_ops.get_i2c_master(adap->fe_adap[0].fe, > > DIBX000_I2C_INTERFACE_TUNER, 1); > > - if (adap->id == 0) { > > - if (dvb_attach(dib0090_register, > > adap->fe_adap[0].fe, tun_i2c, &dib809x_dib0090_config) == NULL) > > - return -ENODEV; > > - } else { > > - if (dvb_attach(dib0090_register, > > adap->fe_adap[0].fe, tun_i2c, &dib809x_dib0090_config) == NULL) > > - return -ENODEV; > > - } > > + if (dvb_attach(dib0090_register, adap->fe_adap[0].fe, > > + tun_i2c, &dib809x_dib0090_config) == NULL) > > + return -ENODEV; > > > I suspect that this patch is wrong. It should be, instead, using > fe_adap[1] on the else. > > Patrick, > > Could you please take a look? I think you're right, it should be fe_adap[1], but I have lost track of these devices and don't know the correct answer. However, this code was introduced by commit 91be260faaf8561dc51e72033c346f6ab28d40d8 Author: Nicolas Sugino <nsugino@xxxxxxxxxxx> Date: Thu Nov 26 19:00:28 2015 -0200 [media] dib8000: Add support for Mygica/Geniatech S2870 MyGica/Geniatech S2870 is very similar to the S870 but with dual tuner. The card is recognised as Geniatech STK8096-PVR. [mchehab@xxxxxxxxxxxxxxx: Fix some checkpatch.pl issues] Signed-off-by: Nicolas Sugino <nsugino@xxxxxxxxxxx> Signed-off-by: Mauro Carvalho Chehab <mchehab@xxxxxxxxxxxxxxx> diff --git a/drivers/media/usb/dvb-usb/dib0700_devices.c b/drivers/media/usb/dvb-usb/dib0700_devices.c index 7ed4964..ea0391e 100644 --- a/drivers/media/usb/dvb-usb/dib0700_devices.c +++ b/drivers/media/usb/dvb-usb/dib0700_devices.c @@ -1736,8 +1736,13 @@ static int dib809x_tuner_attach(struct dvb_usb_adapter *adap) struct dib0700_adapter_state *st = adap->priv; struct i2c_adapter *tun_i2c = st->dib8000_ops.get_i2c_master(adap->fe_adap[0].fe, DIBX000_I2C_INTERFACE_TUNER, 1); - if (dvb_attach(dib0090_register, adap->fe_adap[0].fe, tun_i2c, &dib809x_dib0090_config) == NULL) - return -ENODEV; + if (adap->id == 0) { + if (dvb_attach(dib0090_register, adap->fe_adap[0].fe, tun_i2c, &dib809x_dib0090_config) == NULL) + return -ENODEV; + } else { + if (dvb_attach(dib0090_register, adap->fe_adap[0].fe, tun_i2c, &dib809x_dib0090_config) == NULL) + return -ENODEV; + } st->set_param_save = adap->fe_adap[0].fe->ops.tuner_ops.set_params; adap->fe_adap[0].fe->ops.tuner_ops.set_params = dib8096_set_param_override; [..] Maybe Nicolas can help (and test). -- Patrick. -- To unsubscribe from this list: send the line "unsubscribe linux-media" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html