Skip to content

Commit

Permalink
OMAPDSS: DSI: flush posted write when entering ULPS
Browse files Browse the repository at this point in the history
Flush posted write between writing the ULPS enable bits and waiting for
the interrupt.

Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
  • Loading branch information
Tomi Valkeinen committed Dec 2, 2011
1 parent a47161a commit a702c85
Showing 1 changed file with 6 additions and 0 deletions.
6 changes: 6 additions & 0 deletions drivers/video/omap2/dss/dsi.c
Original file line number Diff line number Diff line change
Expand Up @@ -3561,6 +3561,9 @@ static int dsi_enter_ulps(struct platform_device *dsidev)
REG_FLD_MOD(dsidev, DSI_COMPLEXIO_CFG2, (1 << 0) | (1 << 1) | (1 << 2),
7, 5);

/* flush posted write and wait for SCP interface to finish the write */
dsi_read_reg(dsidev, DSI_COMPLEXIO_CFG2);

if (wait_for_completion_timeout(&completion,
msecs_to_jiffies(1000)) == 0) {
DSSERR("ULPS enable timeout\n");
Expand All @@ -3575,6 +3578,9 @@ static int dsi_enter_ulps(struct platform_device *dsidev)
REG_FLD_MOD(dsidev, DSI_COMPLEXIO_CFG2, (0 << 0) | (0 << 1) | (0 << 2),
7, 5);

/* flush posted write and wait for SCP interface to finish the write */
dsi_read_reg(dsidev, DSI_COMPLEXIO_CFG2);

dsi_cio_power(dsidev, DSI_COMPLEXIO_POWER_ULPS);

dsi_if_enable(dsidev, false);
Expand Down

0 comments on commit a702c85

Please sign in to comment.