[Intel-gfx] [PATCH 06/14] drm/i915: Use REG_BIT() & co. for universal plane bits

kernel test robot lkp at intel.com
Mon Dec 6 15:57:20 UTC 2021


Hi Ville,

Thank you for the patch! Yet something to improve:

[auto build test ERROR on drm-intel/for-linux-next]
[cannot apply to drm-tip/drm-tip v5.16-rc4 next-20211206]
[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/Ville-Syrjala/drm-i915-Plane-register-cleanup/20211202-010520
base:   git://anongit.freedesktop.org/drm-intel for-linux-next
config: x86_64-randconfig-a012-20211130 (https://download.01.org/0day-ci/archive/20211206/202112062346.Pub0KCZK-lkp@intel.com/config)
compiler: clang version 14.0.0 (https://github.com/llvm/llvm-project 4b553297ef3ee4dc2119d5429adf3072e90fac38)
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/50180d495a061c64528e2348a684037f5dc26e2e
        git remote add linux-review https://github.com/0day-ci/linux
        git fetch --no-tags linux-review Ville-Syrjala/drm-i915-Plane-register-cleanup/20211202-010520
        git checkout 50180d495a061c64528e2348a684037f5dc26e2e
        # save the config file to linux build tree
        mkdir build_dir
        COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross W=1 O=build_dir ARCH=x86_64 SHELL=/bin/bash drivers/gpu/

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

All errors (new ones prefixed by >>):

>> drivers/gpu/drm/i915/gvt/fb_decoder.c:221:10: error: use of undeclared identifier 'PLANE_CTL_FORMAT_MASK'
                           val & PLANE_CTL_FORMAT_MASK,
                                 ^
   drivers/gpu/drm/i915/gvt/fb_decoder.c:430:21: error: use of undeclared identifier 'SPRITE_YUV_BYTE_ORDER_MASK'
           yuv_order = (val & SPRITE_YUV_BYTE_ORDER_MASK) >>
                              ^
   2 errors generated.


vim +/PLANE_CTL_FORMAT_MASK +221 drivers/gpu/drm/i915/gvt/fb_decoder.c

9f31d1063b434c Tina Zhang          2017-11-23  192  
9f31d1063b434c Tina Zhang          2017-11-23  193  /**
9f31d1063b434c Tina Zhang          2017-11-23  194   * intel_vgpu_decode_primary_plane - Decode primary plane
9f31d1063b434c Tina Zhang          2017-11-23  195   * @vgpu: input vgpu
9f31d1063b434c Tina Zhang          2017-11-23  196   * @plane: primary plane to save decoded info
9f31d1063b434c Tina Zhang          2017-11-23  197   * This function is called for decoding plane
9f31d1063b434c Tina Zhang          2017-11-23  198   *
9f31d1063b434c Tina Zhang          2017-11-23  199   * Returns:
9f31d1063b434c Tina Zhang          2017-11-23  200   * 0 on success, non-zero if failed.
9f31d1063b434c Tina Zhang          2017-11-23  201   */
9f31d1063b434c Tina Zhang          2017-11-23  202  int intel_vgpu_decode_primary_plane(struct intel_vgpu *vgpu,
9f31d1063b434c Tina Zhang          2017-11-23  203  	struct intel_vgpu_primary_plane_format *plane)
9f31d1063b434c Tina Zhang          2017-11-23  204  {
a61ac1e75105a0 Chris Wilson        2020-03-06  205  	struct drm_i915_private *dev_priv = vgpu->gvt->gt->i915;
9f31d1063b434c Tina Zhang          2017-11-23  206  	u32 val, fmt;
9f31d1063b434c Tina Zhang          2017-11-23  207  	int pipe;
9f31d1063b434c Tina Zhang          2017-11-23  208  
9f31d1063b434c Tina Zhang          2017-11-23  209  	pipe = get_active_pipe(vgpu);
9f31d1063b434c Tina Zhang          2017-11-23  210  	if (pipe >= I915_MAX_PIPES)
9f31d1063b434c Tina Zhang          2017-11-23  211  		return -ENODEV;
9f31d1063b434c Tina Zhang          2017-11-23  212  
90551a1296d4db Zhenyu Wang         2017-12-19  213  	val = vgpu_vreg_t(vgpu, DSPCNTR(pipe));
9f31d1063b434c Tina Zhang          2017-11-23  214  	plane->enabled = !!(val & DISPLAY_PLANE_ENABLE);
9f31d1063b434c Tina Zhang          2017-11-23  215  	if (!plane->enabled)
9f31d1063b434c Tina Zhang          2017-11-23  216  		return -ENODEV;
9f31d1063b434c Tina Zhang          2017-11-23  217  
d8d123128c4872 Lucas De Marchi     2021-06-03  218  	if (GRAPHICS_VER(dev_priv) >= 9) {
b244ffa15c8b1a Zhenyu Wang         2018-08-30  219  		plane->tiled = val & PLANE_CTL_TILED_MASK;
9f31d1063b434c Tina Zhang          2017-11-23  220  		fmt = skl_format_to_drm(
9f31d1063b434c Tina Zhang          2017-11-23 @221  			val & PLANE_CTL_FORMAT_MASK,
9f31d1063b434c Tina Zhang          2017-11-23  222  			val & PLANE_CTL_ORDER_RGBX,
9f31d1063b434c Tina Zhang          2017-11-23  223  			val & PLANE_CTL_ALPHA_MASK,
9f31d1063b434c Tina Zhang          2017-11-23  224  			val & PLANE_CTL_YUV422_ORDER_MASK);
461bd6227ede27 Gustavo A. R. Silva 2017-12-09  225  
461bd6227ede27 Gustavo A. R. Silva 2017-12-09  226  		if (fmt >= ARRAY_SIZE(skl_pixel_formats)) {
461bd6227ede27 Gustavo A. R. Silva 2017-12-09  227  			gvt_vgpu_err("Out-of-bounds pixel format index\n");
461bd6227ede27 Gustavo A. R. Silva 2017-12-09  228  			return -EINVAL;
461bd6227ede27 Gustavo A. R. Silva 2017-12-09  229  		}
461bd6227ede27 Gustavo A. R. Silva 2017-12-09  230  
9f31d1063b434c Tina Zhang          2017-11-23  231  		plane->bpp = skl_pixel_formats[fmt].bpp;
9f31d1063b434c Tina Zhang          2017-11-23  232  		plane->drm_format = skl_pixel_formats[fmt].drm_format;
9f31d1063b434c Tina Zhang          2017-11-23  233  	} else {
a40fa231bb64b3 Tina Zhang          2018-12-03  234  		plane->tiled = val & DISPPLANE_TILED;
9f31d1063b434c Tina Zhang          2017-11-23  235  		fmt = bdw_format_to_drm(val & DISPPLANE_PIXFORMAT_MASK);
9f31d1063b434c Tina Zhang          2017-11-23  236  		plane->bpp = bdw_pixel_formats[fmt].bpp;
9f31d1063b434c Tina Zhang          2017-11-23  237  		plane->drm_format = bdw_pixel_formats[fmt].drm_format;
9f31d1063b434c Tina Zhang          2017-11-23  238  	}
9f31d1063b434c Tina Zhang          2017-11-23  239  
9f31d1063b434c Tina Zhang          2017-11-23  240  	if (!plane->bpp) {
9f31d1063b434c Tina Zhang          2017-11-23  241  		gvt_vgpu_err("Non-supported pixel format (0x%x)\n", fmt);
9f31d1063b434c Tina Zhang          2017-11-23  242  		return -EINVAL;
9f31d1063b434c Tina Zhang          2017-11-23  243  	}
9f31d1063b434c Tina Zhang          2017-11-23  244  
9f31d1063b434c Tina Zhang          2017-11-23  245  	plane->hw_format = fmt;
9f31d1063b434c Tina Zhang          2017-11-23  246  
90551a1296d4db Zhenyu Wang         2017-12-19  247  	plane->base = vgpu_vreg_t(vgpu, DSPSURF(pipe)) & I915_GTT_PAGE_MASK;
c25144098bee19 Xiong Zhang         2019-05-27  248  	if (!vgpu_gmadr_is_valid(vgpu, plane->base))
9f31d1063b434c Tina Zhang          2017-11-23  249  		return  -EINVAL;
9f31d1063b434c Tina Zhang          2017-11-23  250  
9f31d1063b434c Tina Zhang          2017-11-23  251  	plane->base_gpa = intel_vgpu_gma_to_gpa(vgpu->gtt.ggtt_mm, plane->base);
9f31d1063b434c Tina Zhang          2017-11-23  252  	if (plane->base_gpa == INTEL_GVT_INVALID_ADDR) {
a733390f9a7987 Xiong Zhang         2018-03-28  253  		gvt_vgpu_err("Translate primary plane gma 0x%x to gpa fail\n",
a733390f9a7987 Xiong Zhang         2018-03-28  254  				plane->base);
9f31d1063b434c Tina Zhang          2017-11-23  255  		return  -EINVAL;
9f31d1063b434c Tina Zhang          2017-11-23  256  	}
9f31d1063b434c Tina Zhang          2017-11-23  257  
b244ffa15c8b1a Zhenyu Wang         2018-08-30  258  	plane->stride = intel_vgpu_get_stride(vgpu, pipe, plane->tiled,
d8d123128c4872 Lucas De Marchi     2021-06-03  259  		(GRAPHICS_VER(dev_priv) >= 9) ?
4a136d590bd4c5 Tina Zhang          2017-11-28  260  		(_PRI_PLANE_STRIDE_MASK >> 6) :
9f31d1063b434c Tina Zhang          2017-11-23  261  		_PRI_PLANE_STRIDE_MASK, plane->bpp);
9f31d1063b434c Tina Zhang          2017-11-23  262  
90551a1296d4db Zhenyu Wang         2017-12-19  263  	plane->width = (vgpu_vreg_t(vgpu, PIPESRC(pipe)) & _PIPE_H_SRCSZ_MASK) >>
9f31d1063b434c Tina Zhang          2017-11-23  264  		_PIPE_H_SRCSZ_SHIFT;
9f31d1063b434c Tina Zhang          2017-11-23  265  	plane->width += 1;
90551a1296d4db Zhenyu Wang         2017-12-19  266  	plane->height = (vgpu_vreg_t(vgpu, PIPESRC(pipe)) &
9f31d1063b434c Tina Zhang          2017-11-23  267  			_PIPE_V_SRCSZ_MASK) >> _PIPE_V_SRCSZ_SHIFT;
9f31d1063b434c Tina Zhang          2017-11-23  268  	plane->height += 1;	/* raw height is one minus the real value */
9f31d1063b434c Tina Zhang          2017-11-23  269  
90551a1296d4db Zhenyu Wang         2017-12-19  270  	val = vgpu_vreg_t(vgpu, DSPTILEOFF(pipe));
9f31d1063b434c Tina Zhang          2017-11-23  271  	plane->x_offset = (val & _PRI_PLANE_X_OFF_MASK) >>
9f31d1063b434c Tina Zhang          2017-11-23  272  		_PRI_PLANE_X_OFF_SHIFT;
9f31d1063b434c Tina Zhang          2017-11-23  273  	plane->y_offset = (val & _PRI_PLANE_Y_OFF_MASK) >>
9f31d1063b434c Tina Zhang          2017-11-23  274  		_PRI_PLANE_Y_OFF_SHIFT;
9f31d1063b434c Tina Zhang          2017-11-23  275  
9f31d1063b434c Tina Zhang          2017-11-23  276  	return 0;
9f31d1063b434c Tina Zhang          2017-11-23  277  }
9f31d1063b434c Tina Zhang          2017-11-23  278  

---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org


More information about the Intel-gfx mailing list