linux-arm-kernel.lists.infradead.org archive mirror
 help / color / mirror / Atom feed
From: sumit.semwal@ti.com (Sumit Semwal)
To: linux-arm-kernel@lists.infradead.org
Subject: [PATCH v10 01/18] OMAP2, 3: DSS2: remove forced clk-disable from omap_dss_remove
Date: Mon, 24 Jan 2011 11:51:48 +0530	[thread overview]
Message-ID: <1295850125-21405-2-git-send-email-sumit.semwal@ti.com> (raw)
In-Reply-To: <1295850125-21405-1-git-send-email-sumit.semwal@ti.com>

As part of omap hwmod changes, DSS will not be the only controller of its
clocks. hwmod initialization also enables the interface clocks, and
manages them.
So, when DSS is built as a module, omap_dss_remove doesn't try to disable
all clocks that have a higher usecount.

Reviewed-by: Kevin Hilman <khilman@ti.com>
Tested-by: Kevin Hilman <khilman@ti.com>
Signed-off-by: Sumit Semwal <sumit.semwal@ti.com>
---
 drivers/video/omap2/dss/core.c |   46 ++++++---------------------------------
 1 files changed, 7 insertions(+), 39 deletions(-)

diff --git a/drivers/video/omap2/dss/core.c b/drivers/video/omap2/dss/core.c
index 8e89f60..ee56859 100644
--- a/drivers/video/omap2/dss/core.c
+++ b/drivers/video/omap2/dss/core.c
@@ -623,7 +623,6 @@ static int omap_dss_remove(struct platform_device *pdev)
 {
 	struct omap_dss_board_info *pdata = pdev->dev.platform_data;
 	int i;
-	int c;
 
 	dss_uninitialize_debugfs();
 
@@ -638,44 +637,13 @@ static int omap_dss_remove(struct platform_device *pdev)
 
 	dss_exit();
 
-	/* these should be removed at some point */
-	c = core.dss_ick->usecount;
-	if (c > 0) {
-		DSSERR("warning: dss_ick usecount %d, disabling\n", c);
-		while (c-- > 0)
-			clk_disable(core.dss_ick);
-	}
-
-	c = core.dss1_fck->usecount;
-	if (c > 0) {
-		DSSERR("warning: dss1_fck usecount %d, disabling\n", c);
-		while (c-- > 0)
-			clk_disable(core.dss1_fck);
-	}
-
-	c = core.dss2_fck->usecount;
-	if (c > 0) {
-		DSSERR("warning: dss2_fck usecount %d, disabling\n", c);
-		while (c-- > 0)
-			clk_disable(core.dss2_fck);
-	}
-
-	c = core.dss_54m_fck->usecount;
-	if (c > 0) {
-		DSSERR("warning: dss_54m_fck usecount %d, disabling\n", c);
-		while (c-- > 0)
-			clk_disable(core.dss_54m_fck);
-	}
-
-	if (core.dss_96m_fck) {
-		c = core.dss_96m_fck->usecount;
-		if (c > 0) {
-			DSSERR("warning: dss_96m_fck usecount %d, disabling\n",
-					c);
-			while (c-- > 0)
-				clk_disable(core.dss_96m_fck);
-		}
-	}
+	/*
+	 * As part of hwmod changes, DSS is not the only controller of dss
+	 * clocks; hwmod framework itself will also enable clocks during hwmod
+	 * init for dss, and autoidle is set in h/w for DSS. Hence, there's no
+	 * need to disable clocks if their usecounts > 1.
+	 */
+	WARN_ON(core.num_clks_enabled > 0);
 
 	dss_put_clocks();
 
-- 
1.7.1

  reply	other threads:[~2011-01-24  6:21 UTC|newest]

Thread overview: 44+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2011-01-24  6:21 [PATCH v10 00/18] OMAP2,3: hwmod DSS Adaptation Sumit Semwal
2011-01-24  6:21 ` Sumit Semwal [this message]
2011-01-24  6:21 ` [PATCH v10 02/18] OMAP2420: hwmod data: add DSS DISPC RFBI VENC Sumit Semwal
2011-01-24  6:21 ` [PATCH v10 03/18] OMAP2430: " Sumit Semwal
2011-01-24  6:21 ` [PATCH v10 04/18] OMAP3: hwmod data: add DSS DISPC RFBI DSI VENC Sumit Semwal
2011-01-24  6:21 ` [PATCH v10 05/18] OMAP2,3 DSS2 Change driver name to omap_display Sumit Semwal
2011-02-24  9:27   ` Tomi Valkeinen
2011-02-28  6:53     ` Tomi Valkeinen
2011-02-28  7:09       ` [PATCH v10 05/18] OMAP2, 3 " archit taneja
2011-02-28  7:19         ` [PATCH v10 05/18] OMAP2,3 " Tomi Valkeinen
2011-02-28  7:27           ` [PATCH v10 05/18] OMAP2, 3 " archit taneja
2011-02-28  8:16             ` Semwal, Sumit
2011-02-28  8:29               ` [PATCH v10 05/18] OMAP2,3 " Tomi Valkeinen
2011-02-28 11:36           ` [PATCH v10 05/18] OMAP2, 3 " Cousson, Benoit
2011-02-28 12:10             ` [PATCH v10 05/18] OMAP2,3 " Tomi Valkeinen
2011-02-28 12:13               ` Russell King - ARM Linux
2011-02-28 13:38                 ` [PATCH v10 05/18] OMAP2, 3 " Cousson, Benoit
2011-02-28 14:06                   ` [PATCH v10 05/18] OMAP2,3 " Russell King - ARM Linux
2011-02-28 14:55                     ` [PATCH v10 05/18] OMAP2, 3 " Cousson, Benoit
2011-02-28 14:00               ` Cousson, Benoit
2011-02-28 14:57                 ` [PATCH v10 05/18] OMAP2,3 " Tomi Valkeinen
2011-03-01 10:18                   ` [PATCH v10 05/18] OMAP2, 3 " Cousson, Benoit
2011-01-24  6:21 ` [PATCH v10 06/18] OMAP2,3 DSS2 Use Regulator init with driver name Sumit Semwal
2011-01-24  6:21 ` [PATCH v10 07/18] OMAP2, 3: DSS2: Create new file display.c for central dss driver registration Sumit Semwal
2011-01-24  6:21 ` [PATCH v10 08/18] OMAP2, 3: DSS2: board files: replace platform_device_register with omap_display_init() Sumit Semwal
2011-01-24  6:21 ` [PATCH v10 09/18] OMAP2,3: DSS2: Build omap_device for each DSS HWIP Sumit Semwal
2011-01-24  6:21 ` [PATCH v10 10/18] OMAP2, 3: DSS2: DSS: create platform_driver, move init, exit to driver Sumit Semwal
2011-01-24  6:21 ` [PATCH v10 11/18] OMAP2, 3: DSS2: Move clocks from core driver to dss driver Sumit Semwal
2011-01-24  6:21 ` [PATCH v10 12/18] OMAP2, 3: DSS2: RFBI: create platform_driver, move init, exit to driver Sumit Semwal
2011-01-24  6:22 ` [PATCH v10 13/18] OMAP2, 3: DSS2: DISPC: " Sumit Semwal
2011-01-24  6:22 ` [PATCH v10 14/18] OMAP2, 3: DSS2: VENC: " Sumit Semwal
2011-01-24  6:22 ` [PATCH v10 15/18] OMAP2, 3: DSS2: DSI: " Sumit Semwal
2011-01-24  6:22 ` [PATCH v10 16/18] OMAP2,3: DSS2: replace printk with dev_dbg in init Sumit Semwal
2011-01-24  6:22 ` [PATCH v10 17/18] OMAP2,3: DSS2: Use platform device to get baseaddr Sumit Semwal
2011-01-24  6:22 ` [PATCH v10 18/18] OMAP2,3: DSS2: Get DSS IRQ from platform device Sumit Semwal
2011-01-27 12:49   ` [PATCH v10 18/18] OMAP2, 3: " Raghuveer Murthy
2011-01-27 12:59     ` Russell King - ARM Linux
2011-01-27 13:04       ` Raghuveer Murthy
2011-01-27 15:23         ` Semwal, Sumit
2011-02-14 14:09   ` [PATCH v10 18/18] OMAP2,3: " Tomi Valkeinen
2011-02-14 18:35     ` [PATCH v10 18/18] OMAP2, 3: " Semwal, Sumit
2011-01-24 21:57 ` [PATCH v10 00/18] OMAP2,3: hwmod DSS Adaptation Kevin Hilman
2011-01-25 17:03   ` Tony Lindgren
2011-01-28 12:01     ` Tomi Valkeinen

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1295850125-21405-2-git-send-email-sumit.semwal@ti.com \
    --to=sumit.semwal@ti.com \
    --cc=linux-arm-kernel@lists.infradead.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).