• David Brownell's avatar
    [PATCH] dma doc updates · 21440d31
    David Brownell authored
    This updates the DMA API documentation to address a few issues:
    
     - The dma_map_sg() call results are used like pci_map_sg() results:
       using sg_dma_address() and sg_dma_len().  That's not wholly obvious
       to folk reading _only_ the "new" DMA-API.txt writeup.
    
     - Buffers allocated by dma_alloc_coherent() may not be completely
       free of coherency concerns ... some CPUs also have write buffers
       that may need to be flushed.
    
     - Cacheline coherence issues are now mentioned as being among issues
       which affect dma buffers, and complicate/prevent using of static and
       (especially) stack based buffers with the DMA calls.
    
    I don't think many drivers currently need to worry about flushing write
    buffers, but I did hit it with one SOC using external SDRAM for DMA
    descriptors:  without explicit writebuffer flushing, the on-chip DMA
    controller accessed descriptors before the CPU completed the writes.
    Signed-off-by: default avatarDavid Brownell <dbrownell@users.sourceforge.net>
    Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@suse.de>
    21440d31
DMA-API.txt 20.8 KB