• Magnus Damm's avatar
    V4L/DVB (8341): videobuf: Add physically contiguous queue code V3 · 2cc45cf2
    Magnus Damm authored
    This is V3 of the physically contiguous videobuf queues patch.
    Useful for hardware such as the SuperH Mobile CEU which doesn't
    support scatter gatter bus mastering.
    
    Since it may be difficult to allocate large chunks of physically
    contiguous memory after some uptime due to fragmentation, this code
    allocates memory using dma_alloc_coherent(). Architectures supporting
    dma_declare_coherent_memory() can easily avoid fragmentation issues
    by using dma_declare_coherent_memory() to force dma_alloc_coherent()
    to allocate from a certain pre-allocated memory area.
    
     Changes since V2
      - use dma_handle for physical address
      - use "scatter gather" instead of "scatter gatter"
    
     Changes since V1:
      - use dev_err() instead of pr_err()
      - remember size in struct videobuf_dma_contig_memory
      - keep struct videobuf_dma_contig_memory in .c file
      - let videobuf_to_dma_contig() return dma_addr_t
      - implement __videobuf_sync()
      - return statements, white space and other minor fixes
    Signed-off-by: default avatarMagnus Damm <damm@igel.co.jp>
    Signed-off-by: default avatarGuennadi Liakhovetski <g.liakhovetski@pengutronix.de>
    Signed-off-by: default avatarMauro Carvalho Chehab <mchehab@infradead.org>
    2cc45cf2
Kconfig 28.7 KB