From: kernel test robot <lkp@intel.com>
To: samiksha.palav27@gmail.com, gregkh@linuxfoundation.org
Cc: oe-kbuild-all@lists.linux.dev, linux-staging@lists.linux.dev,
linux-kernel@vger.kernel.org,
shdwcodr <samiksha.palav27@gmail.com>
Subject: Re: [PATCH] staging: sm750fb: Add hardware acceleration for 16bpp imageblit
Date: Sat, 26 Jul 2025 18:26:16 +0800 [thread overview]
Message-ID: <202507261818.EFdmyMEX-lkp@intel.com> (raw)
In-Reply-To: <20250724105254.3926-2-samiksha.palav27@gmail.com>
Hi,
kernel test robot noticed the following build errors:
[auto build test ERROR on staging/staging-linus]
[also build test ERROR on linus/master v6.16-rc7]
[cannot apply to staging/staging-testing staging/staging-next next-20250725]
[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#_base_tree_information]
url: https://github.com/intel-lab-lkp/linux/commits/samiksha-palav27-gmail-com/staging-sm750fb-Add-hardware-acceleration-for-16bpp-imageblit/20250724-185607
base: staging/staging-linus
patch link: https://lore.kernel.org/r/20250724105254.3926-2-samiksha.palav27%40gmail.com
patch subject: [PATCH] staging: sm750fb: Add hardware acceleration for 16bpp imageblit
config: sparc64-randconfig-001-20250725 (https://download.01.org/0day-ci/archive/20250726/202507261818.EFdmyMEX-lkp@intel.com/config)
compiler: sparc64-linux-gcc (GCC) 8.5.0
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20250726/202507261818.EFdmyMEX-lkp@intel.com/reproduce)
If you fix the issue in a separate patch/commit (i.e. not just a new version of
the same patch/commit), kindly add following tags
| Reported-by: kernel test robot <lkp@intel.com>
| Closes: https://lore.kernel.org/oe-kbuild-all/202507261818.EFdmyMEX-lkp@intel.com/
All error/warnings (new ones prefixed by >>):
drivers/staging/sm750fb/sm750.c: In function 'lynxfb_ops_imageblit':
>> drivers/staging/sm750fb/sm750.c:252:14: error: invalid storage class for function 'write_pixel'
static void write_pixel(struct fb_info *info, int x, int y, u32 color)
^~~~~~~~~~~
At top level:
>> drivers/staging/sm750fb/sm750.c:270:7: warning: 'sm750fb_imageblit' defined but not used [-Wunused-function]
void sm750fb_imageblit(struct fb_info *info, const struct fb_image *image)
^~~~~~~~~~~~~~~~~
vim +/write_pixel +252 drivers/staging/sm750fb/sm750.c
233
234 static void lynxfb_ops_imageblit(struct fb_info *info,
235 const struct fb_image *image)
236 {
237 unsigned int base, pitch, Bpp;
238 unsigned int fgcol, bgcol;
239 struct lynxfb_par *par;
240 struct sm750_dev *sm750_dev;
241
242 par = info->par;
243 sm750_dev = par->dev;
244 /*
245 * each time 2d function begin to work,below three variable always need
246 * be set, seems we can put them together in some place
247 */
248 base = par->crtc.o_screen;
249 pitch = info->fix.line_length;
250 Bpp = info->var.bits_per_pixel >> 3;
251
> 252 static void write_pixel(struct fb_info *info, int x, int y, u32 color)
253
254 {
255 u32 location;
256 u8 *fb_ptr = (u8 *)info->screen_base;
257
258 location = (y * info->fix.line_length) + (x * (info->var.bits_per_pixel / 8));
259
260 if (info->var.bits_per_pixel == 16) {
261 u16 c = ((color >> 8) & 0xF800) |
262 ((color >> 5) & 0x07E0) |
263 ((color >> 3) & 0x001F); // Convert 24-bit RGB to RGB565
264 *((u16 *)(fb_ptr + location)) = c;
265 } else if (info->var.bits_per_pixel == 32) {
266 *((u32 *)(fb_ptr + location)) = color;
267 }
268 }
269
> 270 void sm750fb_imageblit(struct fb_info *info, const struct fb_image *image)
271
272 {
273 /*
274 * TODO: Add hardware-accelerated support for more image depths
275 * Currently only 16-bit (RGB565) images are handled in fast path.
276 */
277 if (image->depth != 16) {
278 cfb_imageblit(info, image);
279 return;
280 }
281
282 /* Accelerated rendering for 16-bit (RGB565) images */
283 const u16 *src = (const u16 *)image->data;
284
285 u32 fg_color = ((image->fg_color & 0xF800) << 8) |
286 ((image->fg_color & 0x07E0) << 5) |
287 ((image->fg_color & 0x001F) << 3); // RGB565 → RGB888
288
289 for (int j = 0; j < image->height; j++) {
290 for (int i = 0; i < image->width; i++) {
291 u16 pixel = src[j * image->width + i];
292
293 if (pixel) // Draw only non-zero (foreground) pixels
294 write_pixel(info, image->dx + i, image->dy + j, fg_color);
295 }
296 }
297 }
298
299 if (info->fix.visual == FB_VISUAL_TRUECOLOR ||
300 info->fix.visual == FB_VISUAL_DIRECTCOLOR) {
301 fgcol = ((u32 *)info->pseudo_palette)[image->fg_color];
302 bgcol = ((u32 *)info->pseudo_palette)[image->bg_color];
303 } else {
304 fgcol = image->fg_color;
305 bgcol = image->bg_color;
306 }
307
308 /*
309 * If not use spin_lock, system will die if user load driver
310 * and immediately unload driver frequently (dual)
311 * since they fb_count could change during the lifetime of
312 * this lock, we are holding it for all cases.
313 */
314 spin_lock(&sm750_dev->slock);
315
316 sm750_dev->accel.de_imageblit(&sm750_dev->accel,
317 image->data, image->width >> 3, 0,
318 base, pitch, Bpp,
319 image->dx, image->dy,
320 image->width, image->height,
321 fgcol, bgcol, HW_ROP2_COPY);
322 spin_unlock(&sm750_dev->slock);
323 }
324
--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki
prev parent reply other threads:[~2025-07-26 10:26 UTC|newest]
Thread overview: 4+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-07-24 10:52 samiksha.palav27
2025-07-24 11:32 ` Greg KH
2025-07-24 11:33 ` Greg KH
2025-07-26 10:26 ` kernel test robot [this message]
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=202507261818.EFdmyMEX-lkp@intel.com \
--to=lkp@intel.com \
--cc=gregkh@linuxfoundation.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-staging@lists.linux.dev \
--cc=oe-kbuild-all@lists.linux.dev \
--cc=samiksha.palav27@gmail.com \
/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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
all inboxes | Powered by JetHome®