[linux-dvb] digi vox mini II problems,

Pierre Willenbrock pierre at pirsoft.dnsalias.org
Thu Mar 1 21:59:00 CET 2007


Nick Andrew schrieb:
> On Thu, Mar 01, 2007 at 02:59:09PM +0100, Pierre Willenbrock wrote:
>> +	if (dvb_attach(tda827x_attach, adap->fe, 0xc0, &adap->dev->i2c_adap,
>> +		       &digivox_tda8275_config) == NULL)
> 
> You sure about the 0xc0 there ?

I am not sure, but that is the way the i2c-transfer function expects the
address. The 0xc0 gets passed right through to that function, where it
was matched against its internal list of i2c devices to get the correct
read-address from the "magic" field. Currently, its calculated by
'or'ing 1 onto the "address".

> 
> In a previous msg on this list to me, Trent Piepho <xyzzy at speakeasy.org> wrote:
> 
>>> The I2C address passed to tda827x_attach is a 7-bit address.  Instead of
>>> scanning 2, 4, 6, ... 254, you should scan 1, 2, 3, ... 127.   You
>>> probably want to use i>>1.
> 
> And the error msg within tda827x_attach() says:
> 
>         if (i2c_transfer(i2c, &msg, 1) != 1) {
>                 printk("%s: could not read from tuner at addr: 0x%02x\n",
>                        __FUNCTION__, addr << 1);
>                 return NULL;
>         }
> 
> (resulting in "could not read from tuner at addr: 0x180")

Seems like the i2c_transfer function is wrong, then, as are the places
in m920x.c setting the addresses. I need to dig out my i2c-specs, i guess.

Regards,
  Pierre



More information about the linux-dvb mailing list