I'm trying to write a PCI driver with DMA but the device I have does not have scatter gather capability. The system I'm using is an x86 and has no map registers9as far as i understand it). Do I really have to transfer one page per interrupt or is there a way to map the pages so that they look contiguous to my device? I know windows drivers do something like this but I can't find a similar method in Linux. I'm using dma_map_sg() but this only appears to help if you aren't using an x86. Any ideas on what I can do or what I might be missing?