Michael Krufky schreef:
Michel Verbraak wrote:
Hans Verkuil schreef:
On Sunday 26 August 2007 11:18:56 Michel Verbraak wrote:
Manu Abraham schreef:
Michel Verbraak wrote:
I have a Twinhan VP-1034 and I use the the latest hg, today, and
http://jusst.de/manu/mantis-v4l-dvb.tar.bz2 with kernel 2.6.22.1.

When I do a 'modprobe mantis' my prompt never returns. The machine
still is working.
....

Aug 26 11:08:32 recorder kernel: ivtv0: Autodetected Hauppauge WinTV
PVR-350 Aug 26 11:08:32 recorder kernel: tuner 2-0061: chip found @
0xc2 (ivtv i2c driver #0)
Aug 26 11:08:32 recorder kernel: ivtv0 i2c: i2c client attach
Aug 26 11:08:32 recorder kernel:         mantis_i2c_write:
Address=[0x25] <W>[ ]
Aug 26 11:08:32 recorder kernel:         mantis_i2c_write:
Address=[0x25] <W>[ 00 00 ]
Aug 26 11:08:32 recorder kernel:         mantis_i2c_write:
Address=[0x25] <W>[ 00 ]
Aug 26 11:08:32 recorder kernel:         mantis_i2c_read:
Address=[0x25] <R>[ 00 ]
Aug 26 11:08:32 recorder kernel:         mantis_i2c_write:
Address=[0x25] <W>[ 00 01 === Interrupts[0001/0001]= [* I2C DONE  *]
Ah, ivtv is probing for the saa7115 device. The saa7115 driver probes
among others i2c address 0x25, which is also used by the mantis.

And what's changed is that in kernel 2.6.21 the following change was
made to the saa7115.c driver:

static int saa711x_probe(struct i2c_adapter *adapter)
{
        if (adapter->class & I2C_CLASS_TV_ANALOG || adapter->class &
I2C_CLASS_TV_DIGITAL)
                return i2c_probe(adapter, &addr_data, &saa711x_attach);
        return 0;
}

The TV_DIGITAL check was added, so now it is also suddenly used by the
mantis. Apparently added to support the Nexus CA.

The only solution at this time is to add the following module option
to saa7115: ignore=-1,0x25

This should ensure it that it ignores i2c address 0x25. Work is being
done to make probing unnecessary or at least much smarter, but that
will be quite a long transition period, most likely. For the time
being this is probably your only solution.

Regards,

    Hans
Hans and Manu,
The mantis and ivtv module loaded ok with the following options for
saa7115 in /etc/modprobe.conf:
options saa7115 ignore=-1,0x25,-1,0x24,-1,0x21,-1,0x20

                          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

Just change the -1 to the i2c bus ID of the mantis device, to prevent saa7115 
from probing on the mantis bus.  This way, it would not prevent successful 
attachment to the ivtv i2c bus, and you wouldn't have to do the hack described 
below.

Regards,

Mike


Mike,
I tried your suggestion and it worked. Took me some time to find the right i2c bus ID because they are ordered from first come first served.

For any one who will read this in the future this is how it can be solved:
1. In my case the mantis driver is claiming an i2c bus id before the ivtv driver. 2. Make sure your ivtv modules do not load. Rename the ivtv.ko module file to ivtv.ko.old and do a depmod -a. blacklisting in /etc/depmod.d/blacklist did not work for me.
3. reboot.
4. 'modprobe i2c-dev' and do 'i2cdetect -l'
5. find the i2c bus id for the Mantis driver. Mine looks like 'i2c-1 smbus Mantis I2C SMBus adapter'. The bus id is 1 from the i2c-1 part. 6. Add the following line to /etc/modprobe.conf: options saa7115 ignore=1,0x25,1,0x24,1,0x21,1,0x20 (replace the 1's (ones) to your bus id).
7. Rename ivtv.ko.old back to ivtv.ko and do a depmod -a.
8. Reboot and al should be fine. If not the bus-id is wrong.

Thanks to all who helped.

Michel.

<snip>
_______________________________________________
linux-dvb mailing list
linux-dvb@linuxtv.org
http://www.linuxtv.org/cgi-bin/mailman/listinfo/linux-dvb

Reply via email to