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

Commit 15db8521 authored by Linux Build Service Account's avatar Linux Build Service Account Committed by Gerrit - the friendly Code Review server
Browse files

Merge "msm: mdss: avoid DSI FIFO errors during dynamic refresh operation"

parents ca7f9efe 519ff205
Loading
Loading
Loading
Loading
+14 −2
Original line number Diff line number Diff line
@@ -2878,7 +2878,7 @@ bool mdss_dsi_dln0_phy_err(struct mdss_dsi_ctrl_pdata *ctrl, bool print_en)

static bool mdss_dsi_fifo_status(struct mdss_dsi_ctrl_pdata *ctrl)
{
	u32 status;
	u32 status, isr;
	unsigned char *base;
	bool ret = false;

@@ -2889,7 +2889,19 @@ static bool mdss_dsi_fifo_status(struct mdss_dsi_ctrl_pdata *ctrl)
	/* fifo underflow, overflow and empty*/
	if (status & 0xcccc4409) {
		MIPI_OUTP(base + 0x000c, status);

		/*
		 * When dynamic refresh operation is under progress, it is
		 * expected to have FIFO underflow error sometimes. In such
		 * cases, do not trigger the underflow recovery process and
		 * avoid printing the error status on console.
		 */
		isr = MIPI_INP(ctrl->ctrl_base + 0x0110);
		if (isr & DSI_INTR_DYNAMIC_REFRESH_MASK)
			status &= ~(0x88880000);
		else
			pr_err("%s: status=%x\n", __func__, status);

		if (status & 0x44440000) {/* DLNx_HS_FIFO_OVERFLOW */
			dsi_send_events(ctrl, DSI_EV_DLNx_FIFO_OVERFLOW, 0);
			/* Ignore FIFO EMPTY when overflow happens */