tree:   git://anongit.freedesktop.org/drm/drm-misc for-linux-next
head:   396369d6754993e40f1c84b2e22e40e92dfa4c49
commit: 396369d6754993e40f1c84b2e22e40e92dfa4c49 [9/9] drm: vkms: Add support 
to the RGB565 format
config: i386-randconfig-a006-20220905 
(https://download.01.org/0day-ci/archive/20220906/202209060813.wci1hzua-...@intel.com/config)
compiler: gcc-11 (Debian 11.3.0-5) 11.3.0
reproduce (this is a W=1 build):
        git remote add drm-misc git://anongit.freedesktop.org/drm/drm-misc
        git fetch --no-tags drm-misc for-linux-next
        git checkout 396369d6754993e40f1c84b2e22e40e92dfa4c49
        # save the config file
        mkdir build_dir && cp config build_dir/.config
        make W=1 O=build_dir ARCH=i386 SHELL=/bin/bash

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

All errors (new ones prefixed by >>):

   ld: warning: arch/x86/lib/retpoline.o: missing .note.GNU-stack section 
implies executable stack
   ld: NOTE: This behaviour is deprecated and will be removed in a future 
version of the linker
   ld: drivers/gpu/drm/vkms/vkms_formats.o: in function `argb_u16_to_RGB565':
>> drivers/gpu/drm/vkms/vkms_formats.c:259: undefined reference to `__divdi3'
>> ld: drivers/gpu/drm/vkms/vkms_formats.c:260: undefined reference to 
>> `__divdi3'
   ld: drivers/gpu/drm/vkms/vkms_formats.c:261: undefined reference to 
`__divdi3'


vim +259 drivers/gpu/drm/vkms/vkms_formats.c

   241  
   242  static void argb_u16_to_RGB565(struct vkms_frame_info *frame_info,
   243                                 const struct line_buffer *src_buffer, 
int y)
   244  {
   245          int x_dst = frame_info->dst.x1;
   246          u16 *dst_pixels = packed_pixels_addr(frame_info, x_dst, y);
   247          struct pixel_argb_u16 *in_pixels = src_buffer->pixels;
   248          int x_limit = min_t(size_t, drm_rect_width(&frame_info->dst),
   249                              src_buffer->n_pixels);
   250  
   251          s32 fp_rb_ratio = INT_TO_FIXED_DIV(65535, 31);
   252          s32 fp_g_ratio = INT_TO_FIXED_DIV(65535, 63);
   253  
   254          for (size_t x = 0; x < x_limit; x++, dst_pixels++) {
   255                  s32 fp_r = INT_TO_FIXED(in_pixels[x].r);
   256                  s32 fp_g = INT_TO_FIXED(in_pixels[x].g);
   257                  s32 fp_b = INT_TO_FIXED(in_pixels[x].b);
   258  
 > 259                  u16 r = FIXED_TO_INT_ROUND(FIXED_DIV(fp_r, 
 > fp_rb_ratio));
 > 260                  u16 g = FIXED_TO_INT_ROUND(FIXED_DIV(fp_g, fp_g_ratio));
   261                  u16 b = FIXED_TO_INT_ROUND(FIXED_DIV(fp_b, 
fp_rb_ratio));
   262  
   263                  *dst_pixels = cpu_to_le16(r << 11 | g << 5 | b);
   264          }
   265  }
   266  

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

Reply via email to