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

Commit 2b00ce4c authored by Gopikrishnaiah Anandan's avatar Gopikrishnaiah Anandan
Browse files

mdss: mdp: Update histogram start failure reporting



Userspace clients will enable the histogram and disable it as per the
algorithm requirements. If the process under which the client is
running crashes and restarts states of histogram between client and
driver is not in sync. In case the driver is not in sync with client it
should return EBUSY error to client. Client will stop and start the
histogram to maintain the sync.

Change-Id: I7b3c8d7890d8ca24ecf065e48a9ea5884cc886de
Signed-off-by: default avatarGopikrishnaiah Anandan <agopik@codeaurora.org>
parent a93872da
Loading
Loading
Loading
Loading
+7 −1
Original line number Diff line number Diff line
@@ -3846,8 +3846,9 @@ static int pp_hist_enable(struct pp_hist_col_info *hist_info,
	spin_lock_irqsave(&hist_info->hist_lock, flag);
	if (hist_info->col_en) {
		spin_unlock_irqrestore(&hist_info->hist_lock, flag);
		pr_info("%s Hist collection has already been enabled %p\n",
		pr_err("%s Hist collection has already been enabled %p\n",
			__func__, hist_info->base);
		ret = -EBUSY;
		goto exit;
	}
	hist_info->col_state = HIST_IDLE;
@@ -3968,6 +3969,11 @@ int mdss_mdp_hist_start(struct mdp_histogram_start_req *req)
			hist_info->disp_num = PP_BLOCK(req->block);
			hist_info->ctl = ctl;
			ret = pp_hist_enable(hist_info, req);
			if (ret) {
				pr_err("failed to enable histogram dspp_num %d ret %d\n",
				       dspp_num, ret);
				goto hist_stop_clk;
			}
			mdss_pp_res->pp_disp_flags[disp_num] |=
							PP_FLAGS_DIRTY_HIST_COL;
		}