Re: [PATCH] vino: replace dma_sync_single with dma_sync_single_for_cpu

From: Jiri Slaby
Date: Thu May 28 2009 - 02:03:18 EST


On 05/28/2009 03:10 AM, FUJITA Tomonori wrote:
> This replaces dma_sync_single() with dma_sync_single_for_cpu() because
> dma_sync_single() is an obsolete API; include/linux/dma-mapping.h says:
>
> /* Backwards compat, remove in 2.7.x */
> #define dma_sync_single dma_sync_single_for_cpu
> #define dma_sync_sg dma_sync_sg_for_cpu
>
> Signed-off-by: FUJITA Tomonori <fujita.tomonori@xxxxxxxxxxxxx>
> ---
> drivers/media/video/vino.c | 6 +++---
> 1 files changed, 3 insertions(+), 3 deletions(-)
>
> diff --git a/drivers/media/video/vino.c b/drivers/media/video/vino.c
> index 43e0998..97b082f 100644
> --- a/drivers/media/video/vino.c
> +++ b/drivers/media/video/vino.c
> @@ -868,9 +868,9 @@ static void vino_sync_buffer(struct vino_framebuffer *fb)
> dprintk("vino_sync_buffer():\n");
>
> for (i = 0; i < fb->desc_table.page_count; i++)
> - dma_sync_single(NULL,
> - fb->desc_table.dma_cpu[VINO_PAGE_RATIO * i],
> - PAGE_SIZE, DMA_FROM_DEVICE);
> + dma_sync_single_for_cpu(NULL,
> + fb->desc_table.dma_cpu[VINO_PAGE_RATIO * i],
> + PAGE_SIZE, DMA_FROM_DEVICE);

Shouldn't be there sync_for_device in vino_dma_setup (or somewhere)
then? If I understand the API correctly this won't (and didn't) work on
some platforms.

The same for other drivers who don't free the buffer after the sync but
recycle it instead.
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/