[PATCH 07/10] v4l: vb2: remove dma-contig allocator

2012-01-23 Thread Tomasz Stanislawski
This is temporary patch. The dma-contig changes were significant
and the difference patch would be very difficult to read.

Signed-off-by: Tomasz Stanislawski t.stanisl...@samsung.com
Signed-off-by: Kyungmin Park kyungmin.p...@samsung.com
---
 drivers/media/video/videobuf2-dma-contig.c |  308 
 1 files changed, 0 insertions(+), 308 deletions(-)
 delete mode 100644 drivers/media/video/videobuf2-dma-contig.c

diff --git a/drivers/media/video/videobuf2-dma-contig.c 
b/drivers/media/video/videobuf2-dma-contig.c
deleted file mode 100644
index ea2699f..000
--- a/drivers/media/video/videobuf2-dma-contig.c
+++ /dev/null
@@ -1,308 +0,0 @@
-/*
- * videobuf2-dma-contig.c - DMA contig memory allocator for videobuf2
- *
- * Copyright (C) 2010 Samsung Electronics
- *
- * Author: Pawel Osciak pa...@osciak.com
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation.
- */
-
-#include linux/module.h
-#include linux/slab.h
-#include linux/dma-mapping.h
-#include linux/scatterlist.h
-#include linux/dma-buf.h
-
-#include media/videobuf2-core.h
-#include media/videobuf2-memops.h
-
-struct vb2_dc_conf {
-   struct device   *dev;
-};
-
-struct vb2_dc_buf {
-   struct vb2_dc_conf  *conf;
-   void*vaddr;
-   dma_addr_t  dma_addr;
-   unsigned long   size;
-   struct vm_area_struct   *vma;
-   struct dma_buf_attachment   *db_attach;
-   atomic_trefcount;
-   struct vb2_vmarea_handler   handler;
-};
-
-static void vb2_dma_contig_put(void *buf_priv);
-
-static void *vb2_dma_contig_alloc(void *alloc_ctx, unsigned long size)
-{
-   struct vb2_dc_conf *conf = alloc_ctx;
-   struct vb2_dc_buf *buf;
-   /* TODO: add db_attach processing while adding DMABUF as exporter */
-
-   buf = kzalloc(sizeof *buf, GFP_KERNEL);
-   if (!buf)
-   return ERR_PTR(-ENOMEM);
-
-   buf-vaddr = dma_alloc_coherent(conf-dev, size, buf-dma_addr,
-   GFP_KERNEL);
-   if (!buf-vaddr) {
-   dev_err(conf-dev, dma_alloc_coherent of size %ld failed\n,
-   size);
-   kfree(buf);
-   return ERR_PTR(-ENOMEM);
-   }
-
-   buf-conf = conf;
-   buf-size = size;
-
-   buf-handler.refcount = buf-refcount;
-   buf-handler.put = vb2_dma_contig_put;
-   buf-handler.arg = buf;
-
-   atomic_inc(buf-refcount);
-
-   return buf;
-}
-
-static void vb2_dma_contig_put(void *buf_priv)
-{
-   struct vb2_dc_buf *buf = buf_priv;
-
-   if (atomic_dec_and_test(buf-refcount)) {
-   dma_free_coherent(buf-conf-dev, buf-size, buf-vaddr,
- buf-dma_addr);
-   kfree(buf);
-   }
-}
-
-static void *vb2_dma_contig_cookie(void *buf_priv)
-{
-   struct vb2_dc_buf *buf = buf_priv;
-
-   return buf-dma_addr;
-}
-
-static void *vb2_dma_contig_vaddr(void *buf_priv)
-{
-   struct vb2_dc_buf *buf = buf_priv;
-   if (!buf)
-   return 0;
-
-   return buf-vaddr;
-}
-
-static unsigned int vb2_dma_contig_num_users(void *buf_priv)
-{
-   struct vb2_dc_buf *buf = buf_priv;
-
-   return atomic_read(buf-refcount);
-}
-
-static int vb2_dma_contig_mmap(void *buf_priv, struct vm_area_struct *vma)
-{
-   struct vb2_dc_buf *buf = buf_priv;
-
-   if (!buf) {
-   printk(KERN_ERR No buffer to map\n);
-   return -EINVAL;
-   }
-
-   return vb2_mmap_pfn_range(vma, buf-dma_addr, buf-size,
- vb2_common_vm_ops, buf-handler);
-}
-
-static void *vb2_dma_contig_get_userptr(void *alloc_ctx, unsigned long vaddr,
-   unsigned long size, int write)
-{
-   struct vb2_dc_buf *buf;
-   struct vm_area_struct *vma;
-   dma_addr_t dma_addr = 0;
-   int ret;
-
-   buf = kzalloc(sizeof *buf, GFP_KERNEL);
-   if (!buf)
-   return ERR_PTR(-ENOMEM);
-
-   ret = vb2_get_contig_userptr(vaddr, size, vma, dma_addr);
-   if (ret) {
-   printk(KERN_ERR Failed acquiring VMA for vaddr 0x%08lx\n,
-   vaddr);
-   kfree(buf);
-   return ERR_PTR(ret);
-   }
-
-   buf-size = size;
-   buf-dma_addr = dma_addr;
-   buf-vma = vma;
-
-   return buf;
-}
-
-static void vb2_dma_contig_put_userptr(void *mem_priv)
-{
-   struct vb2_dc_buf *buf = mem_priv;
-
-   if (!buf)
-   return;
-
-   vb2_put_vma(buf-vma);
-   kfree(buf);
-}
-
-static int vb2_dma_contig_map_dmabuf(void *mem_priv,
-   enum dma_data_direction direction)
-{
-   struct vb2_dc_buf *buf = mem_priv;
-   struct dma_buf 

Re: [PATCH 07/10] v4l: vb2: remove dma-contig allocator

2012-01-23 Thread Mauro Carvalho Chehab
Em 23-01-2012 11:51, Tomasz Stanislawski escreveu:
 This is temporary patch. The dma-contig changes were significant
 and the difference patch would be very difficult to read.

NACK.

This breaks git bisect.

 
 Signed-off-by: Tomasz Stanislawski t.stanisl...@samsung.com
 Signed-off-by: Kyungmin Park kyungmin.p...@samsung.com
 ---
  drivers/media/video/videobuf2-dma-contig.c |  308 
 
  1 files changed, 0 insertions(+), 308 deletions(-)
  delete mode 100644 drivers/media/video/videobuf2-dma-contig.c
 
 diff --git a/drivers/media/video/videobuf2-dma-contig.c 
 b/drivers/media/video/videobuf2-dma-contig.c
 deleted file mode 100644
 index ea2699f..000
 --- a/drivers/media/video/videobuf2-dma-contig.c
 +++ /dev/null
 @@ -1,308 +0,0 @@
 -/*
 - * videobuf2-dma-contig.c - DMA contig memory allocator for videobuf2
 - *
 - * Copyright (C) 2010 Samsung Electronics
 - *
 - * Author: Pawel Osciak pa...@osciak.com
 - *
 - * This program is free software; you can redistribute it and/or modify
 - * it under the terms of the GNU General Public License as published by
 - * the Free Software Foundation.
 - */
 -
 -#include linux/module.h
 -#include linux/slab.h
 -#include linux/dma-mapping.h
 -#include linux/scatterlist.h
 -#include linux/dma-buf.h
 -
 -#include media/videobuf2-core.h
 -#include media/videobuf2-memops.h
 -
 -struct vb2_dc_conf {
 - struct device   *dev;
 -};
 -
 -struct vb2_dc_buf {
 - struct vb2_dc_conf  *conf;
 - void*vaddr;
 - dma_addr_t  dma_addr;
 - unsigned long   size;
 - struct vm_area_struct   *vma;
 - struct dma_buf_attachment   *db_attach;
 - atomic_trefcount;
 - struct vb2_vmarea_handler   handler;
 -};
 -
 -static void vb2_dma_contig_put(void *buf_priv);
 -
 -static void *vb2_dma_contig_alloc(void *alloc_ctx, unsigned long size)
 -{
 - struct vb2_dc_conf *conf = alloc_ctx;
 - struct vb2_dc_buf *buf;
 - /* TODO: add db_attach processing while adding DMABUF as exporter */
 -
 - buf = kzalloc(sizeof *buf, GFP_KERNEL);
 - if (!buf)
 - return ERR_PTR(-ENOMEM);
 -
 - buf-vaddr = dma_alloc_coherent(conf-dev, size, buf-dma_addr,
 - GFP_KERNEL);
 - if (!buf-vaddr) {
 - dev_err(conf-dev, dma_alloc_coherent of size %ld failed\n,
 - size);
 - kfree(buf);
 - return ERR_PTR(-ENOMEM);
 - }
 -
 - buf-conf = conf;
 - buf-size = size;
 -
 - buf-handler.refcount = buf-refcount;
 - buf-handler.put = vb2_dma_contig_put;
 - buf-handler.arg = buf;
 -
 - atomic_inc(buf-refcount);
 -
 - return buf;
 -}
 -
 -static void vb2_dma_contig_put(void *buf_priv)
 -{
 - struct vb2_dc_buf *buf = buf_priv;
 -
 - if (atomic_dec_and_test(buf-refcount)) {
 - dma_free_coherent(buf-conf-dev, buf-size, buf-vaddr,
 -   buf-dma_addr);
 - kfree(buf);
 - }
 -}
 -
 -static void *vb2_dma_contig_cookie(void *buf_priv)
 -{
 - struct vb2_dc_buf *buf = buf_priv;
 -
 - return buf-dma_addr;
 -}
 -
 -static void *vb2_dma_contig_vaddr(void *buf_priv)
 -{
 - struct vb2_dc_buf *buf = buf_priv;
 - if (!buf)
 - return 0;
 -
 - return buf-vaddr;
 -}
 -
 -static unsigned int vb2_dma_contig_num_users(void *buf_priv)
 -{
 - struct vb2_dc_buf *buf = buf_priv;
 -
 - return atomic_read(buf-refcount);
 -}
 -
 -static int vb2_dma_contig_mmap(void *buf_priv, struct vm_area_struct *vma)
 -{
 - struct vb2_dc_buf *buf = buf_priv;
 -
 - if (!buf) {
 - printk(KERN_ERR No buffer to map\n);
 - return -EINVAL;
 - }
 -
 - return vb2_mmap_pfn_range(vma, buf-dma_addr, buf-size,
 -   vb2_common_vm_ops, buf-handler);
 -}
 -
 -static void *vb2_dma_contig_get_userptr(void *alloc_ctx, unsigned long vaddr,
 - unsigned long size, int write)
 -{
 - struct vb2_dc_buf *buf;
 - struct vm_area_struct *vma;
 - dma_addr_t dma_addr = 0;
 - int ret;
 -
 - buf = kzalloc(sizeof *buf, GFP_KERNEL);
 - if (!buf)
 - return ERR_PTR(-ENOMEM);
 -
 - ret = vb2_get_contig_userptr(vaddr, size, vma, dma_addr);
 - if (ret) {
 - printk(KERN_ERR Failed acquiring VMA for vaddr 0x%08lx\n,
 - vaddr);
 - kfree(buf);
 - return ERR_PTR(ret);
 - }
 -
 - buf-size = size;
 - buf-dma_addr = dma_addr;
 - buf-vma = vma;
 -
 - return buf;
 -}
 -
 -static void vb2_dma_contig_put_userptr(void *mem_priv)
 -{
 - struct vb2_dc_buf *buf = mem_priv;
 -
 - if (!buf)
 - return;
 -
 - vb2_put_vma(buf-vma);
 - kfree(buf);
 -}
 -
 -static int vb2_dma_contig_map_dmabuf(void *mem_priv,
 -