[Re: [linux-dvb] Compro Videomate DVB-T200 and friends

Hartmut Hackmann hartmut.hackmann at t-online.de
Mon Sep 11 23:49:01 CEST 2006



Hartmut Hackmann wrote:
> HI, James
> 
> James Fidell wrote:
> 
>> Replying to myself:
>>
>>
>>
>>> So, everything looks good to me so far.  The only outstanding problem
>>> appears to be getting the firmware loaded.  Looking through the latest
>>> mercurial code, it appears that it's the saa7134-dvb module that's
>>> supposed to start the firmware loading off, so I guess I need to get
>>> the mercurial code built and see what happens.
>>
>>
>>
>> And now I think I see why...
>>
>> Before attempting to upload new firmware, both tda10045_fwupload and
>> tda10046_fwupload in tda1004x.c call tda1004x_check_upload_ok.  This
>> returns -EIO if it couldn't find valid firmware or 0 if valid firmware
>> is found.  Both the fwupload functions do:
>>
>>         if (tda1004x_check_upload_ok(state) == 0)
>>                 return 0;
>>
>> which makes it look to me as if new firmware will never be uploaded
>> to the card if it already has valid firmware of an earlier version.
>>
>> I may be heading in completely the wrong direction with this, but out
>> of interest I changed the above code to force a firmware upload, and
>> now get dmesg output:
>>
>> tda1004x: found firmware revision 26 -- ok
>> tda1004x: waiting for firmware upload...
>> tda1004x: timeout waiting for DSP ready
>> tda1004x: found firmware revision 26 -- ok
>>
>> So either it still isn't uploading, or the version I downloaded a couple
>> of hours ago isn't actually revision 29 at all.  Is there any easy way
>> to check?
>>
> You are right, a new firmware download is only initiated when no firmware
> is present. This is by intention and should not be changed.
> Its a bit dangerous to fiddle around with the firmware loading mechanism,
> this can easily end up in a crash of the on chip processor.
> On some Compro cards, the PCI reset is not forwarded to the other chips.
> So you need a power cycle to get the chips reset and to load other
> firmware.
> A last hint. When i investigated the tuner module of you card, i noticed
> that it tunes very slowly. When you notice that several scans give 
> different
> results, the cause can easily be that the tuner can receive all signals, 
> but
> a timeout of the scan routine prevents this.
> 
> Hartmut
> 
Just one thing i am not sure about: The T200 might have a eeprom for the
firmware. I this case, the eeprom needs to be rewritten for a firmware
upgrade. Opposite to the documentation, the tda10046 always tries to boot
from the eeprom if it finds it. The best check is to rename the firmware image.
If the card still works, it has an eeprom.

Hartmut



More information about the linux-dvb mailing list