DrBombcrater wrote:
Actual DMA transfers on the ArticiaS work just the same as they do on any another North Bridge. The 'software' part comes when the transfer has completed. Most systems have hardware that will flag the CPU to do a partial cache-flush at ths point, in order to make sure the caches reflect the new data just DMAed into memory. The ArticiaS can't do this, so after DMA activity the driver must explicitly call an OS function that does the cache updating. This isn't exactly an elegant approach ...
This doesn't sound too healthy to me. BTW, isn't the point of DMA to keep the CPU out of the transfer process?
Anyway, perhaps both "feature+driver" and "bug+workaround" could be used to describe this (depending on your point of view I guess)! ;-)
Most TV cards are based on BT848/849 chips which do use DMA to push picture data into memory. I've seen one of these cards (a Hauppauge WinTV-Go to be exact) working on an A1 under Linux without any apparent issues.
I am in no way an expert on TV cards, but as you said, it seems like many of them are based on Brooktree/Rockwell/Connexant chipsets Bt848, Bt849, Bt878, Bt879 (at least according to the "overview" at
http://www.tv-cards.com/faq.php, click on "Are all PCI TV-Cards the same?"), and at least the Bt848, Bt848A and Bt849A seems to support DMA transfer. But they should all still be able to (at least it looks that way in my ignorant eyes) fall back to IRQ/CPU transfer, righ (DMA is of course the best, but not *required*)?
"What is the minimum PC specification to use a PCI TV-Card?
TV-Cards based on the Brooktree/Rockwell/Connexant chipsets require the following minimum spec:
- PCI slot
- Pentium 133Mhz Processor
- DirectX Compatible sound card
- Graphics card supporting DirectDraw and Overlay
- Available IRQ
TV-Cards usually require an IRQ and a memory range but NOT an I/O address or DMA channel."(This was from the same site (
http://www.tv-cards.com/faq.php), click on "What is the minimum PC specification to use a PCI TV-Card")
How do you know that the A1 you saw was really using DMA and not falling back to using the IRQ to ask for CPU-time for it's transfer? How did you tell the difference?
BTW, "Frostwork" in
this thread has a BT878 based TV card working fine in his Pegasos 1 too, so ... ;-)
Anyway, thank you for your clarifications regarding the Articia DMA. When some people talk about it, it really sounds to be a great chip! Many people seems to be really happy about it (Amiga - back for the future ;-)), and I don't want to be a party pooper here. If you people are happy about it and thinks that it's a solid ground to build an Amiga future(?) on, then I won't disturb you! But personally, I am very glad that the Pegasos moved away from it. ;-)
Have a nice day people! :-)