> I'm now looking seriously (and reluctantly!) at writing a DMA Controller > Driver to supplement these functions, and I've started the process of > getting an NDA from Marvell, so I can get their User Manual (and errata!). > You won't get very far without the user manual, then I think you will find it pretty easy to write the driver with the frameworks already in the kernel. > Can someone point me in the right direction to get me started? I need > to come up the learning curve to find out where to start. > > How is a DMA controlled (from a device driver writer's perspective) when > a third-party (i.e. in the bridge) DMA controller needs to do the work > to get the data from a PCI Target into main memory? > > What kernel API should be provided by the DMA Controller Driver? > My first guess would be to follow something like Documentation/DMA-API.txt and Documentation/DMA-mapping.txt
> Any documentation, examples, similar device drivers, etc, would be > appreciated. TIA, You could look to followup that by groking arch/ppc/kernel/dma-mapping.c Finally, arch/ppc/syslib ppc4xx_dma.c seems to show an example of a low level driver. I didn't notice any platform dma controllers like MAG reccommended, but that should be a better way to go. Thanks Brian