mirror of
https://github.com/torvalds/linux.git
synced 2024-12-27 13:22:23 +00:00
OMAPDSS: DSI: flush posted write when entering ULPS
Flush posted write between writing the ULPS enable bits and waiting for the interrupt. Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
This commit is contained in:
parent
a47161a55e
commit
a702c85906
@ -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),
|
REG_FLD_MOD(dsidev, DSI_COMPLEXIO_CFG2, (1 << 0) | (1 << 1) | (1 << 2),
|
||||||
7, 5);
|
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,
|
if (wait_for_completion_timeout(&completion,
|
||||||
msecs_to_jiffies(1000)) == 0) {
|
msecs_to_jiffies(1000)) == 0) {
|
||||||
DSSERR("ULPS enable timeout\n");
|
DSSERR("ULPS enable timeout\n");
|
||||||
@ -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),
|
REG_FLD_MOD(dsidev, DSI_COMPLEXIO_CFG2, (0 << 0) | (0 << 1) | (0 << 2),
|
||||||
7, 5);
|
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_cio_power(dsidev, DSI_COMPLEXIO_POWER_ULPS);
|
||||||
|
|
||||||
dsi_if_enable(dsidev, false);
|
dsi_if_enable(dsidev, false);
|
||||||
|
Loading…
Reference in New Issue
Block a user