[linux-dvb] KNC1 DVB-S unter openSUSE 10.0

Julian Scheel julian at jusst.de
Fri Nov 4 15:26:21 CET 2005


Am Freitag, 4. November 2005 13:13 schrieb Oliver Endriss:
> Chris Dietrich wrote:
> > Oliver Endriss wrote:
> > > Chris Dietrich wrote:
> > >>Please, anyone got an idea what else I could try to get that card to
> > >> work?
> > >
> > > [I'm not sure whether this card has ever worked reliably with the
> > > driver.] Someone has to find out why stv0299_attach() fails for this
> > > card.
> > >
> > > Add some printk's to stv0299_attach(stv0299.c) and find out what
> > > happens. Sorry, I don't own this type of card.
> >
> > Oliver, thanks for your hint to check the attach-function. I did so and
> > found out, that an i2c_transfer statement in writeregI fails:
> >
> > Nov  3 09:56:25 linux kernel: stv0299: stv0299_writeregI: writereg error
> > (reg == 0x02, val == 0x34, ret == -5)
> > Nov  3 09:56:31 linux kernel: stv0299: stv0299_readreg: readreg error
> > (reg == 0x00, ret == -5)
> > Nov  3 09:56:31 linux kernel: stv0299: readreg(state) returns:  0 =(dec)
> > 0 (the return value is not important, writeregI failed before)
> > Nov  3 09:56:31 linux kernel: stv0299: DEBUG: id != 0xa1 && id != 0x80,
> > instead  id= 0
> > Nov  3 09:56:31 linux kernel: budget-av: A frontend driver was not found
> > for device 1131/7146 subsystem 1131/4f56
> >
> > What does the return value of -5 (which seems to be returned by the
> > i2c_transfer AFAIK) mean?
>
> The stv0299 did not respond, i.e. was not found on the I2C bus.
>
> > I also found out, that if I load the kernel 2.4 stv0299 driver (and
> > budget-av etc...) and use the card, then warm reboot the machine into a
> > 2.6 kernel, no error appears and the card works fine!
> > So, this sounds like an initialization error, right?
>
> Yes.
>
> > Is it possible that
> > timing is involved, I also tried to increment the msleeps in stv0299 but
> > so far with no success (that was before I found out that the
> > i2c_transfer failed).
> >
> > What else can I do? Should I try to just comment out the statement in
> > the initialization that causes the failing writeregI???
>
> Try the following:
> (a) enable master reset in saa7146_core.c
>
> If it does not help:
> (b) Add some delay at the beginning of stv0299_attach.
>     Something like msleep(1000) should do for testing.

I just had the problem once again and (a) fixed it!

-Julian



More information about the linux-dvb mailing list