<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
  <meta content="text/html;charset=ISO-8859-15"
 http-equiv="Content-Type">
</head>
<body bgcolor="#ffffff" text="#000000">
Hans Verkuil schreef:
<blockquote cite="mid:200708261224.56137.hverkuil@xs4all.nl" type="cite">
  <pre wrap="">On Sunday 26 August 2007 11:18:56 Michel Verbraak wrote:
  </pre>
  <blockquote type="cite">
    <pre wrap="">Manu Abraham schreef:
    </pre>
    <blockquote type="cite">
      <pre wrap="">Michel Verbraak wrote:
      </pre>
      <blockquote type="cite">
        <pre wrap="">I have a Twinhan VP-1034 and I use the the latest hg, today, and
<a class="moz-txt-link-freetext" href="http://jusst.de/manu/mantis-v4l-dvb.tar.bz2">http://jusst.de/manu/mantis-v4l-dvb.tar.bz2</a> with kernel 2.6.22.1.

When I do a 'modprobe mantis' my prompt never returns. The machine
still is working.
        </pre>
      </blockquote>
    </blockquote>
  </blockquote>
  <pre wrap=""><!---->
....

  </pre>
  <blockquote type="cite">
    <pre wrap="">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] &lt;W&gt;[ ]
Aug 26 11:08:32 recorder kernel:         mantis_i2c_write:
Address=[0x25] &lt;W&gt;[ 00 00 ]
Aug 26 11:08:32 recorder kernel:         mantis_i2c_write:
Address=[0x25] &lt;W&gt;[ 00 ]
Aug 26 11:08:32 recorder kernel:         mantis_i2c_read:
Address=[0x25] &lt;R&gt;[ 00 ]
Aug 26 11:08:32 recorder kernel:         mantis_i2c_write:
Address=[0x25] &lt;W&gt;[ 00 01 === Interrupts[0001/0001]= [* I2C DONE  *]
    </pre>
  </blockquote>
  <pre wrap=""><!---->
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-&gt;class &amp; I2C_CLASS_TV_ANALOG || adapter-&gt;class &amp; 
I2C_CLASS_TV_DIGITAL)
                return i2c_probe(adapter, &amp;addr_data, &amp;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
  </pre>
</blockquote>
Hans and Manu,<br>
The mantis and ivtv module loaded ok with the following options for
saa7115 in /etc/modprobe.conf:<br>
options saa7115 ignore=-1,0x25,-1,0x24,-1,0x21,-1,0x20<br>
<br>
But ivtv is not working anymore and I get the following when I try to
watch live tv with mythtv:<br>
ivtv0: i2c addr 0x21 not found for command 0xc0445624<br>
ivtv0: i2c addr 0x21 not found for command 0xc008561c<br>
ivtv1: Loaded v4l-cx2341x-enc.fw firmware (376836 bytes)<br>
ivtv1: Encoder revision: 0x02060039<br>
cx25840 3-0044: loaded v4l-cx25840.fw firmware (16382 bytes)<br>
ivtv0: i2c addr 0x21 not found for command 0xc0445624<br>
ivtv0: i2c addr 0x21 not found for command 0xc008561c<br>
ivtv0: i2c addr 0x21 not found for command 0xc0445624<br>
ivtv0: i2c addr 0x21 not found for command 0xc008561c<br>
ivtv0: i2c addr 0x21 not found for command 0xc0445624<br>
ivtv0: i2c addr 0x21 not found for command 0xc008561c<br>
ivtv0: i2c addr 0x21 not found for command 0xc0cc5605<br>
ivtv0: i2c addr 0x21 not found for command 0x40045613<br>
ivtv0: i2c addr 0x21 not found for command 0x40045612<br>
ivtv0: i2c addr 0x21 not found for command 0xc0cc5605<br>
ivtv0: i2c addr 0x21 not found for command 0x40045613<br>
ivtv0: i2c addr 0x21 not found for command 0x40045612<br>
ivtv0: i2c addr 0x21 not found for command 0xc0cc5605<br>
ivtv0: i2c addr 0x21 not found for command 0x40045613<br>
ivtv0: i2c addr 0x21 not found for command 0x40045612<br>
ivtv0: i2c addr 0x21 not found for command 0xc0cc5605<br>
ivtv0: i2c addr 0x21 not found for command 0x40045613<br>
ivtv0: i2c addr 0x21 not found for command 0x40045612<br>
ivtv0: i2c addr 0x21 not found for command 0xc0cc5605<br>
ivtv0: i2c addr 0x21 not found for command 0x40045613<br>
ivtv0: i2c addr 0x21 not found for command 0x40045612<br>
<br>
Probably because saa7115 is ignoring 0x21.<br>
The vp-1034 is working allright.<br>
<br>
What I did to get it working is removing the saa7115 module options.
Change the probe function in saa7115.c to:<br>
<br>
static int saa711x_probe(struct i2c_adapter *adapter)<br>
{<br>
#ifdef I2C_CLASS_TV_ANALOG<br>
        if (adapter-&gt;class &amp; I2C_CLASS_TV_ANALOG)<br>
#else<br>
        if (adapter-&gt;id == I2C_HW_B_BT848)<br>
#endif<br>
                return i2c_probe(adapter, &amp;addr_data,
&amp;saa711x_attach);<br>
        return 0;<br>
}<br>
<br>
Recompiled and both modules load without problems now and al is working
again. I know this is not the right work around for everybody but it
works for me.<br>
<br>
Regards,<br>
<br>
Michel.<br>
</body>
</html>