disp: msm: remove use of drm_display_mode vrefresh

Use of drm_display_mode vrefresh is being deprecated in
upstream DRM framework. Downstream driver need to use
drm_mode_vrefresh API from now on.

This change removes dependency on drm_display_mode vrefresh
and replaces it with drm_mode_vrefresh API in SDE, DSI and
DP driver. In addition, it also modifies drm_display_mode clock
to align with upstream approach where an uncompressed mode clock
is required to match drm_mode_vrefresh API.

Change-Id: Ie972a2e140adfd81c4e68df8e7bc69feaaca22e1
Signed-off-by: Nilaan Gunabalachandran <ngunabal@codeaurora.org>
Signed-off-by: Amine Najahi <anajahi@codeaurora.org>
This commit is contained in:
Amine Najahi
2021-01-12 17:50:03 -05:00
parent ab3f86f918
commit 08358fd857
13 changed files with 54 additions and 50 deletions

View File

@@ -92,7 +92,7 @@ static void drm_mode_to_intf_timing_params(
timing->underflow_clr = 0xff;
timing->hsync_skew = mode->hskew;
timing->v_front_porch_fixed = vid_enc->base.vfp_cached;
timing->vrefresh = mode->vrefresh;
timing->vrefresh = drm_mode_vrefresh(mode);
if (vid_enc->base.comp_type != MSM_DISPLAY_COMPRESSION_NONE) {
timing->compression_en = true;
@@ -328,13 +328,11 @@ static void _sde_encoder_phys_vid_setup_avr(
struct sde_encoder_phys *phys_enc, u32 qsync_min_fps)
{
struct sde_encoder_phys_vid *vid_enc;
struct drm_display_mode mode;
vid_enc = to_sde_encoder_phys_vid(phys_enc);
mode = phys_enc->cached_mode;
if (vid_enc->base.hw_intf->ops.avr_setup) {
struct intf_avr_params avr_params = {0};
u32 default_fps = mode.vrefresh;
u32 default_fps = drm_mode_vrefresh(&phys_enc->cached_mode);
int ret;
if (!default_fps) {
@@ -473,7 +471,8 @@ static void sde_encoder_phys_vid_setup_timing_engine(
exit:
if (phys_enc->parent_ops.get_qsync_fps)
phys_enc->parent_ops.get_qsync_fps(
phys_enc->parent, &qsync_min_fps, mode.vrefresh);
phys_enc->parent, &qsync_min_fps,
drm_mode_vrefresh(&phys_enc->cached_mode));
/* only panels which support qsync will have a non-zero min fps */
if (qsync_min_fps) {