diff options
author | Dan Johansson <dan.johansson@stericsson.com> | 2010-07-01 15:11:24 +0200 |
---|---|---|
committer | John Rigby <john.rigby@linaro.org> | 2010-09-02 22:45:50 -0600 |
commit | 574724fbbb1bd2f78ee1a626dfa18cf707c741ab (patch) | |
tree | b4984ed38c86b35e862c90bc1ac6acc8a9810381 /drivers/video/mcde/mcde_dss.c | |
parent | 50a1ade75cf1e3c2ff203b6447c59909b1f6fb84 (diff) |
MCDE: V-sync on main and sub display using DSI BTA
* V-sync support for both primary and secondary display.
* V-sync is disabled by default. It is enabled in menuconfig
(System Type -> Display selection -> Enable v-sync for
primary / secondary display).
* DSI HS clock is set to 840 MHz, DSI esq clock 19.2 MHz.
* Enables VAUX1 if startup graphics is enabled.
ST Ericsson Change-Id: WP264234
Reviewed-on: http://gerrit.lud.stericsson.com/gerrit/2154
Tested-by: Dan JOHANSSON <dan.johansson@stericsson.com>
Reviewed-by: Jonas ABERG <jonas.aberg@stericsson.com>
Signed-off-by: Mian Yousaf Kaukab <mian.yousaf.kaukab@stericsson.com>
Change-Id: I47f72cb9449e08f089f6bdb25988bd9958644899
Reviewed-on: http://gerrit.lud.stericsson.com/gerrit/2809
Diffstat (limited to 'drivers/video/mcde/mcde_dss.c')
-rw-r--r-- | drivers/video/mcde/mcde_dss.c | 31 |
1 files changed, 14 insertions, 17 deletions
diff --git a/drivers/video/mcde/mcde_dss.c b/drivers/video/mcde/mcde_dss.c index d6930a6ad70..846d7c33e33 100644 --- a/drivers/video/mcde/mcde_dss.c +++ b/drivers/video/mcde/mcde_dss.c @@ -67,8 +67,7 @@ static int apply_overlay(struct mcde_overlay *ovly, /* MCDE DSS operations */ -int mcde_dss_enable_display(struct mcde_display_device *ddev, - bool display_initialized) +int mcde_dss_enable_display(struct mcde_display_device *ddev) { int ret; struct mcde_chnl_state *chnl; @@ -84,22 +83,20 @@ int mcde_dss_enable_display(struct mcde_display_device *ddev, goto get_chnl_failed; } ddev->chnl_state = chnl; - if (!display_initialized) { - /* Initiate display communication */ - ret = ddev->set_power_mode(ddev, MCDE_DISPLAY_PM_STANDBY); - if (ret < 0) { - dev_warn(&ddev->dev, "Failed to initialize display\n"); - goto display_failed; - } - - dev_dbg(&ddev->dev, "Display enabled, chnl=%d\n", - ddev->chnl_id); - } else { - dev_dbg(&ddev->dev, "Display already enabled, chnl=%d\n", - ddev->chnl_id); - ddev->power_mode = MCDE_DISPLAY_PM_ON; - ret = 0; + /* Initiate display communication */ + ret = ddev->set_power_mode(ddev, MCDE_DISPLAY_PM_STANDBY); + if (ret < 0) { + dev_warn(&ddev->dev, "Failed to initialize display\n"); + goto display_failed; } + + ret = ddev->set_synchronized_update(ddev, ddev->synchronized_update); + if (ret < 0) + dev_warn(&ddev->dev, "Failed to set sync\n"); + /* TODO: call driver for all defaults like sync_update above */ + + dev_dbg(&ddev->dev, "Display enabled, chnl=%d\n", + ddev->chnl_id); ddev->enabled = true; out: return ret; |