Mailing List archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[linux-dvb] Re: distortions on P4 systems (12V hungry?)



In at least some cases we are not talking about two different problems.  One
problem is corruption on the PCI bus ( I think this is budget cards only),
the other is the card suddenly stopping tuning, or even suffering the
onboard ARM crashing - this is suffered by full featured cards only

I think it is becoming very clear that the choice of PCI burst used by the
budget driver is inappropriate for many chipsets, including common stuff
like the i845, many via boards, and also the i865 (my Asus P4P800)

That snippet you refer to gives advised values for a series of boards.
However, in my case (asus P4P800) I had to go to zero to get any kind of
stable transfer (I didn't try 2 & 4 DWords, but 16 and 32 were still
unstable).  I assume that this is equivalent to switching off PCI bursting
altogether?  Without a value of 0 in PCI_BT_V1 I was seeing very severe
corruption of the mpeg stream (mplayer typically dies within 1-2 seconds)

I would be happy to make the value a kernel module option?  Would this be
accepted as a patch?  If so, would it need to be done against both the DVB
and dvb_kernel branches?  Also, what would be the implications of changing
the default to 0?  Is this going to be loading the PCI bus unneccessarily
for other users?

Your other question, does the budget card use only DMA channel 3?  Yes I
think it does based on some other posting in that thread.  Certainly in my
case it was only altering that which caused/fixed problems.  I think the
full featured cards make use of the other registers, but because the output
is buffered by the AV7110 (is that right?) the timing is far less important

So - Should I submit a patch?  What would the preferred default be?

Ed W


> I have similar problems like Andreas and we discussed them on a thread on
the
> vdr mailing-list. I supposed these to be a problem with PCI transfers on
> intel 845 chipsets and the Nova-S cards, seems like this can be confirmed.
>
> My first attempt was a look into the specs,
> http://www.semiconductors.philips.com/acrobat/datasheets/SAA7146A_1.pdf
> Page 31 describes transfer mode settings.
>
> I have taken a look in the dvb kernel sources (2.6.0-test4) and found some
> commands regarding PCI transfers (drivers/media/dvb/ttpci/budget-core.c):
>
> start_ts_capture() {
>         saa7146_write(dev, PCI_BT_V1, 0x001c0000 |
>             (saa7146_read(dev, PCI_BT_V1) & ~0x001f0000));
> }
>
> ttpci_budget_init() {
>         saa7146_write(dev, PCI_BT_V1, 0x001c0000);
> }
>
> I suppose that the latter is executed first. I don't know why it is
written
> again during capture, but if nothing else changes the value, it should
stay
> at 0x001c0000.
>
> In a resent posting I have found following snippet:
> (http://www.linuxtv.org/mailinglists/linux-dvb/2003/08-2003/msg00248.html)
> - ------------------------------------------------------------------------
------------------
> FWIW, these are exactly the symptoms I had on a SIS chipset with a budget
> card. These cards appear to be very timing sensitive. The parameters to
> play with are the SAA7146A "FIFO threshold" and "PCI burst length"
> settings. Settings I found to work well:
>
> 1. PCI burst = 32 DWORDs, FIFO threshold = 32 DWORDs - This one handles
> even a 40Mbps DVB-Cable stream on both i440BX as well as i850E chipsets
> (don't have others to try).
>
> 2. PCI burst = 16 DWORDs, FIFO threshold = 16 DWORDs - seems to work
> equally well.
>
> 3. PCI burst = 16 DWORDs, FIFO threshold = 32 DWORDs - The only setting
> which allowed me to make a DVB-T budget card work on a SIS 651 chipset.
> - ------------------------------------------------------------------------
------------------
>
> At last, I have some questions left:
>
> - - What DMA channel is used on a budget card? It seems to be channel 3,
but I
>   have no proof for this.
>
> - - Why are the recommended values for channel 3  32 Dwords Threshold and
16
>   Dwords burst?
>
> - - Is anyone using different values?
>
> I will try some combinations this evening and post the results.
>
> bye,
> Stefan
> -----BEGIN PGP SIGNATURE-----
> Version: GnuPG v1.2.2 (GNU/Linux)
>
> iD8DBQE/Tzk//bI7T1LKTh8RAtSHAJ4vQ+o9WsDfVlGNVKaonpISYwtlSQCfbGcu
> R/aI2s+CQoC+bIeTkkNXr0w=
> =pXhV
> -----END PGP SIGNATURE-----
>
>
>
> --
> Info:
> To unsubscribe send a mail to ecartis@linuxtv.org with "unsubscribe
linux-dvb" as subject.
>
>



-- 
Info:
To unsubscribe send a mail to ecartis@linuxtv.org with "unsubscribe linux-dvb" as subject.



Home | Main Index | Thread Index