From patchwork Fri Jul 6 12:57:51 2012 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Javier Martin X-Patchwork-Id: 13243 Received: from mail.tu-berlin.de ([130.149.7.33]) by www.linuxtv.org with esmtp (Exim 4.72) (envelope-from ) id 1Sn86z-0000r6-RL for patchwork@linuxtv.org; Fri, 06 Jul 2012 14:58:17 +0200 X-tubIT-Incoming-IP: 209.132.180.67 Received: from vger.kernel.org ([209.132.180.67]) by mail.tu-berlin.de (exim-4.75/mailfrontend-2) with esmtp for id 1Sn86z-0007DV-Ga; Fri, 06 Jul 2012 14:58:17 +0200 Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1757299Ab2GFM6O (ORCPT ); Fri, 6 Jul 2012 08:58:14 -0400 Received: from mail-wi0-f178.google.com ([209.85.212.178]:43848 "EHLO mail-wi0-f178.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1757295Ab2GFM6L (ORCPT ); Fri, 6 Jul 2012 08:58:11 -0400 Received: by wibhr14 with SMTP id hr14so829297wib.1 for ; Fri, 06 Jul 2012 05:58:10 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20120113; h=from:to:cc:subject:date:message-id:x-mailer:in-reply-to:references :x-gm-message-state; bh=UDt++yB5bzbb46n7ctxloGJd5Vh8n0J3uawLjnL1qTE=; b=C3Yj1lu9TdOGTTkuYxm1xR6BDc4SX3aVUDhBavZo921MeGmcHzFYYMJpmUshNbEw4b I5NYjYvWX7HcupMT7qH5TWxtj84P6aoCUemFFOZiC8x5HF9rOeEb8SKx6n0h4DyiGknr VrTyoxoCvDr+dTabHsr3SUNHNeYXG7+xZ0fjy7UZikudxXwWpjo88usbMdsLVtRwdg0n DYPN5svpUxKYXvQ6G+ZbU9QjMD/4U2pCo39MouaIIhcx5YQzUdK1lV5dDxeR392x6dzz F9OXCyz50H+peqbaAgRC7rR73TLeDdvQoJ6arJxi+as9fQyQNcoacvZ/VALYecq/w0cC 10Eg== Received: by 10.180.19.169 with SMTP id g9mr7666154wie.9.1341579490098; Fri, 06 Jul 2012 05:58:10 -0700 (PDT) Received: from piscis.vsilicon.net (96.252.106.212.dynamic.jazztel.es. [212.106.252.96]) by mx.google.com with ESMTPS id t8sm5628147wiy.3.2012.07.06.05.58.08 (version=TLSv1/SSLv3 cipher=OTHER); Fri, 06 Jul 2012 05:58:09 -0700 (PDT) From: Javier Martin To: linux-media@vger.kernel.org Cc: linux-arm-kernel@lists.infradead.org, sakari.ailus@maxwell.research.nokia.com, kyungmin.park@samsung.com, s.nawrocki@samsung.com, laurent.pinchart@ideasonboard.com, shawn.guo@linaro.org, fabio.estevam@freescale.com, richard.zhu@linaro.org, arnaud.patard@rtp-net.org, kernel@pengutronix.de, mchehab@infradead.org, p.zabel@pengutronix.de, Javier Martin Subject: [PATCH 3/3] Visstrim M10: Add support for Coda. Date: Fri, 6 Jul 2012 14:57:51 +0200 Message-Id: <1341579471-25208-4-git-send-email-javier.martin@vista-silicon.com> X-Mailer: git-send-email 1.7.9.5 In-Reply-To: <1341579471-25208-1-git-send-email-javier.martin@vista-silicon.com> References: <1341579471-25208-1-git-send-email-javier.martin@vista-silicon.com> X-Gm-Message-State: ALoCoQlK3KJMYGcbWC7318Id+/TsZd0nsnlcre/NwzI40u0p7WS3zYeWKV59OkIGfj0Lfca7i3re Sender: linux-media-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-media@vger.kernel.org X-PMX-Version: 5.6.1.2065439, Antispam-Engine: 2.7.2.376379, Antispam-Data: 2012.7.6.125118 X-PMX-Spam: Gauge=IIIIIIII, Probability=8%, Report=' MULTIPLE_RCPTS 0.1, HTML_00_01 0.05, HTML_00_10 0.05, BODYTEXTP_SIZE_3000_LESS 0, BODY_SIZE_2000_2999 0, BODY_SIZE_5000_LESS 0, BODY_SIZE_7000_LESS 0, URI_ENDS_IN_HTML 0, __ANY_URI 0, __CP_URI_IN_BODY 0, __HAS_FROM 0, __HAS_MSGID 0, __HAS_X_MAILER 0, __HAS_X_MAILING_LIST 0, __LINES_OF_YELLING 0, __MIME_TEXT_ONLY 0, __MULTIPLE_RCPTS_CC_X2 0, __SANE_MSGID 0, __TO_MALFORMED_2 0, __TO_NO_NAME 0, __URI_NO_WWW 0, __URI_NS ' Support the codadx6 that is included in the i.MX27 SoC. --- arch/arm/mach-imx/mach-imx27_visstrim_m10.c | 24 +++++++++++++++++++++--- 1 file changed, 21 insertions(+), 3 deletions(-) diff --git a/arch/arm/mach-imx/mach-imx27_visstrim_m10.c b/arch/arm/mach-imx/mach-imx27_visstrim_m10.c index f76edb9..bee2714 100644 --- a/arch/arm/mach-imx/mach-imx27_visstrim_m10.c +++ b/arch/arm/mach-imx/mach-imx27_visstrim_m10.c @@ -232,10 +232,10 @@ static void __init visstrim_camera_init(void) static void __init visstrim_reserve(void) { /* reserve 4 MiB for mx2-camera */ - mx2_camera_base = memblock_alloc(MX2_CAMERA_BUF_SIZE, + mx2_camera_base = memblock_alloc(2 * MX2_CAMERA_BUF_SIZE, MX2_CAMERA_BUF_SIZE); - memblock_free(mx2_camera_base, MX2_CAMERA_BUF_SIZE); - memblock_remove(mx2_camera_base, MX2_CAMERA_BUF_SIZE); + memblock_free(mx2_camera_base, 2 * MX2_CAMERA_BUF_SIZE); + memblock_remove(mx2_camera_base, 2 * MX2_CAMERA_BUF_SIZE); } /* GPIOs used as events for applications */ @@ -404,6 +404,23 @@ static const struct imx_ssi_platform_data visstrim_m10_ssi_pdata __initconst = { .flags = IMX_SSI_DMA | IMX_SSI_SYN, }; +/* coda */ + +static void __init visstrim_coda_init(void) +{ + struct platform_device *pdev; + int dma; + + pdev = imx27_add_coda(); + dma = dma_declare_coherent_memory(&pdev->dev, + mx2_camera_base + MX2_CAMERA_BUF_SIZE, + mx2_camera_base + MX2_CAMERA_BUF_SIZE, + MX2_CAMERA_BUF_SIZE, + DMA_MEMORY_MAP | DMA_MEMORY_EXCLUSIVE); + if (!(dma & DMA_MEMORY_MAP)) + return; +} + static void __init visstrim_m10_revision(void) { int exp_version = 0; @@ -467,6 +484,7 @@ static void __init visstrim_m10_board_init(void) &iclink_tvp5150, sizeof(iclink_tvp5150)); gpio_led_register_device(0, &visstrim_m10_led_data); visstrim_camera_init(); + visstrim_coda_init(); } static void __init visstrim_m10_timer_init(void)