All of lore.kernel.org
 help / color / mirror / Atom feed
From: kernel test robot <lkp@intel.com>
To: Sven Schnelle <svens@stackframe.org>
Cc: kbuild-all@lists.01.org, linux-kernel@vger.kernel.org,
	Helge Deller <deller@gmx.de>
Subject: [deller-fbdev:hp-visualize-fx-drm 1/1] drivers/gpu/drm/visualizefx/visfx_drv.c:222:25: error: invalid use of undefined type 'const struct dma_buf_map'
Date: Sun, 29 May 2022 22:44:13 +0800	[thread overview]
Message-ID: <202205292236.7katQfFE-lkp@intel.com> (raw)

tree:   git://git.kernel.org/pub/scm/linux/kernel/git/deller/linux-fbdev.git hp-visualize-fx-drm
head:   c2d0f767c19314c3d3a1a2d304be3c871b729523
commit: c2d0f767c19314c3d3a1a2d304be3c871b729523 [1/1] drm: add HP Visualize FX driver
config: parisc-allyesconfig (https://download.01.org/0day-ci/archive/20220529/202205292236.7katQfFE-lkp@intel.com/config)
compiler: hppa-linux-gcc (GCC) 11.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://git.kernel.org/pub/scm/linux/kernel/git/deller/linux-fbdev.git/commit/?id=c2d0f767c19314c3d3a1a2d304be3c871b729523
        git remote add deller-fbdev git://git.kernel.org/pub/scm/linux/kernel/git/deller/linux-fbdev.git
        git fetch --no-tags deller-fbdev hp-visualize-fx-drm
        git checkout c2d0f767c19314c3d3a1a2d304be3c871b729523
        # save the config file
        mkdir build_dir && cp config build_dir/.config
        COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-11.3.0 make.cross W=1 O=build_dir ARCH=parisc SHELL=/bin/bash

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

All errors (new ones prefixed by >>):

   drivers/gpu/drm/visualizefx/visfx_drv.c:218:45: warning: 'struct dma_buf_map' declared inside parameter list will not be visible outside of this definition or declaration
     218 |                                const struct dma_buf_map *map,
         |                                             ^~~~~~~~~~~
   drivers/gpu/drm/visualizefx/visfx_drv.c: In function 'visfx_fb_blit_rect':
>> drivers/gpu/drm/visualizefx/visfx_drv.c:222:25: error: invalid use of undefined type 'const struct dma_buf_map'
     222 |         void *vmap = map->vaddr; /* TODO: Use mapping abstraction properly */
         |                         ^~
   drivers/gpu/drm/visualizefx/visfx_drv.c: At top level:
   drivers/gpu/drm/visualizefx/visfx_drv.c:236:78: warning: 'struct dma_buf_map' declared inside parameter list will not be visible outside of this definition or declaration
     236 | static int visfx_fb_blit_fullscreen(struct drm_framebuffer *fb, const struct dma_buf_map *map)
         |                                                                              ^~~~~~~~~~~
   drivers/gpu/drm/visualizefx/visfx_drv.c: In function 'visfx_fb_blit_fullscreen':
>> drivers/gpu/drm/visualizefx/visfx_drv.c:244:39: error: passing argument 2 of 'visfx_fb_blit_rect' from incompatible pointer type [-Werror=incompatible-pointer-types]
     244 |         return visfx_fb_blit_rect(fb, map, &fullscreen);
         |                                       ^~~
         |                                       |
         |                                       const struct dma_buf_map *
   drivers/gpu/drm/visualizefx/visfx_drv.c:218:58: note: expected 'const struct dma_buf_map *' but argument is of type 'const struct dma_buf_map *'
     218 |                                const struct dma_buf_map *map,
         |                                ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~
   drivers/gpu/drm/visualizefx/visfx_drv.c: In function 'visfx_pipe_enable':
>> drivers/gpu/drm/visualizefx/visfx_drv.c:281:51: error: passing argument 2 of 'visfx_fb_blit_fullscreen' from incompatible pointer type [-Werror=incompatible-pointer-types]
     281 |         visfx_fb_blit_fullscreen(plane_state->fb, &shadow_plane_state->data[0]);
         |                                                   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
         |                                                   |
         |                                                   struct iosys_map *
   drivers/gpu/drm/visualizefx/visfx_drv.c:236:91: note: expected 'const struct dma_buf_map *' but argument is of type 'struct iosys_map *'
     236 | static int visfx_fb_blit_fullscreen(struct drm_framebuffer *fb, const struct dma_buf_map *map)
         |                                                                 ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~
   drivers/gpu/drm/visualizefx/visfx_drv.c: In function 'visfx_pipe_update':
   drivers/gpu/drm/visualizefx/visfx_drv.c:321:47: error: passing argument 2 of 'visfx_fb_blit_rect' from incompatible pointer type [-Werror=incompatible-pointer-types]
     321 |                 visfx_fb_blit_rect(state->fb, &shadow_plane_state->data[0], &rect);
         |                                               ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
         |                                               |
         |                                               struct iosys_map *
   drivers/gpu/drm/visualizefx/visfx_drv.c:218:58: note: expected 'const struct dma_buf_map *' but argument is of type 'struct iosys_map *'
     218 |                                const struct dma_buf_map *map,
         |                                ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~
   cc1: some warnings being treated as errors


vim +222 drivers/gpu/drm/visualizefx/visfx_drv.c

   216	
   217	static int visfx_fb_blit_rect(struct drm_framebuffer *fb,
   218				       const struct dma_buf_map *map,
   219				       struct drm_rect *rect)
   220	{
   221		struct visfx_device *visfx = to_visfx(fb->dev);
 > 222		void *vmap = map->vaddr; /* TODO: Use mapping abstraction properly */
   223		uint8_t *dst;
   224		int idx;
   225	
   226		if (!drm_dev_enter(&visfx->dev, &idx))
   227			return -ENODEV;
   228		visfx_writel(visfx, VISFX_VRAM_WRITE_MODE, VISFX_VRAM_WRITE_MODE_BITMAP);
   229		dst = visfx->mmio + 0x01000000;
   230		dst += drm_fb_clip_offset(fb->pitches[0], fb->format, rect);
   231		drm_fb_memcpy_toio(dst, fb->pitches[0], vmap, fb, rect);
   232		drm_dev_exit(idx);
   233		return 0;
   234	}
   235	
   236	static int visfx_fb_blit_fullscreen(struct drm_framebuffer *fb, const struct dma_buf_map *map)
   237	{
   238		struct drm_rect fullscreen = {
   239			.x1 = 0,
   240			.x2 = fb->width,
   241			.y1 = 0,
   242			.y2 = fb->height,
   243		};
 > 244		return visfx_fb_blit_rect(fb, map, &fullscreen);
   245	}
   246	
   247	static int visfx_check_size(int width, int height, struct drm_framebuffer *fb)
   248	{
   249		if (width > 2048 || height > 2048)
   250			return -EINVAL;
   251		return 0;
   252	}
   253	
   254	static enum drm_mode_status visfx_pipe_mode_valid(struct drm_simple_display_pipe *pipe,
   255							   const struct drm_display_mode *mode)
   256	{
   257		if (visfx_check_size(mode->hdisplay, mode->vdisplay, NULL) < 0)
   258			return MODE_BAD;
   259		return MODE_OK;
   260	}
   261	
   262	static int visfx_pipe_check(struct drm_simple_display_pipe *pipe,
   263				     struct drm_plane_state *plane_state,
   264				     struct drm_crtc_state *crtc_state)
   265	{
   266		struct drm_framebuffer *fb = plane_state->fb;
   267	
   268		if (!fb)
   269			return 0;
   270		return visfx_check_size(fb->width, fb->height, fb);
   271	}
   272	
   273	static void visfx_pipe_enable(struct drm_simple_display_pipe *pipe,
   274				      struct drm_crtc_state *crtc_state,
   275				      struct drm_plane_state *plane_state)
   276	{
   277		struct visfx_device *visfx = to_visfx(pipe->crtc.dev);
   278		struct drm_shadow_plane_state *shadow_plane_state = to_drm_shadow_plane_state(plane_state);
   279	
   280		visfx_mode_set(visfx, &crtc_state->mode, plane_state->fb);
 > 281		visfx_fb_blit_fullscreen(plane_state->fb, &shadow_plane_state->data[0]);
   282	}
   283	

-- 
0-DAY CI Kernel Test Service
https://01.org/lkp

                 reply	other threads:[~2022-05-29 14:44 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=202205292236.7katQfFE-lkp@intel.com \
    --to=lkp@intel.com \
    --cc=deller@gmx.de \
    --cc=kbuild-all@lists.01.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=svens@stackframe.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.