Kaynağa Gözat

disp: msm: sde: update wr_ptr_success state post wait

Update the wr_ptr_success state to avoid waiting for
two frames pp_done_tx_irq. It ensures frame done callback
is triggered, if IRQ's are disabled for long time by
some external entity.

Change-Id: I9ee72bd65dd7251bf8db0b6843fad02b675935bc
Signed-off-by: Jayaprakash <[email protected]>
Jayaprakash 5 yıl önce
ebeveyn
işleme
97f10bf143
1 değiştirilmiş dosya ile 3 ekleme ve 0 silme
  1. 3 0
      msm/sde/sde_encoder_phys_cmd.c

+ 3 - 0
msm/sde/sde_encoder_phys_cmd.c

@@ -1409,6 +1409,8 @@ static bool _sde_encoder_phys_cmd_needs_vsync_change(
 static int _sde_encoder_phys_cmd_wait_for_wr_ptr(
 		struct sde_encoder_phys *phys_enc)
 {
+	struct sde_encoder_phys_cmd *cmd_enc =
+			to_sde_encoder_phys_cmd(phys_enc);
 	struct sde_encoder_wait_info wait_info = {0};
 	int ret;
 	bool frame_pending = true;
@@ -1439,6 +1441,7 @@ static int _sde_encoder_phys_cmd_wait_for_wr_ptr(
 		ret = frame_pending ? ret : 0;
 	}
 
+	cmd_enc->wr_ptr_wait_success = (ret == 0) ? true : false;
 	return ret;
 }