From patchwork Mon Jul 9 09:17:17 2012 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Javier Martin X-Patchwork-Id: 13286 Received: from mail.tu-berlin.de ([130.149.7.33]) by www.linuxtv.org with esmtp (Exim 4.72) (envelope-from ) id 1SoA64-0000tD-2Z for patchwork@linuxtv.org; Mon, 09 Jul 2012 11:17:36 +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-3) with esmtp for id 1SoA63-000250-Ez; Mon, 09 Jul 2012 11:17:36 +0200 Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752687Ab2GIJRd (ORCPT ); Mon, 9 Jul 2012 05:17:33 -0400 Received: from mail-we0-f174.google.com ([74.125.82.174]:62118 "EHLO mail-we0-f174.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752206Ab2GIJRc (ORCPT ); Mon, 9 Jul 2012 05:17:32 -0400 Received: by weyx8 with SMTP id x8so1030899wey.19 for ; Mon, 09 Jul 2012 02:17:31 -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=Z5dnk2tP83S37OwlfkNNeNYqsQFvbHeQ7L60kWH6MwE=; b=LQObZWhp6pcdQ8p2KkLYIbcgvVM0sZ8qXyv5J4jyGcjPER4EC3K+4Xql/BBKUiiiXR Rs/8iRDO1tEdz8p0rgcQzX6mS3CNuqiizrBh+b+UyxS3KRmR9Q57RRxEq6mn0i76MaEd duWHpLyee9my2xLllAqe706Ch7gZsLeuePbJTW+1Lz4wkoocuKKF+GRnC2LRO/lkTcjC l73WQSILbD65jXrnazMRsCySmNUppKJMu2LmeoJshNUaZE52tX3P9lIOL22EuQt20Ptd Y6TfHvYnh3juarNEz7RDhin73c2zexNFTdg8biIjLH4eYmopotcLlaejnnSu86aaU2Q9 qGig== Received: by 10.180.97.106 with SMTP id dz10mr27789609wib.21.1341825451052; Mon, 09 Jul 2012 02:17:31 -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 b7sm8487525wiz.9.2012.07.09.02.17.28 (version=TLSv1/SSLv3 cipher=OTHER); Mon, 09 Jul 2012 02:17:30 -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 v2 3/3] Visstrim M10: Add support for Coda. Date: Mon, 9 Jul 2012 11:17:17 +0200 Message-Id: <1341825437-23420-2-git-send-email-javier.martin@vista-silicon.com> X-Mailer: git-send-email 1.7.9.5 In-Reply-To: <1341825437-23420-1-git-send-email-javier.martin@vista-silicon.com> References: <1341825437-23420-1-git-send-email-javier.martin@vista-silicon.com> X-Gm-Message-State: ALoCoQl6CM8FWtoqWOPfxmW27i+tiZ80uPsNrx6iFkTxN/TdwphSHqq8XJjtv54rYU0EtVq9VL3m 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.9.90314 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. --- Changes since v1: - Use 'arm_memblock_steal'. --- arch/arm/mach-imx/mach-imx27_visstrim_m10.c | 24 ++++++++++++++++++++---- 1 file changed, 20 insertions(+), 4 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..214e4ff 100644 --- a/arch/arm/mach-imx/mach-imx27_visstrim_m10.c +++ b/arch/arm/mach-imx/mach-imx27_visstrim_m10.c @@ -32,12 +32,12 @@ #include #include #include -#include #include #include #include #include #include +#include #include #include #include @@ -232,10 +232,8 @@ 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 = arm_memblock_steal(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); } /* GPIOs used as events for applications */ @@ -404,6 +402,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 +482,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)