summaryrefslogtreecommitdiff
path: root/drivers/video/fbdev
diff options
context:
space:
mode:
authorSandeep Panda <spanda@codeaurora.org>2017-01-23 16:48:23 +0530
committerSandeep Panda <spanda@codeaurora.org>2017-03-20 14:41:28 +0530
commit04ee7723d77f8d0f497dbf87e6dae9c174d75754 (patch)
tree64bd9177834a0dbf340f1beee833fba0a1ef2845 /drivers/video/fbdev
parentf39a5999e2473e890390e3a5aa794a2fd4256544 (diff)
msm: mdss: ensure proper state transition during ULPS exit
During stress environment, sometimes DSI ULPS exit sequence does not work properly. Add memory barriers while programing DSI lane register to ensure proper state transition of DSI lane during ULPS exit. Change-Id: Ib50958cf342bf23ab44f5a9d3bdf60adad824145 Signed-off-by: Sandeep Panda <spanda@codeaurora.org>
Diffstat (limited to 'drivers/video/fbdev')
-rw-r--r--drivers/video/fbdev/msm/msm_mdss_io_8974.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/drivers/video/fbdev/msm/msm_mdss_io_8974.c b/drivers/video/fbdev/msm/msm_mdss_io_8974.c
index e6151b4c75a1..8236a17c9bbe 100644
--- a/drivers/video/fbdev/msm/msm_mdss_io_8974.c
+++ b/drivers/video/fbdev/msm/msm_mdss_io_8974.c
@@ -1,4 +1,4 @@
-/* Copyright (c) 2012-2016, The Linux Foundation. All rights reserved.
+/* Copyright (c) 2012-2017, The Linux Foundation. All rights reserved.
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License version 2 and
@@ -1863,8 +1863,10 @@ static int mdss_dsi_ulps_config_default(struct mdss_dsi_ctrl_pdata *ctrl,
* to be in stop state.
*/
MIPI_OUTP(ctrl->ctrl_base + 0x0AC, active_lanes << 16);
+ wmb(); /* ensure lanes are put to stop state */
MIPI_OUTP(ctrl->ctrl_base + 0x0AC, 0x0);
+ wmb(); /* ensure lanes are in proper state */
lane_status = MIPI_INP(ctrl->ctrl_base + 0xA8);
}