Hi, today, we received another Hauppauge Nova card. This should be supported fine under the DVB drivers, however, there was a problem.
It appears to be a standard card with a SAA7146A, a STV0299B frontend, and a SU1278/SH PLL generator. Hauppauge have recently released a version of the Nova with a CI on it. This card does NOT have a CI interface, although they're obviously the same board, as it has the positions for the CI interface components etc.. just that they're missing. This differs from the other Novas I've seen in that they were a different board revision (missing even the positions for the CI components). Anyway, this board has the PCI device ID of the board with a CI, and so requires the dvb-ttpci-budget-ci driver. Here's the problem: The STV0299B was detected fine, BUT it did not detect the SU1278/SH (came up with the "unknown PLL synthesizer; report this to the mailing list" error). However, according to the sticker on the tuner, it does contain an SU1278/SH. I investigated a bit. I added some trace statements and additional i2c bus accesses. I discovered that every SECOND i2c bus access succeded. I traced this down to saa7146_i2c.c/saa7146_i2c_transfer(). When it writes the data to the bus, it checks for errors. There is a special check for an i2c address-error... if this occurs, the write is abandoned with no retries and returns with EREMOTEIO. As a test, I disabled this piece of code, and now the tuner is detected fine.. I can even tune and use the card as normal. However, this is not a solution. To transfer something on the i2c bus, you have to write it twice every time (first time fails with an address error, second time succeeds). I assume this means something is slightly different about this newer board revision. I will start investigating this myself tomorrow... but just in case someone can spot the solution immediately... Incidentally, the card works perfectly under Windows. -- adq -- Info: To unsubscribe send a mail to [EMAIL PROTECTED] with "unsubscribe linux-dvb" as subject.
