From bb3fee993c0a59628e40a31fad3fcaf240a735e2 Mon Sep 17 00:00:00 2001 From: Dhaval Patel Date: Tue, 23 Jul 2019 14:51:31 -0700 Subject: [PATCH] disp: msm: update min prefill lines for sde rsc Update minimum prefill lines for command mode displays based on system recommendation for different fps. Video mode display can support prefill lines based on panel porches. Change-Id: I52dc67035fa80668281926ce4d7dd1b292fbc3b7 Signed-off-by: Dhaval Patel --- msm/sde_rsc.c | 15 ++++++++------- 1 file changed, 8 insertions(+), 7 deletions(-) diff --git a/msm/sde_rsc.c b/msm/sde_rsc.c index 0a70621916..9426dbb949 100644 --- a/msm/sde_rsc.c +++ b/msm/sde_rsc.c @@ -59,7 +59,6 @@ #define PRIMARY_VBLANK_WORST_CASE_MS 34 #define DEFAULT_PANEL_MIN_V_PREFILL 35 -#define DEFAULT_PANEL_MAX_V_PREFILL 108 static struct sde_rsc_priv *rsc_prv_list[MAX_RSC_COUNT]; static struct device *rpmh_dev[MAX_RSC_COUNT]; @@ -294,6 +293,7 @@ static u32 sde_rsc_timer_calculate(struct sde_rsc_priv *rsc, u64 pdc_backoff_time_ns; s64 total; int ret = 0; + u32 default_prefill_lines; if (cmd_config) memcpy(&rsc->cmd_config, cmd_config, sizeof(*cmd_config)); @@ -307,12 +307,13 @@ static u32 sde_rsc_timer_calculate(struct sde_rsc_priv *rsc, rsc->cmd_config.jitter_denom = DEFAULT_PANEL_JITTER_DENOMINATOR; if (!rsc->cmd_config.vtotal) rsc->cmd_config.vtotal = DEFAULT_PANEL_VTOTAL; - if (!rsc->cmd_config.prefill_lines) - rsc->cmd_config.prefill_lines = DEFAULT_PANEL_PREFILL_LINES; - if (rsc->cmd_config.prefill_lines > DEFAULT_PANEL_MAX_V_PREFILL) - rsc->cmd_config.prefill_lines = DEFAULT_PANEL_MAX_V_PREFILL; - if (rsc->cmd_config.prefill_lines < DEFAULT_PANEL_MIN_V_PREFILL) - rsc->cmd_config.prefill_lines = DEFAULT_PANEL_MIN_V_PREFILL; + + default_prefill_lines = (rsc->cmd_config.fps * + DEFAULT_PANEL_MIN_V_PREFILL) / DEFAULT_PANEL_FPS; + if ((state == SDE_RSC_CMD_STATE) || + (rsc->cmd_config.prefill_lines < default_prefill_lines)) + rsc->cmd_config.prefill_lines = default_prefill_lines; + pr_debug("frame fps:%d jitter_numer:%d jitter_denom:%d vtotal:%d prefill lines:%d\n", rsc->cmd_config.fps, rsc->cmd_config.jitter_numer, rsc->cmd_config.jitter_denom, rsc->cmd_config.vtotal,