* drivers/video/fbdev/w100fb.c:772:25: sparse: expected void
@ 2020-11-13 15:30 kernel test robot
0 siblings, 0 replies; only message in thread
From: kernel test robot @ 2020-11-13 15:30 UTC (permalink / raw)
To: kbuild
[-- Attachment #1: Type: text/plain, Size: 29873 bytes --]
CC: kbuild-all(a)lists.01.org
CC: linux-kernel(a)vger.kernel.org
TO: Bartlomiej Zolnierkiewicz <b.zolnierkie@samsung.com>
Hi Bartlomiej,
First bad commit (maybe != root cause):
tree: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
head: 585e5b17b92dead8a3aca4e3c9876fbca5f7e0ba
commit: ee5aca2e7167ee3feccc989ad609b64e698d5eb3 video: fbdev: w100fb: add COMPILE_TEST support
date: 9 months ago
:::::: branch date: 15 hours ago
:::::: commit date: 9 months ago
config: openrisc-randconfig-s031-20201113 (attached as .config)
compiler: or1k-linux-gcc (GCC) 9.3.0
reproduce:
wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
chmod +x ~/bin/make.cross
# apt-get install sparse
# sparse version: v0.6.3-107-gaf3512a6-dirty
# https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=ee5aca2e7167ee3feccc989ad609b64e698d5eb3
git remote add linus https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
git fetch --no-tags linus master
git checkout ee5aca2e7167ee3feccc989ad609b64e698d5eb3
# save the attached .config to linux build tree
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-9.3.0 make.cross C=1 CF='-fdiagnostic-prefix -D__CHECK_ENDIAN__' ARCH=openrisc
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp@intel.com>
"sparse warnings: (new ones prefixed by >>)"
drivers/video/fbdev/w100fb.c:772:25: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void *addr @@ got void [noderef] <asn:2> *static [assigned] [toplevel] remapped_fbuf @@
>> drivers/video/fbdev/w100fb.c:772:25: sparse: expected void *addr
drivers/video/fbdev/w100fb.c:772:25: sparse: got void [noderef] <asn:2> *static [assigned] [toplevel] remapped_fbuf
drivers/video/fbdev/w100fb.c:774:25: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void *addr @@ got void [noderef] <asn:2> *static [assigned] [toplevel] remapped_regs @@
drivers/video/fbdev/w100fb.c:774:25: sparse: expected void *addr
drivers/video/fbdev/w100fb.c:774:25: sparse: got void [noderef] <asn:2> *static [assigned] [toplevel] remapped_regs
drivers/video/fbdev/w100fb.c:776:25: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void *addr @@ got void [noderef] <asn:2> *static [assigned] [toplevel] remapped_base @@
drivers/video/fbdev/w100fb.c:776:25: sparse: expected void *addr
drivers/video/fbdev/w100fb.c:776:25: sparse: got void [noderef] <asn:2> *static [assigned] [toplevel] remapped_base
drivers/video/fbdev/w100fb.c:795:17: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void *addr @@ got void [noderef] <asn:2> *static [assigned] [toplevel] remapped_base @@
drivers/video/fbdev/w100fb.c:795:17: sparse: expected void *addr
drivers/video/fbdev/w100fb.c:795:17: sparse: got void [noderef] <asn:2> *static [assigned] [toplevel] remapped_base
drivers/video/fbdev/w100fb.c:796:17: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void *addr @@ got void [noderef] <asn:2> *static [assigned] [toplevel] remapped_regs @@
drivers/video/fbdev/w100fb.c:796:17: sparse: expected void *addr
drivers/video/fbdev/w100fb.c:796:17: sparse: got void [noderef] <asn:2> *static [assigned] [toplevel] remapped_regs
drivers/video/fbdev/w100fb.c:797:17: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void *addr @@ got void [noderef] <asn:2> *static [assigned] [toplevel] remapped_fbuf @@
drivers/video/fbdev/w100fb.c:797:17: sparse: expected void *addr
drivers/video/fbdev/w100fb.c:797:17: sparse: got void [noderef] <asn:2> *static [assigned] [toplevel] remapped_fbuf
drivers/video/fbdev/w100fb.c: note: in included file (through arch/openrisc/include/asm/io.h, include/linux/fb.h):
include/asm-generic/io.h:179:15: sparse: sparse: cast to restricted __le32
include/asm-generic/io.h:179:15: sparse: sparse: cast to restricted __le32
include/asm-generic/io.h:179:15: sparse: sparse: cast to restricted __le32
include/asm-generic/io.h:179:15: sparse: sparse: cast to restricted __le32
include/asm-generic/io.h:179:15: sparse: sparse: cast to restricted __le32
include/asm-generic/io.h:179:15: sparse: sparse: cast to restricted __le32
include/asm-generic/io.h:225:22: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected unsigned int [usertype] value @@ got restricted __le32 [usertype] @@
include/asm-generic/io.h:225:22: sparse: expected unsigned int [usertype] value
include/asm-generic/io.h:225:22: sparse: got restricted __le32 [usertype]
include/asm-generic/io.h:179:15: sparse: sparse: cast to restricted __le32
include/asm-generic/io.h:179:15: sparse: sparse: cast to restricted __le32
include/asm-generic/io.h:179:15: sparse: sparse: cast to restricted __le32
include/asm-generic/io.h:179:15: sparse: sparse: cast to restricted __le32
include/asm-generic/io.h:179:15: sparse: sparse: cast to restricted __le32
include/asm-generic/io.h:179:15: sparse: sparse: cast to restricted __le32
include/asm-generic/io.h:179:15: sparse: sparse: cast to restricted __le32
include/asm-generic/io.h:179:15: sparse: sparse: cast to restricted __le32
include/asm-generic/io.h:179:15: sparse: sparse: cast to restricted __le32
include/asm-generic/io.h:179:15: sparse: sparse: cast to restricted __le32
include/asm-generic/io.h:179:15: sparse: sparse: cast to restricted __le32
include/asm-generic/io.h:179:15: sparse: sparse: cast to restricted __le32
include/asm-generic/io.h:225:22: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected unsigned int [usertype] value @@ got restricted __le32 [usertype] @@
include/asm-generic/io.h:225:22: sparse: expected unsigned int [usertype] value
include/asm-generic/io.h:225:22: sparse: got restricted __le32 [usertype]
include/asm-generic/io.h:225:22: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected unsigned int [usertype] value @@ got restricted __le32 [usertype] @@
include/asm-generic/io.h:225:22: sparse: expected unsigned int [usertype] value
include/asm-generic/io.h:225:22: sparse: got restricted __le32 [usertype]
include/asm-generic/io.h:225:22: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected unsigned int [usertype] value @@ got restricted __le32 [usertype] @@
include/asm-generic/io.h:225:22: sparse: expected unsigned int [usertype] value
include/asm-generic/io.h:225:22: sparse: got restricted __le32 [usertype]
include/asm-generic/io.h:225:22: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected unsigned int [usertype] value @@ got restricted __le32 [usertype] @@
include/asm-generic/io.h:225:22: sparse: expected unsigned int [usertype] value
include/asm-generic/io.h:225:22: sparse: got restricted __le32 [usertype]
include/asm-generic/io.h:225:22: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected unsigned int [usertype] value @@ got restricted __le32 [usertype] @@
include/asm-generic/io.h:225:22: sparse: expected unsigned int [usertype] value
include/asm-generic/io.h:225:22: sparse: got restricted __le32 [usertype]
include/asm-generic/io.h:225:22: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected unsigned int [usertype] value @@ got restricted __le32 [usertype] @@
include/asm-generic/io.h:225:22: sparse: expected unsigned int [usertype] value
include/asm-generic/io.h:225:22: sparse: got restricted __le32 [usertype]
include/asm-generic/io.h:225:22: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected unsigned int [usertype] value @@ got restricted __le32 [usertype] @@
include/asm-generic/io.h:225:22: sparse: expected unsigned int [usertype] value
include/asm-generic/io.h:225:22: sparse: got restricted __le32 [usertype]
include/asm-generic/io.h:225:22: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected unsigned int [usertype] value @@ got restricted __le32 [usertype] @@
include/asm-generic/io.h:225:22: sparse: expected unsigned int [usertype] value
include/asm-generic/io.h:225:22: sparse: got restricted __le32 [usertype]
include/asm-generic/io.h:225:22: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected unsigned int [usertype] value @@ got restricted __le32 [usertype] @@
include/asm-generic/io.h:225:22: sparse: expected unsigned int [usertype] value
include/asm-generic/io.h:225:22: sparse: got restricted __le32 [usertype]
include/asm-generic/io.h:225:22: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected unsigned int [usertype] value @@ got restricted __le32 [usertype] @@
include/asm-generic/io.h:225:22: sparse: expected unsigned int [usertype] value
include/asm-generic/io.h:225:22: sparse: got restricted __le32 [usertype]
include/asm-generic/io.h:225:22: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected unsigned int [usertype] value @@ got restricted __le32 [usertype] @@
include/asm-generic/io.h:225:22: sparse: expected unsigned int [usertype] value
include/asm-generic/io.h:225:22: sparse: got restricted __le32 [usertype]
include/asm-generic/io.h:179:15: sparse: sparse: cast to restricted __le32
include/asm-generic/io.h:179:15: sparse: sparse: cast to restricted __le32
include/asm-generic/io.h:179:15: sparse: sparse: cast to restricted __le32
include/asm-generic/io.h:179:15: sparse: sparse: cast to restricted __le32
include/asm-generic/io.h:179:15: sparse: sparse: cast to restricted __le32
include/asm-generic/io.h:179:15: sparse: sparse: cast to restricted __le32
include/asm-generic/io.h:225:22: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected unsigned int [usertype] value @@ got restricted __le32 [usertype] @@
include/asm-generic/io.h:225:22: sparse: expected unsigned int [usertype] value
include/asm-generic/io.h:225:22: sparse: got restricted __le32 [usertype]
include/asm-generic/io.h:225:22: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected unsigned int [usertype] value @@ got restricted __le32 [usertype] @@
include/asm-generic/io.h:225:22: sparse: expected unsigned int [usertype] value
include/asm-generic/io.h:225:22: sparse: got restricted __le32 [usertype]
include/asm-generic/io.h:225:22: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected unsigned int [usertype] value @@ got restricted __le32 [usertype] @@
include/asm-generic/io.h:225:22: sparse: expected unsigned int [usertype] value
include/asm-generic/io.h:225:22: sparse: got restricted __le32 [usertype]
include/asm-generic/io.h:225:22: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected unsigned int [usertype] value @@ got restricted __le32 [usertype] @@
include/asm-generic/io.h:225:22: sparse: expected unsigned int [usertype] value
include/asm-generic/io.h:225:22: sparse: got restricted __le32 [usertype]
include/asm-generic/io.h:179:15: sparse: sparse: cast to restricted __le32
include/asm-generic/io.h:179:15: sparse: sparse: cast to restricted __le32
include/asm-generic/io.h:179:15: sparse: sparse: cast to restricted __le32
include/asm-generic/io.h:179:15: sparse: sparse: cast to restricted __le32
include/asm-generic/io.h:179:15: sparse: sparse: cast to restricted __le32
include/asm-generic/io.h:179:15: sparse: sparse: cast to restricted __le32
include/asm-generic/io.h:225:22: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected unsigned int [usertype] value @@ got restricted __le32 [usertype] @@
include/asm-generic/io.h:225:22: sparse: expected unsigned int [usertype] value
include/asm-generic/io.h:225:22: sparse: got restricted __le32 [usertype]
include/asm-generic/io.h:225:22: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected unsigned int [usertype] value @@ got restricted __le32 [usertype] @@
include/asm-generic/io.h:225:22: sparse: expected unsigned int [usertype] value
vim +772 drivers/video/fbdev/w100fb.c
^1da177e4c3f415 drivers/video/w100fb.c Linus Torvalds 2005-04-16 636
^1da177e4c3f415 drivers/video/w100fb.c Linus Torvalds 2005-04-16 637
df3381071ca0ee5 drivers/video/fbdev/w100fb.c Bartlomiej Zolnierkiewicz 2020-01-16 638 static int w100fb_probe(struct platform_device *pdev)
^1da177e4c3f415 drivers/video/w100fb.c Linus Torvalds 2005-04-16 639 {
aac51f09d96a0ac drivers/video/w100fb.c Richard Purdie 2005-09-06 640 int err = -EIO;
^1da177e4c3f415 drivers/video/w100fb.c Linus Torvalds 2005-04-16 641 struct w100fb_mach_info *inf;
aac51f09d96a0ac drivers/video/w100fb.c Richard Purdie 2005-09-06 642 struct fb_info *info = NULL;
^1da177e4c3f415 drivers/video/w100fb.c Linus Torvalds 2005-04-16 643 struct w100fb_par *par;
^1da177e4c3f415 drivers/video/w100fb.c Linus Torvalds 2005-04-16 644 struct resource *mem = platform_get_resource(pdev, IORESOURCE_MEM, 0);
aac51f09d96a0ac drivers/video/w100fb.c Richard Purdie 2005-09-06 645 unsigned int chip_id;
^1da177e4c3f415 drivers/video/w100fb.c Linus Torvalds 2005-04-16 646
^1da177e4c3f415 drivers/video/w100fb.c Linus Torvalds 2005-04-16 647 if (!mem)
^1da177e4c3f415 drivers/video/w100fb.c Linus Torvalds 2005-04-16 648 return -EINVAL;
^1da177e4c3f415 drivers/video/w100fb.c Linus Torvalds 2005-04-16 649
aac51f09d96a0ac drivers/video/w100fb.c Richard Purdie 2005-09-06 650 /* Remap the chip base address */
4bdc0d676a64314 drivers/video/fbdev/w100fb.c Christoph Hellwig 2020-01-06 651 remapped_base = ioremap(mem->start+W100_CFG_BASE, W100_CFG_LEN);
^1da177e4c3f415 drivers/video/w100fb.c Linus Torvalds 2005-04-16 652 if (remapped_base == NULL)
aac51f09d96a0ac drivers/video/w100fb.c Richard Purdie 2005-09-06 653 goto out;
^1da177e4c3f415 drivers/video/w100fb.c Linus Torvalds 2005-04-16 654
aac51f09d96a0ac drivers/video/w100fb.c Richard Purdie 2005-09-06 655 /* Map the register space */
4bdc0d676a64314 drivers/video/fbdev/w100fb.c Christoph Hellwig 2020-01-06 656 remapped_regs = ioremap(mem->start+W100_REG_BASE, W100_REG_LEN);
aac51f09d96a0ac drivers/video/w100fb.c Richard Purdie 2005-09-06 657 if (remapped_regs == NULL)
aac51f09d96a0ac drivers/video/w100fb.c Richard Purdie 2005-09-06 658 goto out;
aac51f09d96a0ac drivers/video/w100fb.c Richard Purdie 2005-09-06 659
aac51f09d96a0ac drivers/video/w100fb.c Richard Purdie 2005-09-06 660 /* Identify the chip */
aac51f09d96a0ac drivers/video/w100fb.c Richard Purdie 2005-09-06 661 printk("Found ");
aac51f09d96a0ac drivers/video/w100fb.c Richard Purdie 2005-09-06 662 chip_id = readl(remapped_regs + mmCHIP_ID);
aac51f09d96a0ac drivers/video/w100fb.c Richard Purdie 2005-09-06 663 switch(chip_id) {
aac51f09d96a0ac drivers/video/w100fb.c Richard Purdie 2005-09-06 664 case CHIP_ID_W100: printk("w100"); break;
aac51f09d96a0ac drivers/video/w100fb.c Richard Purdie 2005-09-06 665 case CHIP_ID_W3200: printk("w3200"); break;
aac51f09d96a0ac drivers/video/w100fb.c Richard Purdie 2005-09-06 666 case CHIP_ID_W3220: printk("w3220"); break;
aac51f09d96a0ac drivers/video/w100fb.c Richard Purdie 2005-09-06 667 default:
aac51f09d96a0ac drivers/video/w100fb.c Richard Purdie 2005-09-06 668 printk("Unknown imageon chip ID\n");
aac51f09d96a0ac drivers/video/w100fb.c Richard Purdie 2005-09-06 669 err = -ENODEV;
aac51f09d96a0ac drivers/video/w100fb.c Richard Purdie 2005-09-06 670 goto out;
^1da177e4c3f415 drivers/video/w100fb.c Linus Torvalds 2005-04-16 671 }
a01fbbd52e4faf5 drivers/video/w100fb.c Richard Purdie 2007-05-23 672 printk(" at 0x%08lx.\n", (unsigned long) mem->start+W100_CFG_BASE);
^1da177e4c3f415 drivers/video/w100fb.c Linus Torvalds 2005-04-16 673
aac51f09d96a0ac drivers/video/w100fb.c Richard Purdie 2005-09-06 674 /* Remap the framebuffer */
4bdc0d676a64314 drivers/video/fbdev/w100fb.c Christoph Hellwig 2020-01-06 675 remapped_fbuf = ioremap(mem->start+MEM_WINDOW_BASE, MEM_WINDOW_SIZE);
aac51f09d96a0ac drivers/video/w100fb.c Richard Purdie 2005-09-06 676 if (remapped_fbuf == NULL)
aac51f09d96a0ac drivers/video/w100fb.c Richard Purdie 2005-09-06 677 goto out;
^1da177e4c3f415 drivers/video/w100fb.c Linus Torvalds 2005-04-16 678
afdd3b3c8ee63c6 drivers/video/w100fb.c Richard Purdie 2005-11-13 679 info=framebuffer_alloc(sizeof(struct w100fb_par), &pdev->dev);
^1da177e4c3f415 drivers/video/w100fb.c Linus Torvalds 2005-04-16 680 if (!info) {
aac51f09d96a0ac drivers/video/w100fb.c Richard Purdie 2005-09-06 681 err = -ENOMEM;
aac51f09d96a0ac drivers/video/w100fb.c Richard Purdie 2005-09-06 682 goto out;
^1da177e4c3f415 drivers/video/w100fb.c Linus Torvalds 2005-04-16 683 }
^1da177e4c3f415 drivers/video/w100fb.c Linus Torvalds 2005-04-16 684
^1da177e4c3f415 drivers/video/w100fb.c Linus Torvalds 2005-04-16 685 par = info->par;
3ae5eaec1d2d9c0 drivers/video/w100fb.c Russell King 2005-11-09 686 platform_set_drvdata(pdev, info);
^1da177e4c3f415 drivers/video/w100fb.c Linus Torvalds 2005-04-16 687
91f8628b7f7fe82 drivers/video/w100fb.c Jingoo Han 2013-09-17 688 inf = dev_get_platdata(&pdev->dev);
aac51f09d96a0ac drivers/video/w100fb.c Richard Purdie 2005-09-06 689 par->chip_id = chip_id;
aac51f09d96a0ac drivers/video/w100fb.c Richard Purdie 2005-09-06 690 par->mach = inf;
aac51f09d96a0ac drivers/video/w100fb.c Richard Purdie 2005-09-06 691 par->fastpll_mode = 0;
aac51f09d96a0ac drivers/video/w100fb.c Richard Purdie 2005-09-06 692 par->blanked = 0;
^1da177e4c3f415 drivers/video/w100fb.c Linus Torvalds 2005-04-16 693
aac51f09d96a0ac drivers/video/w100fb.c Richard Purdie 2005-09-06 694 par->pll_table=w100_get_xtal_table(inf->xtal_freq);
aac51f09d96a0ac drivers/video/w100fb.c Richard Purdie 2005-09-06 695 if (!par->pll_table) {
aac51f09d96a0ac drivers/video/w100fb.c Richard Purdie 2005-09-06 696 printk(KERN_ERR "No matching Xtal definition found\n");
aac51f09d96a0ac drivers/video/w100fb.c Richard Purdie 2005-09-06 697 err = -EINVAL;
aac51f09d96a0ac drivers/video/w100fb.c Richard Purdie 2005-09-06 698 goto out;
aac51f09d96a0ac drivers/video/w100fb.c Richard Purdie 2005-09-06 699 }
^1da177e4c3f415 drivers/video/w100fb.c Linus Torvalds 2005-04-16 700
6da2ec56059c3c7 drivers/video/fbdev/w100fb.c Kees Cook 2018-06-12 701 info->pseudo_palette = kmalloc_array(MAX_PALETTES, sizeof(u32),
6da2ec56059c3c7 drivers/video/fbdev/w100fb.c Kees Cook 2018-06-12 702 GFP_KERNEL);
^1da177e4c3f415 drivers/video/w100fb.c Linus Torvalds 2005-04-16 703 if (!info->pseudo_palette) {
aac51f09d96a0ac drivers/video/w100fb.c Richard Purdie 2005-09-06 704 err = -ENOMEM;
aac51f09d96a0ac drivers/video/w100fb.c Richard Purdie 2005-09-06 705 goto out;
^1da177e4c3f415 drivers/video/w100fb.c Linus Torvalds 2005-04-16 706 }
^1da177e4c3f415 drivers/video/w100fb.c Linus Torvalds 2005-04-16 707
^1da177e4c3f415 drivers/video/w100fb.c Linus Torvalds 2005-04-16 708 info->fbops = &w100fb_ops;
9b0e1c5dd2941ae drivers/video/w100fb.c Alberto Mardegan 2006-03-31 709 info->flags = FBINFO_DEFAULT | FBINFO_HWACCEL_COPYAREA |
9b0e1c5dd2941ae drivers/video/w100fb.c Alberto Mardegan 2006-03-31 710 FBINFO_HWACCEL_FILLRECT;
^1da177e4c3f415 drivers/video/w100fb.c Linus Torvalds 2005-04-16 711 info->node = -1;
aac51f09d96a0ac drivers/video/w100fb.c Richard Purdie 2005-09-06 712 info->screen_base = remapped_fbuf + (W100_FB_BASE-MEM_WINDOW_BASE);
^1da177e4c3f415 drivers/video/w100fb.c Linus Torvalds 2005-04-16 713 info->screen_size = REMAPPED_FB_LEN;
^1da177e4c3f415 drivers/video/w100fb.c Linus Torvalds 2005-04-16 714
aac51f09d96a0ac drivers/video/w100fb.c Richard Purdie 2005-09-06 715 strcpy(info->fix.id, "w100fb");
aac51f09d96a0ac drivers/video/w100fb.c Richard Purdie 2005-09-06 716 info->fix.type = FB_TYPE_PACKED_PIXELS;
aac51f09d96a0ac drivers/video/w100fb.c Richard Purdie 2005-09-06 717 info->fix.type_aux = 0;
aac51f09d96a0ac drivers/video/w100fb.c Richard Purdie 2005-09-06 718 info->fix.accel = FB_ACCEL_NONE;
aac51f09d96a0ac drivers/video/w100fb.c Richard Purdie 2005-09-06 719 info->fix.smem_start = mem->start+W100_FB_BASE;
aac51f09d96a0ac drivers/video/w100fb.c Richard Purdie 2005-09-06 720 info->fix.mmio_start = mem->start+W100_REG_BASE;
aac51f09d96a0ac drivers/video/w100fb.c Richard Purdie 2005-09-06 721 info->fix.mmio_len = W100_REG_LEN;
aac51f09d96a0ac drivers/video/w100fb.c Richard Purdie 2005-09-06 722
aac51f09d96a0ac drivers/video/w100fb.c Richard Purdie 2005-09-06 723 if (fb_alloc_cmap(&info->cmap, 256, 0) < 0) {
aac51f09d96a0ac drivers/video/w100fb.c Richard Purdie 2005-09-06 724 err = -ENOMEM;
aac51f09d96a0ac drivers/video/w100fb.c Richard Purdie 2005-09-06 725 goto out;
aac51f09d96a0ac drivers/video/w100fb.c Richard Purdie 2005-09-06 726 }
aac51f09d96a0ac drivers/video/w100fb.c Richard Purdie 2005-09-06 727
aac51f09d96a0ac drivers/video/w100fb.c Richard Purdie 2005-09-06 728 par->mode = &inf->modelist[0];
aac51f09d96a0ac drivers/video/w100fb.c Richard Purdie 2005-09-06 729 if(inf->init_mode & INIT_MODE_ROTATED) {
aac51f09d96a0ac drivers/video/w100fb.c Richard Purdie 2005-09-06 730 info->var.xres = par->mode->yres;
aac51f09d96a0ac drivers/video/w100fb.c Richard Purdie 2005-09-06 731 info->var.yres = par->mode->xres;
aac51f09d96a0ac drivers/video/w100fb.c Richard Purdie 2005-09-06 732 }
aac51f09d96a0ac drivers/video/w100fb.c Richard Purdie 2005-09-06 733 else {
aac51f09d96a0ac drivers/video/w100fb.c Richard Purdie 2005-09-06 734 info->var.xres = par->mode->xres;
aac51f09d96a0ac drivers/video/w100fb.c Richard Purdie 2005-09-06 735 info->var.yres = par->mode->yres;
aac51f09d96a0ac drivers/video/w100fb.c Richard Purdie 2005-09-06 736 }
aac51f09d96a0ac drivers/video/w100fb.c Richard Purdie 2005-09-06 737
aac51f09d96a0ac drivers/video/w100fb.c Richard Purdie 2005-09-06 738 if(inf->init_mode &= INIT_MODE_FLIPPED)
aac51f09d96a0ac drivers/video/w100fb.c Richard Purdie 2005-09-06 739 par->flip = 1;
aac51f09d96a0ac drivers/video/w100fb.c Richard Purdie 2005-09-06 740 else
aac51f09d96a0ac drivers/video/w100fb.c Richard Purdie 2005-09-06 741 par->flip = 0;
aac51f09d96a0ac drivers/video/w100fb.c Richard Purdie 2005-09-06 742
^1da177e4c3f415 drivers/video/w100fb.c Linus Torvalds 2005-04-16 743 info->var.xres_virtual = info->var.xres;
^1da177e4c3f415 drivers/video/w100fb.c Linus Torvalds 2005-04-16 744 info->var.yres_virtual = info->var.yres;
^1da177e4c3f415 drivers/video/w100fb.c Linus Torvalds 2005-04-16 745 info->var.pixclock = 0x04; /* 171521; */
^1da177e4c3f415 drivers/video/w100fb.c Linus Torvalds 2005-04-16 746 info->var.sync = 0;
^1da177e4c3f415 drivers/video/w100fb.c Linus Torvalds 2005-04-16 747 info->var.grayscale = 0;
^1da177e4c3f415 drivers/video/w100fb.c Linus Torvalds 2005-04-16 748 info->var.xoffset = info->var.yoffset = 0;
^1da177e4c3f415 drivers/video/w100fb.c Linus Torvalds 2005-04-16 749 info->var.accel_flags = 0;
^1da177e4c3f415 drivers/video/w100fb.c Linus Torvalds 2005-04-16 750 info->var.activate = FB_ACTIVATE_NOW;
^1da177e4c3f415 drivers/video/w100fb.c Linus Torvalds 2005-04-16 751
aac51f09d96a0ac drivers/video/w100fb.c Richard Purdie 2005-09-06 752 w100_hw_init(par);
aac51f09d96a0ac drivers/video/w100fb.c Richard Purdie 2005-09-06 753
aac51f09d96a0ac drivers/video/w100fb.c Richard Purdie 2005-09-06 754 if (w100fb_check_var(&info->var, info) < 0) {
aac51f09d96a0ac drivers/video/w100fb.c Richard Purdie 2005-09-06 755 err = -EINVAL;
aac51f09d96a0ac drivers/video/w100fb.c Richard Purdie 2005-09-06 756 goto out;
aac51f09d96a0ac drivers/video/w100fb.c Richard Purdie 2005-09-06 757 }
^1da177e4c3f415 drivers/video/w100fb.c Linus Torvalds 2005-04-16 758
^1da177e4c3f415 drivers/video/w100fb.c Linus Torvalds 2005-04-16 759 if (register_framebuffer(info) < 0) {
aac51f09d96a0ac drivers/video/w100fb.c Richard Purdie 2005-09-06 760 err = -EINVAL;
aac51f09d96a0ac drivers/video/w100fb.c Richard Purdie 2005-09-06 761 goto out;
^1da177e4c3f415 drivers/video/w100fb.c Linus Torvalds 2005-04-16 762 }
^1da177e4c3f415 drivers/video/w100fb.c Linus Torvalds 2005-04-16 763
31b6780c15a4e3a drivers/video/w100fb.c Joe Perches 2013-09-19 764 fb_info(info, "%s frame buffer device\n", info->fix.id);
^1da177e4c3f415 drivers/video/w100fb.c Linus Torvalds 2005-04-16 765 return 0;
aac51f09d96a0ac drivers/video/w100fb.c Richard Purdie 2005-09-06 766 out:
8224c3b166db81a drivers/video/w100fb.c Andrew Morton 2008-04-28 767 if (info) {
aac51f09d96a0ac drivers/video/w100fb.c Richard Purdie 2005-09-06 768 fb_dealloc_cmap(&info->cmap);
aac51f09d96a0ac drivers/video/w100fb.c Richard Purdie 2005-09-06 769 kfree(info->pseudo_palette);
8224c3b166db81a drivers/video/w100fb.c Andrew Morton 2008-04-28 770 }
aac51f09d96a0ac drivers/video/w100fb.c Richard Purdie 2005-09-06 771 if (remapped_fbuf != NULL)
aac51f09d96a0ac drivers/video/w100fb.c Richard Purdie 2005-09-06 @772 iounmap(remapped_fbuf);
aac51f09d96a0ac drivers/video/w100fb.c Richard Purdie 2005-09-06 773 if (remapped_regs != NULL)
aac51f09d96a0ac drivers/video/w100fb.c Richard Purdie 2005-09-06 774 iounmap(remapped_regs);
aac51f09d96a0ac drivers/video/w100fb.c Richard Purdie 2005-09-06 775 if (remapped_base != NULL)
aac51f09d96a0ac drivers/video/w100fb.c Richard Purdie 2005-09-06 776 iounmap(remapped_base);
aac51f09d96a0ac drivers/video/w100fb.c Richard Purdie 2005-09-06 777 if (info)
aac51f09d96a0ac drivers/video/w100fb.c Richard Purdie 2005-09-06 778 framebuffer_release(info);
aac51f09d96a0ac drivers/video/w100fb.c Richard Purdie 2005-09-06 779 return err;
^1da177e4c3f415 drivers/video/w100fb.c Linus Torvalds 2005-04-16 780 }
^1da177e4c3f415 drivers/video/w100fb.c Linus Torvalds 2005-04-16 781
:::::: The code at line 772 was first introduced by commit
:::::: aac51f09d96a0acfb73c1d1c0796358bb47ea07b [PATCH] w100fb: Rewrite for platform independence
:::::: TO: Richard Purdie <rpurdie@rpsys.net>
:::::: CC: Linus Torvalds <torvalds@g5.osdl.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: 26266 bytes --]
^ permalink raw reply [flat|nested] only message in thread
only message in thread, other threads:[~2020-11-13 15:30 UTC | newest]
Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2020-11-13 15:30 drivers/video/fbdev/w100fb.c:772:25: sparse: expected void kernel test robot
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.