On Thursday 19 April 2007 00:47, James Richard Tyrer wrote: > Paul Brook wrote: > > Really? I'd expect everything to be a single PCI device. DMA controllers > > only tend to exist as separate entities on systems where the normal > > devices can't be bus-masters. You may implement it as a separate > > functional block in the FPGA, but the host system doesn't know or care > > about that. > > And exactly how will the host system determine if two interrupts come > from one device or from two separate devices?
In general the only way a host can tell where an interrupt came from is to ask all the devices (in a device specific fashion) and see which one has an active interrupt. On high-end systems you may have a 1:1 mapping from device output to host input IRQ lines, so can determine an IRQ source without having to poll the individual devices. However as a device designer/driver writer we can not assume this is the case. I'm using the term "device" in the same sense as the PCI spec does. While you could have separate PCI devices for the DMA and video components this would at best be a strange configuration. Each PCI device requires its own OS driver, so you would then need some additional mechanism for matching up and communicating betwee those guest OS drivers. PCI devices are generally logically independent devices, which may happen to be on the same physical card/IC. Paul _______________________________________________ Open-graphics mailing list [email protected] http://lists.duskglow.com/mailman/listinfo/open-graphics List service provided by Duskglow Consulting, LLC (www.duskglow.com)
