From patchwork Mon Mar 14 13:38:24 2011 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Pawel Osciak X-Patchwork-Id: 6083 Return-path: Envelope-to: mchehab@pedra Delivery-date: Mon, 14 Mar 2011 10:40:58 -0300 Received: from mchehab by pedra with local (Exim 4.72) (envelope-from ) id 1Pz812-0003lj-P5 for mchehab@pedra; Mon, 14 Mar 2011 10:40:57 -0300 Received: from casper.infradead.org [85.118.1.10] by pedra with IMAP (fetchmail-6.3.17) for (single-drop); Mon, 14 Mar 2011 10:40:56 -0300 (BRT) Received: from vger.kernel.org ([209.132.180.67]) by casper.infradead.org with esmtp (Exim 4.72 #1 (Red Hat Linux)) id 1Pz7zK-0006RI-DR; Mon, 14 Mar 2011 13:39:10 +0000 Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752841Ab1CNNir (ORCPT + 1 other); Mon, 14 Mar 2011 09:38:47 -0400 Received: from mail-gy0-f174.google.com ([209.85.160.174]:63382 "EHLO mail-gy0-f174.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752092Ab1CNNii (ORCPT ); Mon, 14 Mar 2011 09:38:38 -0400 Received: by gyf1 with SMTP id 1so874688gyf.19 for ; Mon, 14 Mar 2011 06:38:37 -0700 (PDT) Received: by 10.151.92.17 with SMTP id u17mr5915093ybl.54.1300109917727; Mon, 14 Mar 2011 06:38:37 -0700 (PDT) Received: from localhost.localdomain (c-24-4-33-58.hsd1.ca.comcast.net [24.4.33.58]) by mx.google.com with ESMTPS id q13sm1971687yba.20.2011.03.14.06.38.36 (version=TLSv1/SSLv3 cipher=OTHER); Mon, 14 Mar 2011 06:38:37 -0700 (PDT) From: Pawel Osciak To: linux-media@vger.kernel.org Cc: m.szyprowski@samsung.com, g.liakhovetski@gmx.de, hverkuil@xs4all.nl, Pawel Osciak Subject: [PATCH 2/2] [media] videobuf2-dma-contig: make cookie() return a pointer to dma_addr_t Date: Mon, 14 Mar 2011 06:38:24 -0700 Message-Id: <1300109904-3991-2-git-send-email-pawel@osciak.com> X-Mailer: git-send-email 1.7.4.1 In-Reply-To: <1300109904-3991-1-git-send-email-pawel@osciak.com> References: <1300109904-3991-1-git-send-email-pawel@osciak.com> Precedence: bulk List-ID: X-Mailing-List: linux-media@vger.kernel.org Sender: dma_addr_t may not fit into void* on some architectures. To be safe, make vb2_dma_contig_cookie() return a pointer to dma_addr_t and dereference it in vb2_dma_contig_plane_paddr() back to dma_addr_t. Signed-off-by: Pawel Osciak Reported-by: Hans Verkuil --- drivers/media/video/videobuf2-dma-contig.c | 2 +- include/media/videobuf2-dma-contig.h | 9 ++++++--- 2 files changed, 7 insertions(+), 4 deletions(-) diff --git a/drivers/media/video/videobuf2-dma-contig.c b/drivers/media/video/videobuf2-dma-contig.c index 90495b7..58205d5 100644 --- a/drivers/media/video/videobuf2-dma-contig.c +++ b/drivers/media/video/videobuf2-dma-contig.c @@ -78,7 +78,7 @@ static void *vb2_dma_contig_cookie(void *buf_priv) { struct vb2_dc_buf *buf = buf_priv; - return (void *)buf->paddr; + return &buf->paddr; } static void *vb2_dma_contig_vaddr(void *buf_priv) diff --git a/include/media/videobuf2-dma-contig.h b/include/media/videobuf2-dma-contig.h index 1d6188d..7e6c68b 100644 --- a/include/media/videobuf2-dma-contig.h +++ b/include/media/videobuf2-dma-contig.h @@ -14,11 +14,14 @@ #define _MEDIA_VIDEOBUF2_DMA_COHERENT_H #include +#include -static inline unsigned long vb2_dma_contig_plane_paddr( - struct vb2_buffer *vb, unsigned int plane_no) +static inline dma_addr_t +vb2_dma_contig_plane_paddr(struct vb2_buffer *vb, unsigned int plane_no) { - return (unsigned long)vb2_plane_cookie(vb, plane_no); + dma_addr_t *paddr = vb2_plane_cookie(vb, plane_no); + + return *paddr; } void *vb2_dma_contig_init_ctx(struct device *dev);