From: Tomi Valkeinen <tomi.valkeinen@ti.com>
To: linux-omap@vger.kernel.org, linux-fbdev@vger.kernel.org
Cc: b-cousson@ti.com, paul@pwsan.com, khilman@ti.com,
Tomi Valkeinen <tomi.valkeinen@ti.com>
Subject: [PATCHv2 25/28] OMAP: DSS2: Remove ctx loss count from dss.c
Date: Thu, 09 Jun 2011 13:56:47 +0000 [thread overview]
Message-ID: <1307627810-3768-26-git-send-email-tomi.valkeinen@ti.com> (raw)
In-Reply-To: <1307627810-3768-1-git-send-email-tomi.valkeinen@ti.com>
dss.c only saves 1 register (3 in OMAP3) so the extra overhead from
need_ctx_restore & co. is probably bigger than the time spent saving and
restoring those few registers every time.
So remove the code from dss.c and restore context every time dss has
been off.
Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
---
drivers/video/omap2/dss/dss.c | 62 +----------------------------------------
1 files changed, 1 insertions(+), 61 deletions(-)
diff --git a/drivers/video/omap2/dss/dss.c b/drivers/video/omap2/dss/dss.c
index 4e36a07..21c8389 100644
--- a/drivers/video/omap2/dss/dss.c
+++ b/drivers/video/omap2/dss/dss.c
@@ -62,8 +62,6 @@ static struct {
struct platform_device *pdev;
void __iomem *base;
- int ctx_loss_cnt;
-
struct clk *dpll4_m4_ck;
struct clk *dss_clk;
@@ -631,61 +629,6 @@ void dss_select_hdmi_venc_clk_source(enum dss_hdmi_venc_clk_source_select hdmi)
REG_FLD_MOD(DSS_CONTROL, hdmi, 15, 15); /* VENC_HDMI_SWITCH */
}
-/* CONTEXT */
-static void dss_init_ctx_loss_count(void)
-{
- struct device *dev = &dss.pdev->dev;
- struct omap_display_platform_data *pdata = dev->platform_data;
- struct omap_dss_board_info *board_data = pdata->board_data;
- int cnt = 0;
-
- /*
- * get_context_loss_count returns negative on error. We'll ignore the
- * error and store the error to ctx_loss_cnt, which will cause
- * dss_need_ctx_restore() call to return true.
- */
-
- if (board_data->get_context_loss_count)
- cnt = board_data->get_context_loss_count(dev);
-
- WARN_ON(cnt < 0);
-
- dss.ctx_loss_cnt = cnt;
-
- DSSDBG("initial ctx_loss_cnt %u\n", cnt);
-}
-
-static bool dss_need_ctx_restore(void)
-{
- struct device *dev = &dss.pdev->dev;
- struct omap_display_platform_data *pdata = dev->platform_data;
- struct omap_dss_board_info *board_data = pdata->board_data;
- int cnt;
-
- /*
- * If get_context_loss_count is not available, assume that we need
- * context restore always.
- */
- if (!board_data->get_context_loss_count)
- return true;
-
- cnt = board_data->get_context_loss_count(dev);
- if (cnt < 0) {
- dev_err(dev, "getting context loss count failed, will force "
- "context restore\n");
- dss.ctx_loss_cnt = cnt;
- return true;
- }
-
- if (cnt = dss.ctx_loss_cnt)
- return false;
-
- DSSDBG("ctx_loss_cnt %d -> %d\n", dss.ctx_loss_cnt, cnt);
- dss.ctx_loss_cnt = cnt;
-
- return true;
-}
-
static int dss_get_clocks(void)
{
struct clk *clk;
@@ -797,8 +740,6 @@ static int omap_dsshw_probe(struct platform_device *pdev)
if (r)
goto err_clocks;
- dss_init_ctx_loss_count();
-
pm_runtime_enable(&pdev->dev);
r = dss_runtime_get();
@@ -875,8 +816,7 @@ static int dss_runtime_suspend(struct device *dev)
static int dss_runtime_resume(struct device *dev)
{
clk_enable(dss.dss_clk);
- if (dss_need_ctx_restore())
- dss_restore_context();
+ dss_restore_context();
return 0;
}
--
1.7.4.1
next prev parent reply other threads:[~2011-06-09 13:56 UTC|newest]
Thread overview: 54+ messages / expand[flat|nested] mbox.gz Atom feed top
2011-06-09 13:56 [PATCHv2 00/28] OMAP DSS runtime PM adaptation Tomi Valkeinen
2011-06-09 13:56 ` [PATCHv2 01/28] OMAP: change get_context_loss_count ret value to int Tomi Valkeinen
2011-06-13 9:51 ` [PATCHv2 01/28] OMAP: change get_context_loss_count ret value Tomi Valkeinen
2011-06-13 16:37 ` [PATCHv2 01/28] OMAP: change get_context_loss_count ret value to int Ghongdemath, Girish
2011-06-13 16:45 ` [PATCHv2 01/28] OMAP: change get_context_loss_count ret value Tomi Valkeinen
2011-06-14 7:13 ` Paul Walmsley
2011-06-14 7:24 ` Tomi Valkeinen
2011-06-14 13:55 ` Rajendra Nayak
2011-06-15 9:19 ` Rajendra Nayak
2011-08-21 6:19 ` Paul Walmsley
2011-10-06 23:11 ` Paul Walmsley
2011-10-06 23:14 ` Tony Lindgren
2011-06-09 13:56 ` [PATCHv2 02/28] OMAP: DSS2: Taal: Make driver more fault tolerant Tomi Valkeinen
2011-06-09 13:56 ` [PATCHv2 03/28] OMAP: DSS2: Reset LANEx_ULPS_SIG2 bits after use Tomi Valkeinen
2011-06-09 13:56 ` [PATCHv2 04/28] OMAP: DSS2: Handle dpll4_m4_ck in dss_get/put_clocks Tomi Valkeinen
2011-06-09 13:56 ` [PATCHv2 05/28] OMAP: DSS2: Clean up probe for DSS & DSI Tomi Valkeinen
2011-06-09 13:56 ` [PATCHv2 06/28] OMAP: DSS2: Init dispc first before other components Tomi Valkeinen
2011-06-09 13:56 ` [PATCHv2 07/28] OMAP: DSS2: Remove clk optimization at dss init Tomi Valkeinen
2011-06-09 13:56 ` [PATCHv2 08/28] OMAP: DSS2: rewrite use of context_loss_count Tomi Valkeinen
2011-06-09 13:56 ` [PATCHv2 09/28] OMAP: DSS2: Use omap_pm_get_dev_context_loss_count to get ctx loss count Tomi Valkeinen
2011-06-09 13:56 ` [PATCHv2 10/28] OMAP: DSS2: DPI: remove unneeded SYSCK enable/disable Tomi Valkeinen
2011-06-09 13:56 ` [PATCHv2 11/28] OMAP: DSS2: Add FEAT_VENC_REQUIRES_TV_DAC_CLK Tomi Valkeinen
2011-06-09 13:56 ` [PATCHv2 12/28] OMAP: DSS2: Add new FEAT definitions for features missing from OMAP2 Tomi Valkeinen
2011-06-09 13:56 ` [PATCHv2 13/28] OMAP: DSS2: Remove core_dump_clocks Tomi Valkeinen
2011-06-09 13:56 ` [PATCHv2 14/28] OMAP: DSS2: Remove CONFIG_OMAP2_DSS_SLEEP_BEFORE_RESET Tomi Valkeinen
2011-06-09 13:56 ` [PATCHv2 15/28] OMAP4: HWMOD: Modify DSS opt clocks Tomi Valkeinen
2011-06-15 11:23 ` Tomi Valkeinen
2011-06-21 6:20 ` Tomi Valkeinen
2011-06-09 13:56 ` [PATCHv2 16/28] OMAP3: HWMOD: Add " Tomi Valkeinen
2011-07-15 6:49 ` Paul Walmsley
2011-08-02 1:27 ` Paul Walmsley
2011-08-02 7:47 ` Tomi Valkeinen
2011-06-09 13:56 ` [PATCHv2 17/28] OMAP2420: " Tomi Valkeinen
2011-07-15 6:48 ` Paul Walmsley
2011-08-02 1:14 ` Paul Walmsley
2011-08-02 7:57 ` Tomi Valkeinen
2011-06-09 13:56 ` [PATCHv2 18/28] OMAP2430: " Tomi Valkeinen
2011-07-15 6:49 ` Paul Walmsley
2011-06-09 13:56 ` [PATCHv2 19/28] OMAP4: HWMOD: change DSS main_clk scheme Tomi Valkeinen
2011-06-09 13:56 ` [PATCHv2 20/28] OMAP: DSS2: Use PM runtime & HWMOD support Tomi Valkeinen
2011-06-09 20:03 ` Paul Mundt
2011-06-10 6:52 ` Tomi Valkeinen
2011-06-10 7:24 ` Paul Mundt
2011-06-21 14:49 ` Kevin Hilman
2011-06-21 15:18 ` Tomi Valkeinen
2011-06-09 13:56 ` [PATCHv2 21/28] OMAP4: HWMOD: Remove unneeded DSS opt clocks Tomi Valkeinen
2011-06-09 13:56 ` [PATCHv2 22/28] OMAP: DSS2: Remove unused opt_clock_available Tomi Valkeinen
2011-06-09 13:56 ` [PATCHv2 23/28] OMAP: DSS2: DISPC: remove finegrained clk enables/disables Tomi Valkeinen
2011-06-09 13:56 ` [PATCHv2 24/28] OMAP: DSS2: Remove unused code from display.c Tomi Valkeinen
2011-06-09 13:56 ` Tomi Valkeinen [this message]
2011-06-09 13:56 ` [PATCHv2 26/28] OMAP4: CLKDEV: Remove omapdss clock aliases Tomi Valkeinen
2011-06-09 13:56 ` [PATCHv2 27/28] OMAP: DSS2: DISPC: Fix context save/restore Tomi Valkeinen
2011-06-09 13:56 ` [PATCHv2 28/28] OMAP: DSS2: DSS: " Tomi Valkeinen
2011-06-09 14:27 ` [PATCHv2 00/28] OMAP DSS runtime PM adaptation 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=1307627810-3768-26-git-send-email-tomi.valkeinen@ti.com \
--to=tomi.valkeinen@ti.com \
--cc=b-cousson@ti.com \
--cc=khilman@ti.com \
--cc=linux-fbdev@vger.kernel.org \
--cc=linux-omap@vger.kernel.org \
--cc=paul@pwsan.com \
/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).