[linux-dvb] High error rates when running Athcool

Dave P vdr at pickles.me.uk
Sat Feb 4 16:01:18 CET 2006

I have a Hauppauge DVB-T PCI card (original with L64781 decoder) in a 
machine running Mandriva 2006 (kernel 2.6.12-14) and using the stock 
kernel drivers. The CPU is an Athlon XP-M 2500+.

To keep the power consumption of the machine down I use 'Athcool'. This 
utility tweaks registers on the Northbridge chip so that when the CPU is 
idle it goes into a 'deep sleep' mode where is uses very little power. The 
downside is that it takes much longer for the processor to resume, so 
interrupt latency is greatly increased, though I have never before seen 
any problem in use.

I get fairly poor reception of UK Freeview on the system, and an aerial 
upgrade hasn't improved it much. I've just realised that Athcool may be to 
blame. This is the output of 'dvbtune -m' on C5 with Athcool running:

Signal=14135, Verror=11891, SNR=40349dB, BlockErrors=99, (S|L|C|V|SY|)
Signal=14135, Verror=13445, SNR=39578dB, BlockErrors=191, (S|L|C|V|SY|)
Signal=14135, Verror=12998, SNR=42662dB, BlockErrors=188, (S|L|C|V|SY|)

And this is with it off:

Signal=14135, Verror=1497, SNR=51143dB, BlockErrors=0, (S|L|C|V|SY|)
Signal=14135, Verror=1385, SNR=50115dB, BlockErrors=0, (S|L|C|V|SY|)
Signal=14135, Verror=1366, SNR=51143dB, BlockErrors=0, (S|L|C|V|SY|)

Tinkering with PCI parameters has no effect.

Although I can imagine that high interrupt latency could corrupt the output 
from the card, I don't see how the SNR and Viterbi error rates can be 
affected, since AIUI decoding is done by the L64781 chip not the drivers.

I'm wondering whether the problem is caused by power supply noise. Putting 
the processor to sleep between interrupts means that there is a much 
greater variation in power supply current than normal, and maybe the 
card's electronics don't have enough filtering. Interestingly the problem 
is most evident on the QAM64 channels, where noise around the A/D could 
have more effect.

Before I delve into the electronics, is there any way in which the 
operation of the driver could be affected by interrupt latency such as to 
cause the effect I'm seeing?

More information about the linux-dvb mailing list