[Freedreno] [PATCH 7/7] drm/msm/mdp5: provide dynamic bandwidth management

kernel test robot lkp at intel.com
Tue May 25 17:15:22 UTC 2021


Hi Dmitry,

Thank you for the patch! Perhaps something to improve:

[auto build test WARNING on linus/master]
[also build test WARNING on v5.13-rc3 next-20210525]
[If your patch is applied to the wrong git tree, kindly drop us a note.
And when submitting patch, we suggest to use '--base' as documented in
https://git-scm.com/docs/git-format-patch]

url:    https://github.com/0day-ci/linux/commits/Dmitry-Baryshkov/drm-msm-mdp5-add-properties-and-bandwidth-management/20210525-211559
base:   https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git a050a6d2b7e80ca52b2f4141eaf3420d201b72b3
config: arm-defconfig (attached as .config)
compiler: arm-linux-gnueabi-gcc (GCC) 9.3.0
reproduce (this is a W=1 build):
        wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
        chmod +x ~/bin/make.cross
        # https://github.com/0day-ci/linux/commit/1077a27642ba4bcb15951c29bffdd94bfc378dbe
        git remote add linux-review https://github.com/0day-ci/linux
        git fetch --no-tags linux-review Dmitry-Baryshkov/drm-msm-mdp5-add-properties-and-bandwidth-management/20210525-211559
        git checkout 1077a27642ba4bcb15951c29bffdd94bfc378dbe
        # save the attached .config to linux build tree
        COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-9.3.0 make.cross ARCH=arm 

If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp at intel.com>

All warnings (new ones prefixed by >>):

   drivers/gpu/drm/msm/disp/mdp5/mdp5_plane.c: In function 'mdp5_plane_calc_bw':
>> drivers/gpu/drm/msm/disp/mdp5/mdp5_plane.c:169:16: warning: variable 'vfp' set but not used [-Wunused-but-set-variable]
     169 |  int vbp, vpw, vfp;
         |                ^~~


vim +/vfp +169 drivers/gpu/drm/msm/disp/mdp5/mdp5_plane.c

   156	
   157	/* based on _dpu_plane_calc_bw */
   158	static void mdp5_plane_calc_bw(struct drm_plane_state *state, struct drm_crtc_state *crtc_state)
   159	{
   160		struct drm_framebuffer *fb = state->fb;
   161		struct mdp5_plane_state *pstate = to_mdp5_plane_state(state);
   162		struct drm_display_mode *mode = &crtc_state->mode;
   163		int bpp;
   164		int src_width, src_height, dst_height, fps;
   165		u64 plane_bw;
   166		u32 hw_latency_lines;
   167		u32 prefill_div;
   168		u64 scale_factor;
 > 169		int vbp, vpw, vfp;
   170	
   171		src_width = drm_rect_width(&state->src) >> 16;
   172		src_height = drm_rect_height(&state->src) >> 16;
   173		dst_height = drm_rect_height(&state->dst);
   174		fps = drm_mode_vrefresh(mode);
   175		vbp = mode->vtotal - mode->vsync_end;
   176		vpw = mode->vsync_end - mode->vsync_start;
   177		vfp = mode->vsync_start - mode->vdisplay;
   178		scale_factor = src_height > dst_height ?
   179			mult_frac(src_height, 1, dst_height) : 1;
   180	
   181		bpp = to_mdp_format(msm_framebuffer_format(fb))->cpp;
   182	
   183		plane_bw = src_width * mode->vtotal * fps * bpp * scale_factor;
   184	
   185		hw_latency_lines = 21; /* or 24? */
   186		prefill_div = hw_latency_lines;
   187		if (vbp + vpw > hw_latency_lines)
   188			prefill_div = vbp + vpw;
   189	#if 0
   190		else if (vbp + vpw + vfp < hw_latency_lines)
   191			prefill_div = vbp + vpw + vfp;
   192	#endif
   193	
   194		pstate->plane_bw = max(plane_bw, mult_frac(plane_bw, hw_latency_lines, prefill_div));
   195	}
   196	

---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
-------------- next part --------------
A non-text attachment was scrubbed...
Name: .config.gz
Type: application/gzip
Size: 54736 bytes
Desc: not available
URL: <https://lists.freedesktop.org/archives/freedreno/attachments/20210526/6e3c7ac5/attachment-0001.gz>


More information about the Freedreno mailing list