Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 2dddca9d authored by qctecmdr's avatar qctecmdr Committed by Gerrit - the friendly Code Review server
Browse files

Merge "disp: msm: dsi: disable DSI cmd tx async wait for video mode"

parents 725f6cc2 b09a6e5d
Loading
Loading
Loading
Loading
+6 −3
Original line number Diff line number Diff line
@@ -1278,7 +1278,8 @@ static void dsi_kickoff_msg_tx(struct dsi_ctrl *dsi_ctrl,
	}
}

static u32 dsi_ctrl_validate_msg_flags(const struct mipi_dsi_msg *msg,
static u32 dsi_ctrl_validate_msg_flags(struct dsi_ctrl *dsi_ctrl,
				const struct mipi_dsi_msg *msg,
				u32 flags)
{
	/*
@@ -1288,11 +1289,13 @@ static u32 dsi_ctrl_validate_msg_flags(const struct mipi_dsi_msg *msg,
	 *    - 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
	 *    - video mode panels
	 */
	if ((flags & DSI_CTRL_CMD_FIFO_STORE) ||
		flags & DSI_CTRL_CMD_READ ||
		flags & DSI_CTRL_CMD_NON_EMBEDDED_MODE ||
		msg->wait_ms)
		msg->wait_ms ||
		(dsi_ctrl->host_config.panel_mode == DSI_OP_VIDEO_MODE))
		flags &= ~DSI_CTRL_CMD_ASYNC_WAIT;

	return flags;
@@ -1323,7 +1326,7 @@ static int dsi_message_tx(struct dsi_ctrl *dsi_ctrl,
		goto error;
	}

	flags = dsi_ctrl_validate_msg_flags(msg, flags);
	flags = dsi_ctrl_validate_msg_flags(dsi_ctrl, msg, flags);

	if (dsi_ctrl->dma_wait_queued)
		dsi_ctrl_flush_cmd_dma_queue(dsi_ctrl);