[linux-dvb] DBV on the Lifeview Trio

Nico Sabbi nicola_sabbi at fastwebnet.it
Sat Jan 28 20:56:15 CET 2006


Hartmut Hackmann wrote:

>>
> It is possible to force a firmware download but this is not a good
> solution. Could it be that the firmware download only works after a cold
> boot? A firmware download is not necessary after sleep.
> In this case, i have an explaination: It is possible to remap the eeprom
> to another address to allow firmware updates. If it is remapped, the
> dsp will not find it and...
> The eeprom address normally is controlled with a GPIO pin of the channel
> decoder. At first start, the pin is tristate and download works
> due to a resistor.
> Its the same with a card i am working on here. So i can provide you a 
> patch
> the next days.
>
> Best regards
>   Hartmut
>


In the meantime I patched my patch to force the upload of the firmware 
from file,

static int lifeview_trio_request_firmware(struct dvb_frontend *fe,
                                           const struct firmware **fw, 
char *name)
{
        struct saa7134_dev *dev = fe->dvb->priv;
        return request_firmware(fw, name, &dev->pci->dev);
}

static struct tda1004x_config lifeview_trio_config = {
        .demod_address = 0x09,
        .invert        = 1,
        .invert_oclk   = 0,
        .xtal_freq     = TDA10046_XTAL_16M,
        .agc_config    = TDA10046_AGC_TDA827X,
        .if_freq       = TDA10046_FREQ_045,
        .pll_init      = philips_tiger_dvb_mode,
        .pll_set       = philips_tiger_pll_set_simple,
        .pll_sleep     = philips_tiger_analog_mode,
        .request_firmware = lifeview_trio_request_firmware,
};


ls -al /lib/firmware/dvb-fe-tda10046.fw
-rw-r--r--  1 root root 24602 gen 28 20:45 /lib/firmware/dvb-fe-tda10046.fw


but bad news:

DVB: registering frontend 0 (Philips TDA10046H DVB-T)...
tda1004x: setting up plls for 48MHz sampling clock
tda1004x: timeout waiting for DSP ready
tda1004x: found firmware revision 0 -- invalid
TDA: upload function: e0e5ffc2
tda1004x: waiting for firmware upload...
FW LEN: 24602, address: 9
pos: 16
pos: 32
pos: 48
pos: 64
pos: 80
pos: 96
pos: 112
pos: 128
pos: 144
pos: 160
pos: 176
pos: 192
pos: 208
pos: 224
pos: 240
pos: 256
pos: 272
pos: 288
pos: 304
pos: 320
pos: 336
tda1004x: Error during firmware upload: -5 (this is the result of 
i2c_transfer())
tda1004x: firmware upload failed
tda1004x: pll set failed


Hartmutt, can you understand why this operation fails?


    Nico



More information about the linux-dvb mailing list