From patchwork Fri Jul 20 14:41:31 2012 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Prabhakar Lad X-Patchwork-Id: 1221421 Return-Path: X-Original-To: patchwork-linux-arm@patchwork.kernel.org Delivered-To: patchwork-process-083081@patchwork2.kernel.org Received: from merlin.infradead.org (merlin.infradead.org [205.233.59.134]) by patchwork2.kernel.org (Postfix) with ESMTP id 2FDBAE0038 for ; Fri, 20 Jul 2012 14:53:53 +0000 (UTC) Received: from localhost ([::1] helo=merlin.infradead.org) by merlin.infradead.org with esmtp (Exim 4.76 #1 (Red Hat Linux)) id 1SsEW5-0003ph-Mw; Fri, 20 Jul 2012 14:49:17 +0000 Received: from arroyo.ext.ti.com ([192.94.94.40]) by merlin.infradead.org with esmtps (Exim 4.76 #1 (Red Hat Linux)) id 1SsEPG-0002Wp-IN for linux-arm-kernel@lists.infradead.org; Fri, 20 Jul 2012 14:42:16 +0000 Received: from dbdp20.itg.ti.com ([172.24.170.38]) by arroyo.ext.ti.com (8.13.7/8.13.7) with ESMTP id q6KEgBSu012763 for ; Fri, 20 Jul 2012 09:42:12 -0500 Received: from DBDE70.ent.ti.com (localhost [127.0.0.1]) by dbdp20.itg.ti.com (8.13.8/8.13.8) with ESMTP id q6KEg9tU022043; Fri, 20 Jul 2012 20:12:09 +0530 (IST) Received: from dbdp32.itg.ti.com (172.24.170.251) by dbde70.ent.ti.com (172.24.170.148) with Microsoft SMTP Server id 14.1.323.3; Fri, 20 Jul 2012 20:12:08 +0530 Received: from localhost.localdomain (dbdp20.itg.ti.com [172.24.170.38]) by dbdp32.itg.ti.com (8.13.8/8.13.8) with ESMTP id q6KEg80b006925; Fri, 20 Jul 2012 20:12:08 +0530 From: Prabhakar Lad To: LAK Subject: [PATCH] ARM: dm644x: fix clock setting and add vpss clock in VPSS driver Date: Fri, 20 Jul 2012 20:11:31 +0530 Message-ID: <1342795291-17847-1-git-send-email-prabhakar.lad@ti.com> X-Mailer: git-send-email 1.7.0.4 MIME-Version: 1.0 X-Spam-Note: CRM114 invocation failed X-Spam-Score: -6.9 (------) X-Spam-Report: SpamAssassin version 3.3.2 on merlin.infradead.org summary: Content analysis details: (-6.9 points) pts rule name description ---- ---------------------- -------------------------------------------------- -5.0 RCVD_IN_DNSWL_HI RBL: Sender listed at http://www.dnswl.org/, high trust [192.94.94.40 listed in list.dnswl.org] -0.0 T_RP_MATCHES_RCVD Envelope sender domain matches handover relay domain -0.0 SPF_PASS SPF: sender matches SPF record -1.9 BAYES_00 BODY: Bayes spam probability is 0 to 1% [score: 0.0000] Cc: dlos , Sekhar Nori , Manjunath Hadli , "Lad, Prabhakar" X-BeenThere: linux-arm-kernel@lists.infradead.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: linux-arm-kernel-bounces@lists.infradead.org Errors-To: linux-arm-kernel-bounces+patchwork-linux-arm=patchwork.kernel.org@lists.infradead.org From: Lad, Prabhakar fix clock setting for 480p and 576p. adjust appropriately without this patch we get out of range signal for this format. Add master and slave clock for VPSS driver which allows capture and display to independently work. Signed-off-by: Lad, Prabhakar Signed-off-by: Manjunath Hadli --- arch/arm/mach-davinci/dm644x.c | 12 +++++++++--- 1 files changed, 9 insertions(+), 3 deletions(-) diff --git a/arch/arm/mach-davinci/dm644x.c b/arch/arm/mach-davinci/dm644x.c index 20b7f15..952f6ac 100644 --- a/arch/arm/mach-davinci/dm644x.c +++ b/arch/arm/mach-davinci/dm644x.c @@ -801,8 +801,7 @@ static int dm644x_venc_setup_clock(enum vpbe_enc_timings_type type, switch (mode) { case V4L2_DV_480P59_94: case V4L2_DV_576P50: - v |= DM644X_VPSS_MUXSEL_PLL2_MODE | - DM644X_VPSS_DACCLKEN; + v |= DM644X_VPSS_DACCLKEN; writel(v, DAVINCI_SYSMOD_VIRT(SYSMOD_VPSS_CLKCTL)); break; case V4L2_DV_720P60: @@ -1005,8 +1004,15 @@ void __init dm644x_init(void) int __init dm644x_init_video(struct vpfe_config *vpfe_cfg, struct vpbe_config *vpbe_cfg) { - if (vpfe_cfg || vpbe_cfg) + if (vpfe_cfg || vpbe_cfg) { + /* Add vpss clock aliases */ + clk_add_alias("master", dm644x_vpss_device.name, + "vpss_master", NULL); + clk_add_alias("slave", dm644x_vpss_device.name, + "vpss_slave", NULL); + platform_device_register(&dm644x_vpss_device); + } if (vpfe_cfg) { dm644x_vpfe_dev.dev.platform_data = vpfe_cfg;