Hi, I have 3 questions regarding PCI and DMA. Basically the pci setup in my platform is such that, the host must be mapped to a specific portion of the available PCI space. How could I make this happen? What I mean is, if there are resource regions A, B, C available (io or mem doesn't matter), I want to force my host to be mapped to a particular region within these available PCI regions, rather than rely on pci_assign_resource to automatically allocate a free region. Any suggestions? Secondly, I also have constraints on the available DMA space. A device-to-host DMA can only occur to a particular region of memory (Address bits [27:0]), and I want to use a very specific address region to be allocated for DMA, when a device wants to do DMA to host. What are the ways to achieve this? Which functions should I modify, to provide usable DMA regions to devices? Also when supplying this DMA region, what about virtual memory conditions? Perhaps this space needs to be reserved and not mapped by the pagetables? Also it needs to be mapped as non-cacheable, non-bufferable, when it's allocated for DMA. How do I take care of these issues? Thanks, Bahadir -- Kernelnewbies: Help each other learn about the Linux kernel. Archive: http://mail.nl.linux.org/kernelnewbies/ FAQ: http://kernelnewbies.org/faq/