From patchwork Wed Mar 17 12:35:21 2010 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Roger Quadros X-Patchwork-Id: 86320 X-Patchwork-Delegate: tomi.valkeinen@nokia.com Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by demeter.kernel.org (8.14.3/8.14.3) with ESMTP id o2HCb815016706 for ; Wed, 17 Mar 2010 12:37:10 GMT Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1754817Ab0CQMhG (ORCPT ); Wed, 17 Mar 2010 08:37:06 -0400 Received: from smtp.nokia.com ([192.100.105.134]:17515 "EHLO mgw-mx09.nokia.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1754716Ab0CQMhD (ORCPT ); Wed, 17 Mar 2010 08:37:03 -0400 Received: from esebh105.NOE.Nokia.com (esebh105.ntc.nokia.com [172.21.138.211]) by mgw-mx09.nokia.com (Switch-3.3.3/Switch-3.3.3) with ESMTP id o2HCb1BW024381; Wed, 17 Mar 2010 07:37:02 -0500 Received: from esebh102.NOE.Nokia.com ([172.21.138.183]) by esebh105.NOE.Nokia.com with Microsoft SMTPSVC(6.0.3790.3959); Wed, 17 Mar 2010 14:35:28 +0200 Received: from mgw-sa01.ext.nokia.com ([147.243.1.47]) by esebh102.NOE.Nokia.com over TLS secured channel with Microsoft SMTPSVC(6.0.3790.3959); Wed, 17 Mar 2010 14:35:27 +0200 Received: from localhost.localdomain (ucofw-nat2.nokia.com [131.228.1.90]) by mgw-sa01.ext.nokia.com (Switch-3.3.3/Switch-3.3.3) with ESMTP id o2HCZMLq012147; Wed, 17 Mar 2010 14:35:26 +0200 From: Roger Quadros To: Tomi.Valkeinen@nokia.com Cc: linux-fbdev@vger.kernel.org, linux-omap@vger.kernel.org Subject: [PATCHv2 3/3] OMAP: DSS2: Use vdds_sdi regulator supply in SDI Date: Wed, 17 Mar 2010 14:35:21 +0200 Message-Id: <1268829321-29769-4-git-send-email-roger.quadros@nokia.com> X-Mailer: git-send-email 1.6.3.3 In-Reply-To: <1268829321-29769-3-git-send-email-roger.quadros@nokia.com> References: <1268829321-29769-1-git-send-email-roger.quadros@nokia.com> <1268829321-29769-2-git-send-email-roger.quadros@nokia.com> <1268829321-29769-3-git-send-email-roger.quadros@nokia.com> X-OriginalArrivalTime: 17 Mar 2010 12:35:27.0903 (UTC) FILETIME=[52F25AF0:01CAC5CE] X-Nokia-AV: Clean Sender: linux-omap-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-omap@vger.kernel.org X-Greylist: IP, sender and recipient auto-whitelisted, not delayed by milter-greylist-4.2.3 (demeter.kernel.org [140.211.167.41]); Wed, 17 Mar 2010 12:37:14 +0000 (UTC) diff --git a/drivers/video/omap2/dss/sdi.c b/drivers/video/omap2/dss/sdi.c index 3de3c1e..ee07a3c 100644 --- a/drivers/video/omap2/dss/sdi.c +++ b/drivers/video/omap2/dss/sdi.c @@ -23,13 +23,16 @@ #include #include #include +#include #include +#include #include "dss.h" static struct { bool skip_init; bool update_enabled; + struct regulator *vdds_sdi_reg; } sdi; static void sdi_basic_init(void) @@ -57,6 +60,10 @@ int omapdss_sdi_display_enable(struct omap_dss_device *dssdev) goto err0; } + r = regulator_enable(sdi.vdds_sdi_reg); + if (r) + goto err1; + /* In case of skip_init sdi_init has already enabled the clocks */ if (!sdi.skip_init) dss_clk_enable(DSS_CLK_ICK | DSS_CLK_FCK1); @@ -120,6 +127,7 @@ int omapdss_sdi_display_enable(struct omap_dss_device *dssdev) return 0; err2: dss_clk_disable(DSS_CLK_ICK | DSS_CLK_FCK1); + regulator_disable(sdi.vdds_sdi_reg); err1: omap_dss_stop_device(dssdev); err0: @@ -135,6 +143,8 @@ void omapdss_sdi_display_disable(struct omap_dss_device *dssdev) dss_clk_disable(DSS_CLK_ICK | DSS_CLK_FCK1); + regulator_disable(sdi.vdds_sdi_reg); + omap_dss_stop_device(dssdev); } EXPORT_SYMBOL(omapdss_sdi_display_disable); @@ -151,6 +161,11 @@ int sdi_init(bool skip_init) /* we store this for first display enable, then clear it */ sdi.skip_init = skip_init; + sdi.vdds_sdi_reg = dss_get_vdds_sdi(); + if (IS_ERR(sdi.vdds_sdi_reg)) { + DSSERR("can't get VDDS_SDI regulator\n"); + return PTR_ERR(sdi.vdds_sdi_reg); + } /* * Enable clocks already here, otherwise there would be a toggle * of them until sdi_display_enable is called.