All of lore.kernel.org
 help / color / mirror / Atom feed
From: kernel test robot <lkp@intel.com>
To: kbuild-all@lists.01.org
Subject: [frank-w-bpi-r2-4.14:5.15-bpi-r2-pro-drm 86/102] drivers/gpu/drm/rockchip/rockchip_drm_vop.c:3431:12: error: conflicting types for 'vop_crtc_atomic_check'
Date: Tue, 26 Oct 2021 02:01:35 +0800	[thread overview]
Message-ID: <202110260228.bFuAWbfc-lkp@intel.com> (raw)

[-- Attachment #1: Type: text/plain, Size: 15459 bytes --]

tree:   https://github.com/frank-w/BPI-R2-4.14 5.15-bpi-r2-pro-drm
head:   3e3effff535b3615ae5a40ae1c1b6d08e12bed0e
commit: 8d1ae5e7a36e4a9c9a38506d3611f7171eb45772 [86/102] add missing includes dt-bindings/soc/rockchip-system-status.h and soc/rockchip/rockchip-system-status.h
config: i386-randconfig-a001-20211016 (attached as .config)
compiler: gcc-9 (Debian 9.3.0-22) 9.3.0
reproduce (this is a W=1 build):
        # https://github.com/frank-w/BPI-R2-4.14/commit/8d1ae5e7a36e4a9c9a38506d3611f7171eb45772
        git remote add frank-w-bpi-r2-4.14 https://github.com/frank-w/BPI-R2-4.14
        git fetch --no-tags frank-w-bpi-r2-4.14 5.15-bpi-r2-pro-drm
        git checkout 8d1ae5e7a36e4a9c9a38506d3611f7171eb45772
        # save the attached .config to linux build tree
        mkdir build_dir
        make W=1 O=build_dir ARCH=i386 SHELL=/bin/bash drivers/gpu/drm/rockchip/

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

Note: the frank-w-bpi-r2-4.14/5.15-bpi-r2-pro-drm HEAD 3e3effff535b3615ae5a40ae1c1b6d08e12bed0e builds fine.
      It only hurts bisectability.

All errors (new ones prefixed by >>):

     100 |   REG_SET(x, name, win->offset, VOP_WIN_NAME(win, name), v, true)
         |                                 ^~~~~~~~~~~~
   drivers/gpu/drm/rockchip/rockchip_drm_vop.c:1932:2: note: in expansion of macro 'VOP_WIN_SET'
    1932 |  VOP_WIN_SET(vop, win, gate, 1);
         |  ^~~~~~~~~~~
   drivers/gpu/drm/rockchip/rockchip_drm_vop.c:386:33: note: expected 'struct vop_win *' but argument is of type 'const struct vop_win_data *'
     386 | vop_get_win_phy(struct vop_win *win, const struct vop_reg *reg)
         |                 ~~~~~~~~~~~~~~~~^~~
   drivers/gpu/drm/rockchip/rockchip_drm_vop.c:1932:19: error: passing argument 1 of 'vop_get_win_phy' from incompatible pointer type [-Werror=incompatible-pointer-types]
    1932 |  VOP_WIN_SET(vop, win, gate, 1);
         |                   ^~~
         |                   |
         |                   const struct vop_win_data *
   drivers/gpu/drm/rockchip/rockchip_drm_vop.c:83:32: note: in definition of macro '__REG_SET'
      83 |   vop_mask_write(x, off, mask, shift, v, write_mask, relaxed)
         |                                ^~~~~
   drivers/gpu/drm/rockchip/rockchip_drm_vop.c:95:3: note: in expansion of macro '_REG_SET'
      95 |   _REG_SET(x, name, off, reg, reg.mask, v, relaxed)
         |   ^~~~~~~~
   drivers/gpu/drm/rockchip/rockchip_drm_vop.c:100:3: note: in expansion of macro 'REG_SET'
     100 |   REG_SET(x, name, win->offset, VOP_WIN_NAME(win, name), v, true)
         |   ^~~~~~~
   drivers/gpu/drm/rockchip/rockchip_drm_vop.c:100:33: note: in expansion of macro 'VOP_WIN_NAME'
     100 |   REG_SET(x, name, win->offset, VOP_WIN_NAME(win, name), v, true)
         |                                 ^~~~~~~~~~~~
   drivers/gpu/drm/rockchip/rockchip_drm_vop.c:1932:2: note: in expansion of macro 'VOP_WIN_SET'
    1932 |  VOP_WIN_SET(vop, win, gate, 1);
         |  ^~~~~~~~~~~
   drivers/gpu/drm/rockchip/rockchip_drm_vop.c:386:33: note: expected 'struct vop_win *' but argument is of type 'const struct vop_win_data *'
     386 | vop_get_win_phy(struct vop_win *win, const struct vop_reg *reg)
         |                 ~~~~~~~~~~~~~~~~^~~
   drivers/gpu/drm/rockchip/rockchip_drm_vop.c:1932:19: error: passing argument 1 of 'vop_get_win_phy' from incompatible pointer type [-Werror=incompatible-pointer-types]
    1932 |  VOP_WIN_SET(vop, win, gate, 1);
         |                   ^~~
         |                   |
         |                   const struct vop_win_data *
   drivers/gpu/drm/rockchip/rockchip_drm_vop.c:83:42: note: in definition of macro '__REG_SET'
      83 |   vop_mask_write(x, off, mask, shift, v, write_mask, relaxed)
         |                                          ^~~~~~~~~~
   drivers/gpu/drm/rockchip/rockchip_drm_vop.c:95:3: note: in expansion of macro '_REG_SET'
      95 |   _REG_SET(x, name, off, reg, reg.mask, v, relaxed)
         |   ^~~~~~~~
   drivers/gpu/drm/rockchip/rockchip_drm_vop.c:100:3: note: in expansion of macro 'REG_SET'
     100 |   REG_SET(x, name, win->offset, VOP_WIN_NAME(win, name), v, true)
         |   ^~~~~~~
   drivers/gpu/drm/rockchip/rockchip_drm_vop.c:100:33: note: in expansion of macro 'VOP_WIN_NAME'
     100 |   REG_SET(x, name, win->offset, VOP_WIN_NAME(win, name), v, true)
         |                                 ^~~~~~~~~~~~
   drivers/gpu/drm/rockchip/rockchip_drm_vop.c:1932:2: note: in expansion of macro 'VOP_WIN_SET'
    1932 |  VOP_WIN_SET(vop, win, gate, 1);
         |  ^~~~~~~~~~~
   drivers/gpu/drm/rockchip/rockchip_drm_vop.c:386:33: note: expected 'struct vop_win *' but argument is of type 'const struct vop_win_data *'
     386 | vop_get_win_phy(struct vop_win *win, const struct vop_reg *reg)
         |                 ~~~~~~~~~~~~~~~~^~~
   drivers/gpu/drm/rockchip/rockchip_drm_vop.c:1770:39: warning: unused variable 'rk_uv_obj' [-Wunused-variable]
    1770 |  struct rockchip_gem_object *rk_obj, *rk_uv_obj;
         |                                       ^~~~~~~~~
   drivers/gpu/drm/rockchip/rockchip_drm_vop.c:1769:31: warning: unused variable 'uv_obj' [-Wunused-variable]
    1769 |  struct drm_gem_object *obj, *uv_obj;
         |                               ^~~~~~
   drivers/gpu/drm/rockchip/rockchip_drm_vop.c:1769:25: warning: unused variable 'obj' [-Wunused-variable]
    1769 |  struct drm_gem_object *obj, *uv_obj;
         |                         ^~~
   drivers/gpu/drm/rockchip/rockchip_drm_vop.c: In function 'vop_plane_atomic_async_check':
   drivers/gpu/drm/rockchip/rockchip_drm_vop.c:1976:42: error: 'struct vop_win' has no member named 'data'
    1976 |  const struct vop_win_data *win = vop_win->data;
         |                                          ^~
   drivers/gpu/drm/rockchip/rockchip_drm_vop.c: In function 'vop_atomic_plane_duplicate_state':
   drivers/gpu/drm/rockchip/rockchip_drm_vop.c:2050:6: error: 'state' undeclared (first use in this function); did you mean 'statx'?
    2050 |  if (state)
         |      ^~~~~
         |      statx
   drivers/gpu/drm/rockchip/rockchip_drm_vop.c:2051:3: error: 'crtc_state' undeclared (first use in this function); did you mean 'ctx_state'?
    2051 |   crtc_state = drm_atomic_get_existing_crtc_state(state,
         |   ^~~~~~~~~~
         |   ctx_state
   drivers/gpu/drm/rockchip/rockchip_drm_vop.c:2052:9: error: 'new_plane_state' undeclared (first use in this function); did you mean 'vop_plane_state'?
    2052 |         new_plane_state->crtc);
         |         ^~~~~~~~~~~~~~~
         |         vop_plane_state
   drivers/gpu/drm/rockchip/rockchip_drm_vop.c: In function 'vop_plane_atomic_async_update':
   drivers/gpu/drm/rockchip/rockchip_drm_vop.c:2068:26: warning: unused variable 'old_fb' [-Wunused-variable]
    2068 |  struct drm_framebuffer *old_fb = plane->state->fb;
         |                          ^~~~~~
   drivers/gpu/drm/rockchip/rockchip_drm_vop.c:2065:26: warning: unused variable 'new_state' [-Wunused-variable]
    2065 |  struct drm_plane_state *new_state = drm_atomic_get_new_plane_state(state,
         |                          ^~~~~~~~~
   drivers/gpu/drm/rockchip/rockchip_drm_vop.c: At top level:
   drivers/gpu/drm/rockchip/rockchip_drm_vop.c:2131:44: error: redefinition of 'plane_helper_funcs'
    2131 | static const struct drm_plane_helper_funcs plane_helper_funcs = {
         |                                            ^~~~~~~~~~~~~~~~~~
   drivers/gpu/drm/rockchip/rockchip_drm_vop.c:2003:44: note: previous definition of 'plane_helper_funcs' was here
    2003 | static const struct drm_plane_helper_funcs plane_helper_funcs = {
         |                                            ^~~~~~~~~~~~~~~~~~
   drivers/gpu/drm/rockchip/rockchip_drm_vop.c: In function 'vop_crtc_atomic_begin':
   drivers/gpu/drm/rockchip/rockchip_drm_vop.c:2370:3: error: implicit declaration of function 'vop_crtc_gamma_set'; did you mean 'vop_crtc_atomic_gamma_set'? [-Werror=implicit-function-declaration]
    2370 |   vop_crtc_gamma_set(vop, crtc, old_crtc_state);
         |   ^~~~~~~~~~~~~~~~~~
         |   vop_crtc_atomic_gamma_set
   drivers/gpu/drm/rockchip/rockchip_drm_vop.c: At top level:
>> drivers/gpu/drm/rockchip/rockchip_drm_vop.c:3431:12: error: conflicting types for 'vop_crtc_atomic_check'
    3431 | static int vop_crtc_atomic_check(struct drm_crtc *crtc,
         |            ^~~~~~~~~~~~~~~~~~~~~
   drivers/gpu/drm/rockchip/rockchip_drm_vop.c:3066:12: note: previous definition of 'vop_crtc_atomic_check' was here
    3066 | static int vop_crtc_atomic_check(struct drm_crtc *crtc,
         |            ^~~~~~~~~~~~~~~~~~~~~
   drivers/gpu/drm/rockchip/rockchip_drm_vop.c: In function 'vop_crtc_atomic_check':
   drivers/gpu/drm/rockchip/rockchip_drm_vop.c:3473:3: error: 'struct rockchip_crtc_state' has no member named 'enable_afbc'
    3473 |  s->enable_afbc = afbc_planes > 0;
         |   ^~
   drivers/gpu/drm/rockchip/rockchip_drm_vop.c: At top level:
   drivers/gpu/drm/rockchip/rockchip_drm_vop.c:3588:18: error: initialization of 'void (*)(struct drm_crtc *, struct drm_atomic_state *)' from incompatible pointer type 'void (*)(struct drm_crtc *, struct drm_crtc_state *)' [-Werror=incompatible-pointer-types]
    3588 |  .atomic_flush = vop_crtc_atomic_flush,
         |                  ^~~~~~~~~~~~~~~~~~~~~
   drivers/gpu/drm/rockchip/rockchip_drm_vop.c:3588:18: note: (near initialization for 'vop_crtc_helper_funcs.atomic_flush')
   drivers/gpu/drm/rockchip/rockchip_drm_vop.c:3589:19: error: initialization of 'void (*)(struct drm_crtc *, struct drm_atomic_state *)' from incompatible pointer type 'void (*)(struct drm_crtc *, struct drm_crtc_state *)' [-Werror=incompatible-pointer-types]
    3589 |  .atomic_enable = vop_crtc_atomic_enable,
         |                   ^~~~~~~~~~~~~~~~~~~~~~
   drivers/gpu/drm/rockchip/rockchip_drm_vop.c:3589:19: note: (near initialization for 'vop_crtc_helper_funcs.atomic_enable')
   drivers/gpu/drm/rockchip/rockchip_drm_vop.c:3066:12: warning: 'vop_crtc_atomic_check' defined but not used [-Wunused-function]
    3066 | static int vop_crtc_atomic_check(struct drm_crtc *crtc,
         |            ^~~~~~~~~~~~~~~~~~~~~
   drivers/gpu/drm/rockchip/rockchip_drm_vop.c:2355:13: warning: 'vop_crtc_atomic_begin' defined but not used [-Wunused-function]
    2355 | static void vop_crtc_atomic_begin(struct drm_crtc *crtc,
         |             ^~~~~~~~~~~~~~~~~~~~~
   drivers/gpu/drm/rockchip/rockchip_drm_vop.c:2003:44: warning: 'plane_helper_funcs' defined but not used [-Wunused-const-variable=]
    2003 | static const struct drm_plane_helper_funcs plane_helper_funcs = {
         |                                            ^~~~~~~~~~~~~~~~~~
   drivers/gpu/drm/rockchip/rockchip_drm_vop.c:306:46: warning: 'drm_bus_format_enum_list' defined but not used [-Wunused-const-variable=]
     306 | static const struct drm_bus_format_enum_list drm_bus_format_enum_list[] = {
         |                                              ^~~~~~~~~~~~~~~~~~~~~~~~
   cc1: some warnings being treated as errors


vim +/vop_crtc_atomic_check +3431 drivers/gpu/drm/rockchip/rockchip_drm_vop.c

7caecdbec1128a Tomasz Figa      2016-09-14  3430  
b23ab6ac6d768f Ezequiel Garcia  2019-10-10 @3431  static int vop_crtc_atomic_check(struct drm_crtc *crtc,
29b77ad7b9ca8c Maxime Ripard    2020-10-28  3432  				 struct drm_atomic_state *state)
b23ab6ac6d768f Ezequiel Garcia  2019-10-10  3433  {
29b77ad7b9ca8c Maxime Ripard    2020-10-28  3434  	struct drm_crtc_state *crtc_state = drm_atomic_get_new_crtc_state(state,
29b77ad7b9ca8c Maxime Ripard    2020-10-28  3435  									  crtc);
8d83ced61818d2 Frank Wunderlich 2021-10-15  3436  	struct vop *vop = to_vop(crtc);
8d83ced61818d2 Frank Wunderlich 2021-10-15  3437  	struct drm_plane *plane;
8d83ced61818d2 Frank Wunderlich 2021-10-15  3438  	struct drm_plane_state *plane_state;
8d83ced61818d2 Frank Wunderlich 2021-10-15  3439  	struct rockchip_crtc_state *s;
8d83ced61818d2 Frank Wunderlich 2021-10-15  3440  	int afbc_planes = 0;
8d83ced61818d2 Frank Wunderlich 2021-10-15  3441  
8d83ced61818d2 Frank Wunderlich 2021-10-15  3442  	if (vop->lut_regs && crtc_state->color_mgmt_changed &&
8d83ced61818d2 Frank Wunderlich 2021-10-15  3443  		crtc_state->gamma_lut) {
8d83ced61818d2 Frank Wunderlich 2021-10-15  3444  		unsigned int len;
8d83ced61818d2 Frank Wunderlich 2021-10-15  3445  
8d83ced61818d2 Frank Wunderlich 2021-10-15  3446  		len = drm_color_lut_size(crtc_state->gamma_lut);
8d83ced61818d2 Frank Wunderlich 2021-10-15  3447  		if (len != crtc->gamma_size) {
8d83ced61818d2 Frank Wunderlich 2021-10-15  3448  			DRM_DEBUG_KMS("Invalid LUT size; got %d, expected %d\n",
8d83ced61818d2 Frank Wunderlich 2021-10-15  3449  			len, crtc->gamma_size);
8d83ced61818d2 Frank Wunderlich 2021-10-15  3450  			return -EINVAL;
8d83ced61818d2 Frank Wunderlich 2021-10-15  3451  		}
8d83ced61818d2 Frank Wunderlich 2021-10-15  3452  	}
8d83ced61818d2 Frank Wunderlich 2021-10-15  3453  
8d83ced61818d2 Frank Wunderlich 2021-10-15  3454  	drm_atomic_crtc_state_for_each_plane(plane, crtc_state) {
8d83ced61818d2 Frank Wunderlich 2021-10-15  3455  		plane_state =
8d83ced61818d2 Frank Wunderlich 2021-10-15  3456  			drm_atomic_get_plane_state(crtc_state->state, plane);
8d83ced61818d2 Frank Wunderlich 2021-10-15  3457  		if (IS_ERR(plane_state)) {
8d83ced61818d2 Frank Wunderlich 2021-10-15  3458  			DRM_DEBUG_KMS("Cannot get plane state for plane %s\n",
8d83ced61818d2 Frank Wunderlich 2021-10-15  3459  			plane->name);
8d83ced61818d2 Frank Wunderlich 2021-10-15  3460  			return PTR_ERR(plane_state);
8d83ced61818d2 Frank Wunderlich 2021-10-15  3461  		}
8d83ced61818d2 Frank Wunderlich 2021-10-15  3462  
8d83ced61818d2 Frank Wunderlich 2021-10-15  3463  		if (drm_is_afbc(plane_state->fb->modifier))
8d83ced61818d2 Frank Wunderlich 2021-10-15  3464  			++afbc_planes;
8d83ced61818d2 Frank Wunderlich 2021-10-15  3465  	}
8d83ced61818d2 Frank Wunderlich 2021-10-15  3466  
8d83ced61818d2 Frank Wunderlich 2021-10-15  3467  	if (afbc_planes > 1) {
8d83ced61818d2 Frank Wunderlich 2021-10-15  3468  		DRM_DEBUG_KMS("Invalid number of AFBC planes; got %d, expected at most 1\n", afbc_planes);
8d83ced61818d2 Frank Wunderlich 2021-10-15  3469  		return -EINVAL;
8d83ced61818d2 Frank Wunderlich 2021-10-15  3470  	}
8d83ced61818d2 Frank Wunderlich 2021-10-15  3471  
8d83ced61818d2 Frank Wunderlich 2021-10-15  3472  	s = to_rockchip_crtc_state(crtc_state);
8d83ced61818d2 Frank Wunderlich 2021-10-15  3473  	s->enable_afbc = afbc_planes > 0;
8d83ced61818d2 Frank Wunderlich 2021-10-15  3474  
8d83ced61818d2 Frank Wunderlich 2021-10-15  3475  	return 0;
8d83ced61818d2 Frank Wunderlich 2021-10-15  3476  }
8d83ced61818d2 Frank Wunderlich 2021-10-15  3477  

:::::: The code at line 3431 was first introduced by commit
:::::: b23ab6ac6d768f9d5b03b5a67bf48a6be6e1dcce drm/rockchip: Add optional support for CRTC gamma LUT

:::::: TO: Ezequiel Garcia <ezequiel@collabora.com>
:::::: CC: Sean Paul <seanpaul@chromium.org>

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

[-- Attachment #2: config.gz --]
[-- Type: application/gzip, Size: 30111 bytes --]

                 reply	other threads:[~2021-10-25 18:01 UTC|newest]

Thread overview: [no followups] expand[flat|nested]  mbox.gz  Atom feed

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=202110260228.bFuAWbfc-lkp@intel.com \
    --to=lkp@intel.com \
    --cc=kbuild-all@lists.01.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.