Selaa lähdekoodia

disp: msm: dsi: Send Qsync commands asynchronously to avoid frame drops

Qsync ON/OFF commands have to be sent to the panel before connector
kickoff and sending them in the commit thread blocks it for few
millliseconds, and can lead to frame drops. Avoid this by sending
them asyncronously.

Change-Id: Ia7bc694871faf02b7c1a068b3d0ee7056c272506
Signed-off-by: Ayushi Makhija <[email protected]>
Ayushi Makhija 2 vuotta sitten
vanhempi
sitoutus
5ba1ca1738
1 muutettua tiedostoa jossa 2 lisäystä ja 0 poistoa
  1. 2 0
      msm/dsi/dsi_display.c

+ 2 - 0
msm/dsi/dsi_display.c

@@ -8413,6 +8413,7 @@ static int dsi_display_qsync(struct dsi_display *display, bool enable)
 	int rc = 0;
 
 	mutex_lock(&display->display_lock);
+	display->queue_cmd_waits = true;
 
 	display_for_each_ctrl(i, display) {
 		if (enable) {
@@ -8435,6 +8436,7 @@ static int dsi_display_qsync(struct dsi_display *display, bool enable)
 	}
 
 exit:
+	display->queue_cmd_waits = false;
 	SDE_EVT32(enable, display->panel->qsync_caps.qsync_min_fps, rc);
 	mutex_unlock(&display->display_lock);
 	return rc;