Re: [PATCH v2] patches: fix v4l2 patch

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 07/01/2015 04:06 PM, Florian Grandel wrote:
> Fix to support next-20160626.
> 
> Signed-off-by: Florian Grandel <fgrandel@xxxxxxxxx>
> ---
>  .../media/0005-dma-no-sync/v4l2.patch.orig         | 67 ++++++++++++++++++++++
>  1 file changed, 67 insertions(+)
>  create mode 100644 patches/collateral-evolutions/media/0005-dma-no-sync/v4l2.patch.orig

Why do you want to add a .orig file?

A similar fix is already in backports. It went into in this commit:
https://git.kernel.org/cgit/linux/kernel/git/backports/backports.git/commit/?id=c1a416852f24d166c51d8203703a1bddff1ad6f8

The current release based on kernel next-20160626 was compile tested
against all the last minor versions of kernel 3.0 to 4.1 on x86. There
could still be some problems with different kernel configurations or
with different architectures.

> 
> diff --git a/patches/collateral-evolutions/media/0005-dma-no-sync/v4l2.patch.orig b/patches/collateral-evolutions/media/0005-dma-no-sync/v4l2.patch.orig
> new file mode 100644
> index 0000000..7c99937
> --- /dev/null
> +++ b/patches/collateral-evolutions/media/0005-dma-no-sync/v4l2.patch.orig
> @@ -0,0 +1,67 @@
> +<<<<<<< HEAD
> +--- a/drivers/media/v4l2-core/videobuf2-dma-contig.c
> ++++ b/drivers/media/v4l2-core/videobuf2-dma-contig.c
> +@@ -470,7 +470,9 @@ static void vb2_dc_put_userptr(void *buf
> + 	if (sgt) {
> + 		DEFINE_DMA_ATTRS(attrs);
> + 
> ++#if LINUX_VERSION_CODE >= KERNEL_VERSION(3,6,0)
> + 		dma_set_attr(DMA_ATTR_SKIP_CPU_SYNC, &attrs);
> ++#endif
> + 		/*
> + 		 * No need to sync to CPU, it's already synced to the CPU
> + 		 * since the finish() memop will have been called before this.
> +@@ -534,7 +536,9 @@ static void *vb2_dc_get_userptr(void *al
> + 	unsigned long dma_align = dma_get_cache_alignment();
> + 	DEFINE_DMA_ATTRS(attrs);
> + 
> ++#if LINUX_VERSION_CODE >= KERNEL_VERSION(3,6,0)
> + 	dma_set_attr(DMA_ATTR_SKIP_CPU_SYNC, &attrs);
> ++#endif
> + 
> + 	/* Only cache aligned DMA transfers are reliable */
> + 	if (!IS_ALIGNED(vaddr | size, dma_align)) {
> +=======
> +>>>>>>> patches: fix v4l2 patch

It looks like you want to add a merge conflict here.


> +--- a/drivers/media/v4l2-core/videobuf2-dma-sg.c
> ++++ b/drivers/media/v4l2-core/videobuf2-dma-sg.c
> +@@ -109,7 +109,9 @@ static void *vb2_dma_sg_alloc(void *allo
> + 	int num_pages;
> + 	DEFINE_DMA_ATTRS(attrs);
> + 
> ++#if LINUX_VERSION_CODE >= KERNEL_VERSION(3,6,0)
> + 	dma_set_attr(DMA_ATTR_SKIP_CPU_SYNC, &attrs);
> ++#endif
> + 
> + 	if (WARN_ON(alloc_ctx == NULL))
> + 		return NULL;
> +@@ -185,7 +187,9 @@ static void vb2_dma_sg_put(void *buf_pri
> + 	if (atomic_dec_and_test(&buf->refcount)) {
> + 		DEFINE_DMA_ATTRS(attrs);
> + 
> ++#if LINUX_VERSION_CODE >= KERNEL_VERSION(3,6,0)
> + 		dma_set_attr(DMA_ATTR_SKIP_CPU_SYNC, &attrs);
> ++#endif
> + 		dprintk(1, "%s: Freeing buffer of %d pages\n", __func__,
> + 			buf->num_pages);
> + 		dma_unmap_sg_attrs(buf->dev, sgt->sgl, sgt->orig_nents,
> +@@ -235,7 +239,9 @@ static void *vb2_dma_sg_get_userptr(void
> + 	DEFINE_DMA_ATTRS(attrs);
> + 	struct frame_vector *vec;
> + 
> ++#if LINUX_VERSION_CODE >= KERNEL_VERSION(3,6,0)
> + 	dma_set_attr(DMA_ATTR_SKIP_CPU_SYNC, &attrs);
> ++#endif
> + 	buf = kzalloc(sizeof *buf, GFP_KERNEL);
> + 	if (!buf)
> + 		return NULL;
> +@@ -292,7 +298,9 @@ static void vb2_dma_sg_put_userptr(void
> + 	int i = buf->num_pages;
> + 	DEFINE_DMA_ATTRS(attrs);
> + 
> ++#if LINUX_VERSION_CODE >= KERNEL_VERSION(3,6,0)
> + 	dma_set_attr(DMA_ATTR_SKIP_CPU_SYNC, &attrs);
> ++#endif
> + 
> + 	dprintk(1, "%s: Releasing userspace buffer of %d pages\n",
> + 	       __func__, buf->num_pages);
> 

--
To unsubscribe from this list: send the line "unsubscribe backports" in



[Index of Archives]     [Linux ARM Kernel]     [Linux ARM]     [Linux Omap]     [Fedora ARM]     [IETF Annouce]     [Security]     [Bugtraq]     [Linux]     [Linux OMAP]     [Linux MIPS]     [ECOS]     [Asterisk Internet PBX]     [Linux API]

  Powered by Linux