mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
From: kernel test robot <lkp@intel.com>
To: "Uwe Kleine-König " <u.kleine-koenig@baylibre.com>
Cc: oe-kbuild-all@lists.linux.dev, linux-kernel@vger.kernel.org,
	Helge Deller <deller@gmx.de>
Subject: drivers/video/fbdev/au1100fb.c:492:33: sparse: sparse: incorrect type in assignment (different address spaces)
Date: Tue, 23 Jun 2026 06:47:14 +0800	[thread overview]
Message-ID: <202606230656.aMh4MdfZ-lkp@intel.com> (raw)

tree:   https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
head:   4708cac0e22cfd217f48f7cec3c35e5922efcccd
commit: 6f366e86481a7503a821de82930df517dddd4047 fbdev: au1100fb: Make driver compilable on non-mips platforms
date:   4 months ago
config: hexagon-randconfig-r122-20260622 (https://download.01.org/0day-ci/archive/20260623/202606230656.aMh4MdfZ-lkp@intel.com/config)
compiler: clang version 19.1.7 (https://github.com/llvm/llvm-project cd708029e0b2869e80abe31ddb175f7c35361f90)
sparse: v0.6.5-rc1
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20260623/202606230656.aMh4MdfZ-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
| Fixes: 6f366e86481a ("fbdev: au1100fb: Make driver compilable on non-mips platforms")
| Reported-by: kernel test robot <lkp@intel.com>
| Closes: https://lore.kernel.org/oe-kbuild-all/202606230656.aMh4MdfZ-lkp@intel.com/

sparse warnings: (new ones prefixed by >>)
>> drivers/video/fbdev/au1100fb.c:492:33: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected char [noderef] __iomem *screen_base @@     got unsigned char *fb_mem @@
   drivers/video/fbdev/au1100fb.c:492:33: sparse:     expected char [noderef] __iomem *screen_base
   drivers/video/fbdev/au1100fb.c:492:33: sparse:     got unsigned char *fb_mem

vim +492 drivers/video/fbdev/au1100fb.c

^1da177e4c3f415 drivers/video/au1100fb.c       Linus Torvalds     2005-04-16  404  
48c68c4f1b54244 drivers/video/au1100fb.c       Greg Kroah-Hartman 2012-12-21  405  static int au1100fb_drv_probe(struct platform_device *dev)
^1da177e4c3f415 drivers/video/au1100fb.c       Linus Torvalds     2005-04-16  406  {
46953e6aab262dc drivers/video/fbdev/au1100fb.c Markus Elfring     2018-03-28  407  	struct au1100fb_device *fbdev;
3b495f2bb749b82 drivers/video/au1100fb.c       Pete Popov         2005-04-04  408  	struct resource *regs_res;
6b1889c14b4606b drivers/video/fbdev/au1100fb.c Manuel Lauss       2014-07-23  409  	struct clk *c;
^1da177e4c3f415 drivers/video/au1100fb.c       Linus Torvalds     2005-04-16  410  
3b495f2bb749b82 drivers/video/au1100fb.c       Pete Popov         2005-04-04  411  	/* Allocate new device private */
db66f0252e2f17a drivers/video/fbdev/au1100fb.c Markus Elfring     2018-03-28  412  	fbdev = devm_kzalloc(&dev->dev, sizeof(*fbdev), GFP_KERNEL);
29914badc59b23e drivers/video/fbdev/au1100fb.c Markus Elfring     2018-03-28  413  	if (!fbdev)
3b495f2bb749b82 drivers/video/au1100fb.c       Pete Popov         2005-04-04  414  		return -ENOMEM;
^1da177e4c3f415 drivers/video/au1100fb.c       Linus Torvalds     2005-04-16  415  
d121c3f3cedb846 drivers/video/au1100fb.c       Manuel Lauss       2011-09-30  416  	if (au1100fb_setup(fbdev))
d121c3f3cedb846 drivers/video/au1100fb.c       Manuel Lauss       2011-09-30  417  		goto failed;
^1da177e4c3f415 drivers/video/au1100fb.c       Linus Torvalds     2005-04-16  418  
7a192ec334cab9f drivers/video/au1100fb.c       Ming Lei           2009-02-06  419  	platform_set_drvdata(dev, (void *)fbdev);
67f30ad19c4b329 drivers/video/fbdev/au1100fb.c Christoph Hellwig  2019-04-28  420  	fbdev->dev = &dev->dev;
^1da177e4c3f415 drivers/video/au1100fb.c       Linus Torvalds     2005-04-16  421  
3b495f2bb749b82 drivers/video/au1100fb.c       Pete Popov         2005-04-04  422  	/* Allocate region for our registers and map them */
d121c3f3cedb846 drivers/video/au1100fb.c       Manuel Lauss       2011-09-30  423  	regs_res = platform_get_resource(dev, IORESOURCE_MEM, 0);
d121c3f3cedb846 drivers/video/au1100fb.c       Manuel Lauss       2011-09-30  424  	if (!regs_res) {
3b495f2bb749b82 drivers/video/au1100fb.c       Pete Popov         2005-04-04  425  		print_err("fail to retrieve registers resource");
3b495f2bb749b82 drivers/video/au1100fb.c       Pete Popov         2005-04-04  426  		return -EFAULT;
3b495f2bb749b82 drivers/video/au1100fb.c       Pete Popov         2005-04-04  427  	}
^1da177e4c3f415 drivers/video/au1100fb.c       Linus Torvalds     2005-04-16  428  
7939cecdc6fa39e drivers/video/fbdev/au1100fb.c Uwe Kleine-König   2026-02-16  429  	fbdev->info.fix = (struct fb_fix_screeninfo) {
7939cecdc6fa39e drivers/video/fbdev/au1100fb.c Uwe Kleine-König   2026-02-16  430  		.mmio_start = regs_res->start,
7939cecdc6fa39e drivers/video/fbdev/au1100fb.c Uwe Kleine-König   2026-02-16  431  		.mmio_len = resource_size(regs_res),
7939cecdc6fa39e drivers/video/fbdev/au1100fb.c Uwe Kleine-König   2026-02-16  432  		.id = "AU1100 FB",
7939cecdc6fa39e drivers/video/fbdev/au1100fb.c Uwe Kleine-König   2026-02-16  433  		.xpanstep = 1,
7939cecdc6fa39e drivers/video/fbdev/au1100fb.c Uwe Kleine-König   2026-02-16  434  		.ypanstep = 1,
7939cecdc6fa39e drivers/video/fbdev/au1100fb.c Uwe Kleine-König   2026-02-16  435  		.type = FB_TYPE_PACKED_PIXELS,
7939cecdc6fa39e drivers/video/fbdev/au1100fb.c Uwe Kleine-König   2026-02-16  436  		.accel = FB_ACCEL_NONE,
7939cecdc6fa39e drivers/video/fbdev/au1100fb.c Uwe Kleine-König   2026-02-16  437  	};
^1da177e4c3f415 drivers/video/au1100fb.c       Linus Torvalds     2005-04-16  438  
93019734555f8df drivers/video/au1100fb.c       Manuel Lauss       2012-03-24  439  	if (!devm_request_mem_region(&dev->dev,
7939cecdc6fa39e drivers/video/fbdev/au1100fb.c Uwe Kleine-König   2026-02-16  440  				     fbdev->info.fix.mmio_start,
7939cecdc6fa39e drivers/video/fbdev/au1100fb.c Uwe Kleine-König   2026-02-16  441  				     fbdev->info.fix.mmio_len,
3b495f2bb749b82 drivers/video/au1100fb.c       Pete Popov         2005-04-04  442  				     DRIVER_NAME)) {
c05b7f3d12b9455 drivers/video/au1100fb.c       Rodolfo Giometti   2006-05-30  443  		print_err("fail to lock memory region at 0x%08lx",
7939cecdc6fa39e drivers/video/fbdev/au1100fb.c Uwe Kleine-König   2026-02-16  444  			  fbdev->info.fix.mmio_start);
3b495f2bb749b82 drivers/video/au1100fb.c       Pete Popov         2005-04-04  445  		return -EBUSY;
^1da177e4c3f415 drivers/video/au1100fb.c       Linus Torvalds     2005-04-16  446  	}
^1da177e4c3f415 drivers/video/au1100fb.c       Linus Torvalds     2005-04-16  447  
7939cecdc6fa39e drivers/video/fbdev/au1100fb.c Uwe Kleine-König   2026-02-16  448  	fbdev->regs = (struct au1100fb_regs*)KSEG1ADDR(fbdev->info.fix.mmio_start);
^1da177e4c3f415 drivers/video/au1100fb.c       Linus Torvalds     2005-04-16  449  
3b495f2bb749b82 drivers/video/au1100fb.c       Pete Popov         2005-04-04  450  	print_dbg("Register memory map at %p", fbdev->regs);
13c89a37c6f6f33 drivers/video/fbdev/au1100fb.c Uwe Kleine-König   2026-02-16  451  	print_dbg("phys=0x%08x, size=%zu", fbdev->regs_phys, fbdev->regs_len);
^1da177e4c3f415 drivers/video/au1100fb.c       Linus Torvalds     2005-04-16  452  
6b1889c14b4606b drivers/video/fbdev/au1100fb.c Manuel Lauss       2014-07-23  453  	c = clk_get(NULL, "lcd_intclk");
6b1889c14b4606b drivers/video/fbdev/au1100fb.c Manuel Lauss       2014-07-23  454  	if (!IS_ERR(c)) {
6b1889c14b4606b drivers/video/fbdev/au1100fb.c Manuel Lauss       2014-07-23  455  		fbdev->lcdclk = c;
6b1889c14b4606b drivers/video/fbdev/au1100fb.c Manuel Lauss       2014-07-23  456  		clk_set_rate(c, 48000000);
6b1889c14b4606b drivers/video/fbdev/au1100fb.c Manuel Lauss       2014-07-23  457  		clk_prepare_enable(c);
6b1889c14b4606b drivers/video/fbdev/au1100fb.c Manuel Lauss       2014-07-23  458  	}
6b1889c14b4606b drivers/video/fbdev/au1100fb.c Manuel Lauss       2014-07-23  459  
3b495f2bb749b82 drivers/video/au1100fb.c       Pete Popov         2005-04-04  460  	/* Allocate the framebuffer to the maximum screen size * nbr of video buffers */
3b495f2bb749b82 drivers/video/au1100fb.c       Pete Popov         2005-04-04  461  	fbdev->fb_len = fbdev->panel->xres * fbdev->panel->yres *
3b495f2bb749b82 drivers/video/au1100fb.c       Pete Popov         2005-04-04  462  		  	(fbdev->panel->bpp >> 3) * AU1100FB_NBR_VIDEO_BUFFERS;
^1da177e4c3f415 drivers/video/au1100fb.c       Linus Torvalds     2005-04-16  463  
93019734555f8df drivers/video/au1100fb.c       Manuel Lauss       2012-03-24  464  	fbdev->fb_mem = dmam_alloc_coherent(&dev->dev,
1c16697bf9d5b20 drivers/video/au1100fb.c       Julia Lawall       2012-01-21  465  					    PAGE_ALIGN(fbdev->fb_len),
3b495f2bb749b82 drivers/video/au1100fb.c       Pete Popov         2005-04-04  466  					    &fbdev->fb_phys, GFP_KERNEL);
3b495f2bb749b82 drivers/video/au1100fb.c       Pete Popov         2005-04-04  467  	if (!fbdev->fb_mem) {
13c89a37c6f6f33 drivers/video/fbdev/au1100fb.c Uwe Kleine-König   2026-02-16  468  		print_err("fail to allocate framebuffer (size: %zuK))",
3b495f2bb749b82 drivers/video/au1100fb.c       Pete Popov         2005-04-04  469  			  fbdev->fb_len / 1024);
^1da177e4c3f415 drivers/video/au1100fb.c       Linus Torvalds     2005-04-16  470  		return -ENOMEM;
^1da177e4c3f415 drivers/video/au1100fb.c       Linus Torvalds     2005-04-16  471  	}
3b495f2bb749b82 drivers/video/au1100fb.c       Pete Popov         2005-04-04  472  
7939cecdc6fa39e drivers/video/fbdev/au1100fb.c Uwe Kleine-König   2026-02-16  473  	fbdev->info.fix.smem_start = fbdev->fb_phys;
7939cecdc6fa39e drivers/video/fbdev/au1100fb.c Uwe Kleine-König   2026-02-16  474  	fbdev->info.fix.smem_len = fbdev->fb_len;
^1da177e4c3f415 drivers/video/au1100fb.c       Linus Torvalds     2005-04-16  475  
3b495f2bb749b82 drivers/video/au1100fb.c       Pete Popov         2005-04-04  476  	print_dbg("Framebuffer memory map at %p", fbdev->fb_mem);
13c89a37c6f6f33 drivers/video/fbdev/au1100fb.c Uwe Kleine-König   2026-02-16  477  	print_dbg("phys=0x%pad, size=%zuK", &fbdev->fb_phys, fbdev->fb_len / 1024);
3b495f2bb749b82 drivers/video/au1100fb.c       Pete Popov         2005-04-04  478  
3b495f2bb749b82 drivers/video/au1100fb.c       Pete Popov         2005-04-04  479  	/* load the panel info into the var struct */
7939cecdc6fa39e drivers/video/fbdev/au1100fb.c Uwe Kleine-König   2026-02-16  480  	fbdev->info.var = (struct fb_var_screeninfo) {
7939cecdc6fa39e drivers/video/fbdev/au1100fb.c Uwe Kleine-König   2026-02-16  481  		.activate = FB_ACTIVATE_NOW,
7939cecdc6fa39e drivers/video/fbdev/au1100fb.c Uwe Kleine-König   2026-02-16  482  		.height = -1,
7939cecdc6fa39e drivers/video/fbdev/au1100fb.c Uwe Kleine-König   2026-02-16  483  		.width = -1,
7939cecdc6fa39e drivers/video/fbdev/au1100fb.c Uwe Kleine-König   2026-02-16  484  		.vmode = FB_VMODE_NONINTERLACED,
7939cecdc6fa39e drivers/video/fbdev/au1100fb.c Uwe Kleine-König   2026-02-16  485  		.bits_per_pixel = fbdev->panel->bpp,
7939cecdc6fa39e drivers/video/fbdev/au1100fb.c Uwe Kleine-König   2026-02-16  486  		.xres = fbdev->panel->xres,
7939cecdc6fa39e drivers/video/fbdev/au1100fb.c Uwe Kleine-König   2026-02-16  487  		.xres_virtual = fbdev->panel->xres,
7939cecdc6fa39e drivers/video/fbdev/au1100fb.c Uwe Kleine-König   2026-02-16  488  		.yres = fbdev->panel->yres,
7939cecdc6fa39e drivers/video/fbdev/au1100fb.c Uwe Kleine-König   2026-02-16  489  		.yres_virtual = fbdev->panel->yres,
7939cecdc6fa39e drivers/video/fbdev/au1100fb.c Uwe Kleine-König   2026-02-16  490  	};
^1da177e4c3f415 drivers/video/au1100fb.c       Linus Torvalds     2005-04-16  491  
3b495f2bb749b82 drivers/video/au1100fb.c       Pete Popov         2005-04-04 @492  	fbdev->info.screen_base = fbdev->fb_mem;
3b495f2bb749b82 drivers/video/au1100fb.c       Pete Popov         2005-04-04  493  	fbdev->info.fbops = &au1100fb_ops;
^1da177e4c3f415 drivers/video/au1100fb.c       Linus Torvalds     2005-04-16  494  
1c16697bf9d5b20 drivers/video/au1100fb.c       Julia Lawall       2012-01-21  495  	fbdev->info.pseudo_palette =
a86854d0c599b32 drivers/video/fbdev/au1100fb.c Kees Cook          2018-06-12  496  		devm_kcalloc(&dev->dev, 16, sizeof(u32), GFP_KERNEL);
1c16697bf9d5b20 drivers/video/au1100fb.c       Julia Lawall       2012-01-21  497  	if (!fbdev->info.pseudo_palette)
3b495f2bb749b82 drivers/video/au1100fb.c       Pete Popov         2005-04-04  498  		return -ENOMEM;
3b495f2bb749b82 drivers/video/au1100fb.c       Pete Popov         2005-04-04  499  
3b495f2bb749b82 drivers/video/au1100fb.c       Pete Popov         2005-04-04  500  	if (fb_alloc_cmap(&fbdev->info.cmap, AU1100_LCD_NBR_PALETTE_ENTRIES, 0) < 0) {
3b495f2bb749b82 drivers/video/au1100fb.c       Pete Popov         2005-04-04  501  		print_err("Fail to allocate colormap (%d entries)",
3b495f2bb749b82 drivers/video/au1100fb.c       Pete Popov         2005-04-04  502  			   AU1100_LCD_NBR_PALETTE_ENTRIES);
3b495f2bb749b82 drivers/video/au1100fb.c       Pete Popov         2005-04-04  503  		return -EFAULT;
3b495f2bb749b82 drivers/video/au1100fb.c       Pete Popov         2005-04-04  504  	}
^1da177e4c3f415 drivers/video/au1100fb.c       Linus Torvalds     2005-04-16  505  
3b495f2bb749b82 drivers/video/au1100fb.c       Pete Popov         2005-04-04  506  	/* Set h/w registers */
3b495f2bb749b82 drivers/video/au1100fb.c       Pete Popov         2005-04-04  507  	au1100fb_setmode(fbdev);
^1da177e4c3f415 drivers/video/au1100fb.c       Linus Torvalds     2005-04-16  508  
3b495f2bb749b82 drivers/video/au1100fb.c       Pete Popov         2005-04-04  509  	/* Register new framebuffer */
3b495f2bb749b82 drivers/video/au1100fb.c       Pete Popov         2005-04-04  510  	if (register_framebuffer(&fbdev->info) < 0) {
3b495f2bb749b82 drivers/video/au1100fb.c       Pete Popov         2005-04-04  511  		print_err("cannot register new framebuffer");
3b495f2bb749b82 drivers/video/au1100fb.c       Pete Popov         2005-04-04  512  		goto failed;
3b495f2bb749b82 drivers/video/au1100fb.c       Pete Popov         2005-04-04  513  	}
^1da177e4c3f415 drivers/video/au1100fb.c       Linus Torvalds     2005-04-16  514  
^1da177e4c3f415 drivers/video/au1100fb.c       Linus Torvalds     2005-04-16  515  	return 0;
3b495f2bb749b82 drivers/video/au1100fb.c       Pete Popov         2005-04-04  516  
3b495f2bb749b82 drivers/video/au1100fb.c       Pete Popov         2005-04-04  517  failed:
6b1889c14b4606b drivers/video/fbdev/au1100fb.c Manuel Lauss       2014-07-23  518  	if (fbdev->lcdclk) {
6b1889c14b4606b drivers/video/fbdev/au1100fb.c Manuel Lauss       2014-07-23  519  		clk_disable_unprepare(fbdev->lcdclk);
6b1889c14b4606b drivers/video/fbdev/au1100fb.c Manuel Lauss       2014-07-23  520  		clk_put(fbdev->lcdclk);
6b1889c14b4606b drivers/video/fbdev/au1100fb.c Manuel Lauss       2014-07-23  521  	}
3b495f2bb749b82 drivers/video/au1100fb.c       Pete Popov         2005-04-04  522  	if (fbdev->info.cmap.len != 0) {
3b495f2bb749b82 drivers/video/au1100fb.c       Pete Popov         2005-04-04  523  		fb_dealloc_cmap(&fbdev->info.cmap);
3b495f2bb749b82 drivers/video/au1100fb.c       Pete Popov         2005-04-04  524  	}
^1da177e4c3f415 drivers/video/au1100fb.c       Linus Torvalds     2005-04-16  525  
1c16697bf9d5b20 drivers/video/au1100fb.c       Julia Lawall       2012-01-21  526  	return -ENODEV;
3b495f2bb749b82 drivers/video/au1100fb.c       Pete Popov         2005-04-04  527  }
^1da177e4c3f415 drivers/video/au1100fb.c       Linus Torvalds     2005-04-16  528  

:::::: The code at line 492 was first introduced by commit
:::::: 3b495f2bb749b828499135743b9ddec46e34fda8 Au1100 FB driver uplift for 2.6.

:::::: TO: Pete Popov <ppopov@embeddedalley.com>
:::::: CC: Ralf Baechle <ralf@linux-mips.org>

--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki

                 reply	other threads:[~2026-06-22 22:48 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=202606230656.aMh4MdfZ-lkp@intel.com \
    --to=lkp@intel.com \
    --cc=deller@gmx.de \
    --cc=linux-kernel@vger.kernel.org \
    --cc=oe-kbuild-all@lists.linux.dev \
    --cc=u.kleine-koenig@baylibre.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