This is an automatic generated email to let you know that the following patch 
were queued at the 
http://git.linuxtv.org/media_tree.git tree:

Subject: videobuf2-dma-contig: Only support if HAVE_GENERIC_DMA_COHERENT
Author:  Mauro Carvalho Chehab <[email protected]>
Date:    Mon Nov 26 09:41:09 2012 -0200

As reported by Stephen:

> After merging the v4l-dvb tree, today's linux-next build (x86_64
> allmodconfig) failed like this:
>
> ERROR: "dma_common_get_sgtable" 
> [drivers/media/v4l2-core/videobuf2-dma-contig.ko] undefined!
>
> Caused by commit 9ef2cbeb8192 ("[media] v4l: vb2-dma-contig: add support
> for DMABUF exporting").  dma_common_get_sgtable() is called from the
> inline dma_get_sgtable_attrs() and dma_get_sgtable_attrs() is "called
> from" dma_get_sgtable().  dma_common_get_sgtable() is only defined if
> ARCH_HAS_DMA_DECLARE_COHERENT_MEMORY is set which depends on
> CONFIG_HAVE_GENERIC_DMA_COHERENT being set which it isn't for this build.

The simplest fix is to just not support DMABUF with vb2-contig, on archs
where this symbol doesn't exist. Some latter patch can rewrite it to
support this outside -arm.

Signed-off-by: Mauro Carvalho Chehab <[email protected]>

 drivers/media/v4l2-core/videobuf2-dma-contig.c |    6 ++++++
 1 files changed, 6 insertions(+), 0 deletions(-)

---

http://git.linuxtv.org/media_tree.git?a=commitdiff;h=93049b9368a2e257ace66252ab2cc066f3399cad

diff --git a/drivers/media/v4l2-core/videobuf2-dma-contig.c 
b/drivers/media/v4l2-core/videobuf2-dma-contig.c
index 10beaee..5729450 100644
--- a/drivers/media/v4l2-core/videobuf2-dma-contig.c
+++ b/drivers/media/v4l2-core/videobuf2-dma-contig.c
@@ -226,6 +226,8 @@ static int vb2_dc_mmap(void *buf_priv, struct 
vm_area_struct *vma)
 /*         DMABUF ops for exporters          */
 /*********************************************/
 
+#ifdef HAVE_GENERIC_DMA_COHERENT
+
 struct vb2_dc_attachment {
        struct sg_table sgt;
        enum dma_data_direction dir;
@@ -416,6 +418,8 @@ static struct dma_buf *vb2_dc_get_dmabuf(void *buf_priv)
        return dbuf;
 }
 
+#endif
+
 /*********************************************/
 /*       callbacks for USERPTR buffers       */
 /*********************************************/
@@ -735,7 +739,9 @@ static void *vb2_dc_attach_dmabuf(void *alloc_ctx, struct 
dma_buf *dbuf,
 const struct vb2_mem_ops vb2_dma_contig_memops = {
        .alloc          = vb2_dc_alloc,
        .put            = vb2_dc_put,
+#ifdef CONFIG_HAVE_GENERIC_DMA_COHERENT
        .get_dmabuf     = vb2_dc_get_dmabuf,
+#endif
        .cookie         = vb2_dc_cookie,
        .vaddr          = vb2_dc_vaddr,
        .mmap           = vb2_dc_mmap,

_______________________________________________
linuxtv-commits mailing list
[email protected]
http://www.linuxtv.org/cgi-bin/mailman/listinfo/linuxtv-commits

Reply via email to