Before dvb_pll_attch call, be sure that drxd demodulator was initialized, otherwise, dvb_pll_attach() will always failed. In dvb_pll_attach(), first thing done is to enable the I2C gate control in order to probe the pll by performing a read access. As demodulator was not initialized, every i2c access failed. Reported-by: frederic.mantegazza@xxxxxxxxxxx Signed-off-by: Patrice Chotard <patricechotard@xxxxxxx> --- drivers/media/pci/ngene/ngene-cards.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/drivers/media/pci/ngene/ngene-cards.c b/drivers/media/pci/ngene/ngene-cards.c index 96a13ed..e2192db 100644 --- a/drivers/media/pci/ngene/ngene-cards.c +++ b/drivers/media/pci/ngene/ngene-cards.c @@ -328,6 +328,8 @@ static int demod_attach_drxd(struct ngene_channel *chan) return -ENODEV; } + /* initialized the DRXD demodulator */ + chan->fe->ops.init(chan->fe); if (!dvb_attach(dvb_pll_attach, chan->fe, feconf->pll_address, &chan->i2c_adapter, feconf->pll_type)) { -- 1.7.10.4 -- 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