<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
  <meta content="text/html;charset=ISO-8859-1" http-equiv="Content-Type">
</head>
<body bgcolor="#ffffff" text="#000000">
Oh, by the way, it still prints those i2c i/o errors until the tuner
switches to analogue mode. After that there no more errors.<br>
<br>
<br>
Tomislav<br>
<br>
<br>
Tomislav Bodor wrote:
<blockquote cite="mid4521FDB3.3090400@ihug.co.nz" type="cite">
  <pre wrap="">Oops. I sent an empty message by mistake. Here's the real thing (at the
bottom).


Hartmut Hackmann wrote:
  </pre>
  <blockquote type="cite">
    <pre wrap="">Hi,

Tomislav Bodor wrote:
    </pre>
    <blockquote type="cite">
      <pre wrap="">Hartmut Hackmann wrote:

      </pre>
      <blockquote type="cite">
        <pre wrap="">Hi,

Tomislav Bodor wrote:

        </pre>
        <blockquote type="cite">
          <pre wrap="">Hi,

I am having problems getting the DVB-T300 to switch to analogue mode
once the digital part of the tuner has been accessed. The only way I
found seems to be to unload the saa7134-dvb module and reload saa7134.
I'm using the drivers from vanilla 2.6.18 kernel, but I checked the
relevant sections (see below) against mercurial and they seem to be
the
same.

Now, I have had a look at how this is supposed to be switched back to
analogue and have found the sleep function (the one used for
DVB-T300 is
philips_europa_tuner_sleep) and the way it's called from
dvb_frontent.c
after dvb_shutdown_timeout expires. This all seems to work (and the
sleep function is called correctly), but the tuner stays in digital
mode.

Does anyone have an idea why this might not work? Maybe the i2c
messages
are wrong for this card? Unfortunately this is all completely new
to me,
but I'm happy to test any patches :)


          </pre>
        </blockquote>
        <pre wrap="">There have been 2 big changes since i added support for this card.
I worried about the tda9887 merge in the tuner module, but the
effect i worried about is a bit different from what you describe.
- are there any error messages in the kernel log?
- does analog tv work immedeately after module load?
Any additional information will help.
        </pre>
      </blockquote>
      <pre wrap="">
Sure. Unfortunately, I don't know what's useful information and what's
not, so I may overload you :)

I'll tackle the latter first: analog works just fine after saa7134
module is loaded (this for me happens automatically during boot). It
continues working even after saa7134-dvb is loaded, all the way until I
run any dvb application (e.g. scan or mythbackend with a DVB card
configured). Once a dvb device is accessed the card is switched to
digital mode (and I can watch digital TV just fine).

Now for the first question: from that point onwards digital works fine,
but accessing the card in analogue mode (say using tvtime or mythtv via
the analogue tuner) produces the following errors in the kernel log:

Oct  2 16:04:38 localhost kernel: [  540.007478] tuner 1-0061: i2c i/o
error: rc == -5 (should be 4)
Oct  2 16:04:38 localhost kernel: [  540.015462] tuner 1-0061: i2c i/o
error: rc == -5 (should be 4)
Oct  2 16:04:38 localhost kernel: [  540.023452] tuner 1-0061: i2c i/o
error: rc == -5 (should be 4)
Oct  2 16:04:38 localhost kernel: [  540.131306] tuner 1-0061: i2c i/o
error: rc == -5 (should be 4)
Oct  2 16:04:38 localhost kernel: [  540.139289] tuner 1-0061: i2c i/o
error: rc == -5 (should be 4)
Oct  2 16:04:38 localhost kernel: [  540.215214] tuner 1-0061: i2c i/o
error: rc == -5 (should be 4)

      </pre>
    </blockquote>
    <pre wrap="">This is the information i was looking for. There is something going wrong
with the I2c bridge.

    </pre>
    <blockquote type="cite">
      <pre wrap="">They come in batches of six at a time every time I start tvtime and then
one at a time every time I change channels.

      </pre>
    </blockquote>
    <pre wrap="">&lt;snip&gt;
    </pre>
    <blockquote type="cite">
      <pre wrap="">And this reminds me: I never downloaded any firmware for tda10046 - it
just worked this way, though various documentation says that I should
use the get_dvb_firmware script from linux/Documentation/dvb. Why is it
working without firmware (out of curiosity)?

      </pre>
    </blockquote>
    <pre wrap="">Some cards have an eeprom with the Firmware. Yours too. In this case,
the channel decoder boots from this.

This is a quick shot: can you please try to force the card type to69?
So:
modprobe saa7134 card=69
modprobe saa7134-dvb
(after you unloaded these modules)

Hartmut


    </pre>
  </blockquote>
  <pre wrap=""><!---->
That did it - it now works as expected: after a delay of about 5
seconds, the tuner switches back to analogue mode. I have had a look at
the way the reference Philips Europa card is set up in saa7134-dvb.c and
I see that DVB-T300 is missing one of the sleep functions - tuner has
one, but the front end doesn't. Maybe there's more, but I don't know.
Not sure what went wrong and when. I presume you know what needs to be
done from this point onwards?

Anyway, this workaround seems perfectly fine for now. Do you think there
is any functionality I will be missing compared to using card=70?

Thanks a lot for your help.


Tomislav




_______________________________________________
linux-dvb mailing list
<a class="moz-txt-link-abbreviated" href="mailto:linux-dvb@linuxtv.org">linux-dvb@linuxtv.org</a>
<a class="moz-txt-link-freetext" href="http://www.linuxtv.org/cgi-bin/mailman/listinfo/linux-dvb">http://www.linuxtv.org/cgi-bin/mailman/listinfo/linux-dvb</a>


  </pre>
</blockquote>
<br>
</body>
</html>