浏览代码

disp: msm: dsi: add additional validation checks for async cmd wait

Disable DSI command transfer async wait feature for DSI read commands
and the commands sent in non-embedded mode.

CRs-Fixed: 2579259
Change-Id: Ib3b08fbb091711aa4be87400b79d01f0dcc05e71
Signed-off-by: Aravind Venkateswaran <[email protected]>
Signed-off-by: Satya Rama Aditya Pinapala <[email protected]>
Aravind Venkateswaran 5 年之前
父节点
当前提交
bce44eed47
共有 1 个文件被更改,包括 10 次插入4 次删除
  1. 10 4
      msm/dsi/dsi_ctrl.c

+ 10 - 4
msm/dsi/dsi_ctrl.c

@@ -1254,13 +1254,19 @@ static u32 dsi_ctrl_validate_msg_flags(const struct mipi_dsi_msg *msg,
 				u32 flags)
 {
 	/*
-	 * ASYNC command wait mode is not supported for FIFO commands.
-	 * Waiting after a command is transferred cannot be guaranteed
-	 * if DSI_CTRL_CMD_ASYNC_WAIT flag is set.
+	 * ASYNC command wait mode is not supported for
+	 *    - commands sent using DSI FIFO memory
+	 *    - DSI read commands
+	 *    - DCS commands sent in non-embedded mode
+	 *    - whenever an explicit wait time is specificed for the command
+	 *      since the wait time cannot be guaranteed in async mode
 	 */
 	if ((flags & DSI_CTRL_CMD_FIFO_STORE) ||
-			msg->wait_ms)
+		flags & DSI_CTRL_CMD_READ ||
+		flags & DSI_CTRL_CMD_NON_EMBEDDED_MODE ||
+		msg->wait_ms)
 		flags &= ~DSI_CTRL_CMD_ASYNC_WAIT;
+
 	return flags;
 }