public inbox for linux-media@vger.kernel.org
 help / color / mirror / Atom feed
From: Hartmut Hackmann <hartmut.hackmann@t-online.de>
To: Francesco <ml@punkrockworld.it>
Cc: linux-dvb@linuxtv.org
Subject: Re: [linux-dvb] unstable tda1004x firmware loading
Date: Fri, 20 Jun 2008 00:49:42 +0200	[thread overview]
Message-ID: <485AE286.8070201@t-online.de> (raw)
In-Reply-To: <48593F57.7090809@punkrockworld.it>

HI, Francesco

Francesco schrieb:
> Hartmut Hackmann ha scritto:
>  > Hi, Francesco
>  >
>  > Francesco schrieb:
>  >>> Looks like there currently are many people having problems. Allow
>  >>>  me to give some background info:
>  >>>
>  >>> Something that is not in the datasheet: The tda10046
>  >>> automatically tries to load the firmware from an eeprom at the
>  >>> second I2C port. This does *not* need to be triggered by the
>  >>> driver. The timeout seems to be very long. In the past, this
>  >>> happened: If the driver tries to access the tuner while the
>  >>> download is not finished, there is a collision on the I2C bus.
>  >>> This can corrupt both, the firmware and the tuner initialization.
>  >>>  In the case of the tda8275a, the result can be that it turns off
>  >>>  its 16MHz reference output which is used for the tda10046 as
>  >>> well. This blocks the i2c bus and the only way to recover is a
>  >>> complete power cycle. This is why i made the driver try to get
>  >>> the firmware as soon as possible. Otherwise it is not possible to
>  >>>  access the tuner - at least on some boards.
>  >>>
>  >>> Few days ago, a user reported that the firmware download seems to
>  >>>  be retriggered in some cases. This might occur if something
>  >>> opens the dvb device while the download is not finished. If it is
>  >>>  the case, we need to lock the download. Another dangerous thing
>  >>> is the address mapping of the firmware eeprom: it is controlled
>  >>> by a GPIO pin. If this pin changes while the download is running,
>  >>>  we are lost.
>  >>>
>  >>> Best regards Hartmut
>  >>
>  >> I've found a little workaround (not a solution, but...) for this
>  >> problem for my Asus7131H...
>  >>
>  >> Simply adding "saa7134-dvb" to /etc/modules, make a successful
>  >> firmware loading on boot. (My system is an Ubuntu 7.10)
>  >>
>  >>
>  > Could you post the relevant sections of the kernel log for both
>  > cases, successful and unsuccessful firmware load? Please extract the
>  >  entire board initialization. Also: do you run a client / server
>  > based application (with early start of the server)?
>  >
>  > Hartmut
>  >
>  >
> 
> 
> These are extract of boot log for "saa" and "tda" text... later I'll send
> all system logs in both cases.
> 
> 
> Relevant row for "tda" part seems is:
> "[   54.297295] tda1004x: setting up plls for 48MHz sampling clock"
> the second one, wich prevent on my opinion, to load firmware correctly.
> 
> 
Yes, this is what i meant!  Looks like we need to "lock" the initialization
procedure. I haven't done such things before so i need to do a little research
first.

> 
> tda / before:
> [   35.412245] tda829x 0-004b: setting tuner address to 61
> [   35.492199] tda829x 0-004b: type set to tda8290+75a
> [   39.621806] tda1004x: setting up plls for 48MHz sampling clock
> [   41.912490] tda1004x: found firmware revision 0 -- invalid
> [   41.912495] tda1004x: trying to boot from eeprom
> [   44.283116] tda1004x: found firmware revision 0 -- invalid
> [   44.283122] tda1004x: waiting for firmware upload...
> [   54.297295] tda1004x: setting up plls for 48MHz sampling clock
> [   56.583964] tda1004x: found firmware revision 0 -- invalid
> [   56.583968] tda1004x: trying to boot from eeprom
> [   58.950592] tda1004x: found firmware revision 0 -- invalid
> [   58.950597] tda1004x: waiting for firmware upload...
> [   71.443661] tda1004x: found firmware revision 0 -- invalid
> [   71.443665] tda1004x: firmware upload failed
> [   73.543492] tda1004x: found firmware revision 80 -- invalid
> [   73.543496] tda1004x: firmware upload failed
> 
> tda / after:
> [   35.101428] tda829x 0-004b: setting tuner address to 61
> [   35.185381] tda829x 0-004b: type set to tda8290+75a
> [   39.295055] tda1004x: setting up plls for 48MHz sampling clock
> [   41.581753] tda1004x: found firmware revision 0 -- invalid
> [   41.581756] tda1004x: trying to boot from eeprom
> [   43.948412] tda1004x: found firmware revision 0 -- invalid
> [   43.948415] tda1004x: waiting for firmware upload...
> [   56.405359] tda1004x: found firmware revision 20 -- ok
> [   71.360886] tda1004x: setting up plls for 48MHz sampling clock
> [   71.664713] tda1004x: found firmware revision 20 -- ok
> 
> 

<snip>
Thanks for the info!

Best regards
   Hartmut

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

  reply	other threads:[~2008-06-19 22:49 UTC|newest]

Thread overview: 9+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2008-06-16 11:37 unstable tda1004x firmware loading timf
     [not found] ` <200806161343.16372.eggert@hugsaser.is>
2008-06-16 23:58   ` [linux-dvb] " Hartmut Hackmann
2008-06-17 14:51     ` Francesco
2008-06-17 20:44       ` Hartmut Hackmann
2008-06-18 17:01         ` Francesco
2008-06-19 22:49           ` Hartmut Hackmann [this message]
2008-06-19 21:05         ` Francesco
2008-06-19  9:03 ` timf
2008-06-19 23:21   ` [linux-dvb] " Hartmut Hackmann

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=485AE286.8070201@t-online.de \
    --to=hartmut.hackmann@t-online.de \
    --cc=linux-dvb@linuxtv.org \
    --cc=ml@punkrockworld.it \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox