summaryrefslogtreecommitdiff
path: root/linux/drivers/media/video/Kconfig
diff options
context:
space:
mode:
authorMagnus Damm <magnus.damm@gmail.com>2008-07-16 23:33:39 +0200
committerMagnus Damm <magnus.damm@gmail.com>2008-07-16 23:33:39 +0200
commit2bddd0c00ca2ada3437d201131eaf36cde36f653 (patch)
tree62c578ca332b61b507e26de5413d3d24fb040684 /linux/drivers/media/video/Kconfig
parent6318b8e2155854a28a9f6c00319d20006f14d97e (diff)
downloadmediapointer-dvb-s2-2bddd0c00ca2ada3437d201131eaf36cde36f653.tar.gz
mediapointer-dvb-s2-2bddd0c00ca2ada3437d201131eaf36cde36f653.tar.bz2
videobuf: Add physically contiguous queue code V3
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. Signed-off-by: Magnus Damm <damm@igel.co.jp> Signed-off-by: Guennadi Liakhovetski <g.liakhovetski@pengutronix.de> --- 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 drivers/media/video/Kconfig | 5 drivers/media/video/Makefile | 1 drivers/media/video/videobuf-dma-contig.c | 417 +++++++++++++++++++++++++++++ include/media/videobuf-dma-contig.h | 32 ++ 4 files changed, 455 insertions(+)
Diffstat (limited to 'linux/drivers/media/video/Kconfig')
-rw-r--r--linux/drivers/media/video/Kconfig5
1 files changed, 5 insertions, 0 deletions
diff --git a/linux/drivers/media/video/Kconfig b/linux/drivers/media/video/Kconfig
index 67fbf23c1..adfad787c 100644
--- a/linux/drivers/media/video/Kconfig
+++ b/linux/drivers/media/video/Kconfig
@@ -24,6 +24,11 @@ config VIDEOBUF_VMALLOC
select VIDEOBUF_GEN
tristate
+config VIDEOBUF_DMA_CONTIG
+ depends on HAS_DMA
+ select VIDEOBUF_GEN
+ tristate
+
config VIDEOBUF_DVB
tristate
select VIDEOBUF_GEN