drm/msm/dpu: update bandwidth threshold check
PATCH 1/1 drm/msm/dpu: update bandwidth threshold check
Maximum allowed bandwidth has no dependency on the type of panel used. Hence, cleanup the code to use max_bw_high as the threshold value for bandwidth checks.
Update the maximum allowed bandwidth as 6.8Gbps for SC7180 target.
Signed-off-by Krishna Manikandan <[email protected]>
--- drivers/gpu/drm/msm/disp/dpu1/dpu_core_perf.c | 23 +---------------------- drivers/gpu/drm/msm/disp/dpu1/dpu_hw_catalog.c | 4 ++-- 2 files changed, 3 insertions(+), 24 deletions(-)
drivers/gpu/drm/msm/disp/dpu1/dpu_core_perf.c +1 -22
@@ -36,22 +36,6 @@ static struct dpu_kms *_dpu_crtc_get_kms(struct drm_crtc *crtc)return to_dpu_kms (priv->kms); } -static bool _dpu_core_video_mode_intf_connected (struct drm_crtc *crtc) -{ -struct drm_crtc *tmp_crtc; - -drm_for_each_crtc (tmp_crtc, crtc->dev) { -if ((dpu_crtc_get_intf_mode (tmp_crtc) ==INTF_MODE_VIDEO ) && - tmp_crtc->enabled) { -DPU_DEBUG ("video interface connected crtc:%d\n" , - tmp_crtc->base.id); -return true; - } - } - -return false; -} - static void _dpu_core_perf_calc_crtc(struct dpu_kms *kms, struct drm_crtc *crtc, struct drm_crtc_state *state,
@@ -94,7 +78,6 @@ int dpu_core_perf_crtc_check(struct drm_crtc *crtc,u32 bw, threshold;u64 bw_sum_of_intfs =0 ;enum dpu_crtc_client_type curr_client_type; -bool is_video_mode;struct dpu_crtc_state *dpu_cstate;struct drm_crtc *tmp_crtc;struct dpu_kms *kms;
@@ -144,11 +127,7 @@ int dpu_core_perf_crtc_check(struct drm_crtc *crtc, bw =DIV_ROUND_UP_ULL (bw_sum_of_intfs,1000 );DPU_DEBUG ("calculated bandwidth=%uk\n" , bw); - is_video_mode =dpu_crtc_get_intf_mode (crtc) ==INTF_MODE_VIDEO ; - threshold = (is_video_mode || -_dpu_core_video_mode_intf_connected (crtc)) ? - kms->catalog->perf.max_bw_low : - kms->catalog->perf.max_bw_high; + threshold = kms->catalog->perf.max_bw_high;DPU_DEBUG ("final threshold bw limit = %d\n" , threshold);
drivers/gpu/drm/msm/disp/dpu1/dpu_hw_catalog.c +2 -2
@@ -515,8 +515,8 @@ };static const struct dpu_perf_cfg sc7180_perf_data = { - .max_bw_low =3900000 , - .max_bw_high =5500000 , + .max_bw_low =6800000 , + .max_bw_high =6800000 , .min_core_ib =2400000 , .min_llcc_ib =800000 , .min_dram_ib =800000 ,
Signature · 1 line
1.9.1