* [PATCH 2/2] video: fbdev: pvr2fb: add COMPILE_TEST support [not found] <CGME20190522101651eucas1p18b5ce16f065cc83125b4bd97e141bdcd@eucas1p1.samsung.com> @ 2019-05-22 10:16 ` Bartlomiej Zolnierkiewicz 0 siblings, 0 replies; 7+ messages in thread From: Bartlomiej Zolnierkiewicz @ 2019-05-22 10:16 UTC (permalink / raw) To: linux-fbdev, dri-devel, linux-kernel Add COMPILE_TEST support to pvr2fb driver for better compile testing coverage. While at it mark pvr2fb_interrupt() and pvr2fb_common_init() with __maybe_unused tag (to silence build warnings when !SH_DREAMCAST), also convert mmio_base in struct pvr2fb_par to 'void __iomem *' from 'unsigned long' (needed to silence build warnings on ARM). Signed-off-by: Bartlomiej Zolnierkiewicz <b.zolnierkie@samsung.com> --- drivers/video/fbdev/Kconfig | 3 ++- drivers/video/fbdev/pvr2fb.c | 26 +++++++++++++------------- 2 files changed, 15 insertions(+), 14 deletions(-) Index: b/drivers/video/fbdev/Kconfig =================================================================== --- a/drivers/video/fbdev/Kconfig +++ b/drivers/video/fbdev/Kconfig @@ -807,7 +807,8 @@ config FB_XVR1000 config FB_PVR2 tristate "NEC PowerVR 2 display support" - depends on FB && SH_DREAMCAST + depends on FB && HAS_IOMEM + depends on SH_DREAMCAST || COMPILE_TEST select FB_CFB_FILLRECT select FB_CFB_COPYAREA select FB_CFB_IMAGEBLIT Index: b/drivers/video/fbdev/pvr2fb.c =================================================================== --- a/drivers/video/fbdev/pvr2fb.c +++ b/drivers/video/fbdev/pvr2fb.c @@ -139,7 +139,7 @@ static struct pvr2fb_par { unsigned char is_doublescan; /* Are scanlines output twice? (doublescan) */ unsigned char is_lowres; /* Is horizontal pixel-doubling enabled? */ - unsigned long mmio_base; /* MMIO base */ + void __iomem *mmio_base; /* MMIO base */ u32 palette[16]; } *currentpar; @@ -325,9 +325,9 @@ static int pvr2fb_setcolreg(unsigned int * anything if the cable type has been overidden (via "cable:XX"). */ -#define PCTRA 0xff80002c -#define PDTRA 0xff800030 -#define VOUTC 0xa0702c00 +#define PCTRA ((void __iomem *)0xff80002c) +#define PDTRA ((void __iomem *)0xff800030) +#define VOUTC ((void __iomem *)0xa0702c00) static int pvr2_init_cable(void) { @@ -619,7 +619,7 @@ static void pvr2_do_blank(void) is_blanked = do_blank > 0 ? do_blank : 0; } -static irqreturn_t pvr2fb_interrupt(int irq, void *dev_id) +static irqreturn_t __maybe_unused pvr2fb_interrupt(int irq, void *dev_id) { struct fb_info *info = dev_id; @@ -757,7 +757,7 @@ static int pvr2_get_param(const struct p * in for flexibility anyways. Who knows, maybe someone has tv-out on a * PCI-based version of these things ;-) */ -static int pvr2fb_common_init(void) +static int __maybe_unused pvr2fb_common_init(void) { struct pvr2fb_par *par = currentpar; unsigned long modememused, rev; @@ -770,8 +770,8 @@ static int pvr2fb_common_init(void) goto out_err; } - par->mmio_base = (unsigned long)ioremap_nocache(pvr2_fix.mmio_start, - pvr2_fix.mmio_len); + par->mmio_base = ioremap_nocache(pvr2_fix.mmio_start, + pvr2_fix.mmio_len); if (!par->mmio_base) { printk(KERN_ERR "pvr2fb: Failed to remap mmio space\n"); goto out_err; @@ -838,7 +838,7 @@ out_err: if (fb_info->screen_base) iounmap(fb_info->screen_base); if (par->mmio_base) - iounmap((void *)par->mmio_base); + iounmap(par->mmio_base); return -ENXIO; } @@ -905,8 +905,8 @@ static void __exit pvr2fb_dc_exit(void) fb_info->screen_base = NULL; } if (currentpar->mmio_base) { - iounmap((void *)currentpar->mmio_base); - currentpar->mmio_base = 0; + iounmap(currentpar->mmio_base); + currentpar->mmio_base = NULL; } free_irq(HW_EVENT_VSYNC, fb_info); @@ -955,8 +955,8 @@ static void pvr2fb_pci_remove(struct pci fb_info->screen_base = NULL; } if (currentpar->mmio_base) { - iounmap((void *)currentpar->mmio_base); - currentpar->mmio_base = 0; + iounmap(currentpar->mmio_base); + currentpar->mmio_base = NULL; } pci_release_regions(pdev); ^ permalink raw reply [flat|nested] 7+ messages in thread
* [PATCH 2/2] video: fbdev: pvr2fb: add COMPILE_TEST support @ 2019-05-22 10:16 ` Bartlomiej Zolnierkiewicz 0 siblings, 0 replies; 7+ messages in thread From: Bartlomiej Zolnierkiewicz @ 2019-05-22 10:16 UTC (permalink / raw) To: linux-fbdev, dri-devel, linux-kernel Add COMPILE_TEST support to pvr2fb driver for better compile testing coverage. While at it mark pvr2fb_interrupt() and pvr2fb_common_init() with __maybe_unused tag (to silence build warnings when !SH_DREAMCAST), also convert mmio_base in struct pvr2fb_par to 'void __iomem *' from 'unsigned long' (needed to silence build warnings on ARM). Signed-off-by: Bartlomiej Zolnierkiewicz <b.zolnierkie@samsung.com> --- drivers/video/fbdev/Kconfig | 3 ++- drivers/video/fbdev/pvr2fb.c | 26 +++++++++++++------------- 2 files changed, 15 insertions(+), 14 deletions(-) Index: b/drivers/video/fbdev/Kconfig =================================--- a/drivers/video/fbdev/Kconfig +++ b/drivers/video/fbdev/Kconfig @@ -807,7 +807,8 @@ config FB_XVR1000 config FB_PVR2 tristate "NEC PowerVR 2 display support" - depends on FB && SH_DREAMCAST + depends on FB && HAS_IOMEM + depends on SH_DREAMCAST || COMPILE_TEST select FB_CFB_FILLRECT select FB_CFB_COPYAREA select FB_CFB_IMAGEBLIT Index: b/drivers/video/fbdev/pvr2fb.c =================================--- a/drivers/video/fbdev/pvr2fb.c +++ b/drivers/video/fbdev/pvr2fb.c @@ -139,7 +139,7 @@ static struct pvr2fb_par { unsigned char is_doublescan; /* Are scanlines output twice? (doublescan) */ unsigned char is_lowres; /* Is horizontal pixel-doubling enabled? */ - unsigned long mmio_base; /* MMIO base */ + void __iomem *mmio_base; /* MMIO base */ u32 palette[16]; } *currentpar; @@ -325,9 +325,9 @@ static int pvr2fb_setcolreg(unsigned int * anything if the cable type has been overidden (via "cable:XX"). */ -#define PCTRA 0xff80002c -#define PDTRA 0xff800030 -#define VOUTC 0xa0702c00 +#define PCTRA ((void __iomem *)0xff80002c) +#define PDTRA ((void __iomem *)0xff800030) +#define VOUTC ((void __iomem *)0xa0702c00) static int pvr2_init_cable(void) { @@ -619,7 +619,7 @@ static void pvr2_do_blank(void) is_blanked = do_blank > 0 ? do_blank : 0; } -static irqreturn_t pvr2fb_interrupt(int irq, void *dev_id) +static irqreturn_t __maybe_unused pvr2fb_interrupt(int irq, void *dev_id) { struct fb_info *info = dev_id; @@ -757,7 +757,7 @@ static int pvr2_get_param(const struct p * in for flexibility anyways. Who knows, maybe someone has tv-out on a * PCI-based version of these things ;-) */ -static int pvr2fb_common_init(void) +static int __maybe_unused pvr2fb_common_init(void) { struct pvr2fb_par *par = currentpar; unsigned long modememused, rev; @@ -770,8 +770,8 @@ static int pvr2fb_common_init(void) goto out_err; } - par->mmio_base = (unsigned long)ioremap_nocache(pvr2_fix.mmio_start, - pvr2_fix.mmio_len); + par->mmio_base = ioremap_nocache(pvr2_fix.mmio_start, + pvr2_fix.mmio_len); if (!par->mmio_base) { printk(KERN_ERR "pvr2fb: Failed to remap mmio space\n"); goto out_err; @@ -838,7 +838,7 @@ out_err: if (fb_info->screen_base) iounmap(fb_info->screen_base); if (par->mmio_base) - iounmap((void *)par->mmio_base); + iounmap(par->mmio_base); return -ENXIO; } @@ -905,8 +905,8 @@ static void __exit pvr2fb_dc_exit(void) fb_info->screen_base = NULL; } if (currentpar->mmio_base) { - iounmap((void *)currentpar->mmio_base); - currentpar->mmio_base = 0; + iounmap(currentpar->mmio_base); + currentpar->mmio_base = NULL; } free_irq(HW_EVENT_VSYNC, fb_info); @@ -955,8 +955,8 @@ static void pvr2fb_pci_remove(struct pci fb_info->screen_base = NULL; } if (currentpar->mmio_base) { - iounmap((void *)currentpar->mmio_base); - currentpar->mmio_base = 0; + iounmap(currentpar->mmio_base); + currentpar->mmio_base = NULL; } pci_release_regions(pdev); ^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [PATCH 2/2] video: fbdev: pvr2fb: add COMPILE_TEST support 2019-05-22 10:16 ` Bartlomiej Zolnierkiewicz @ 2019-05-24 8:28 ` kbuild test robot -1 siblings, 0 replies; 7+ messages in thread From: kbuild test robot @ 2019-05-24 8:28 UTC (permalink / raw) To: Bartlomiej Zolnierkiewicz Cc: kbuild-all, linux-fbdev, dri-devel, linux-kernel [-- Attachment #1: Type: text/plain, Size: 14412 bytes --] Hi Bartlomiej, I love your patch! Perhaps something to improve: [auto build test WARNING on linus/master] [also build test WARNING on v5.2-rc1 next-20190524] [if your patch is applied to the wrong git tree, please drop us a note to help improve the system] url: https://github.com/0day-ci/linux/commits/Bartlomiej-Zolnierkiewicz/video-fbdev-pvr2fb-remove-function-prototypes/20190524-145925 config: x86_64-allmodconfig (attached as .config) compiler: gcc-7 (Debian 7.3.0-1) 7.3.0 reproduce: # save the attached .config to linux build tree make ARCH=x86_64 If you fix the issue, kindly add following tag Reported-by: kbuild test robot <lkp@intel.com> All warnings (new ones prefixed by >>): drivers/video//fbdev/pvr2fb.c: In function 'pvr2_get_param': >> drivers/video//fbdev/pvr2fb.c:737:12: warning: cast from pointer to integer of different size [-Wpointer-to-int-cast] return (int)p[i].name; ^ In file included from include/linux/kernel.h:15:0, from include/linux/list.h:9, from include/linux/module.h:9, from drivers/video//fbdev/pvr2fb.c:48: drivers/video//fbdev/pvr2fb.c: In function 'pvr2fb_common_init': >> drivers/video//fbdev/pvr2fb.c:823:3: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast] (char *)pvr2_get_param(cables, NULL, cable_type, 3), ^ include/linux/printk.h:311:34: note: in definition of macro 'pr_info' printk(KERN_INFO pr_fmt(fmt), ##__VA_ARGS__) ^~~~~~~~~~~ >> drivers/video//fbdev/pvr2fb.c:819:2: note: in expansion of macro 'fb_info' fb_info(fb_info, "Mode %dx%d-%d pitch = %ld cable: %s video output: %s\n", ^~~~~~~ drivers/video//fbdev/pvr2fb.c:824:3: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast] (char *)pvr2_get_param(outputs, NULL, video_output, 3)); ^ include/linux/printk.h:311:34: note: in definition of macro 'pr_info' printk(KERN_INFO pr_fmt(fmt), ##__VA_ARGS__) ^~~~~~~~~~~ >> drivers/video//fbdev/pvr2fb.c:819:2: note: in expansion of macro 'fb_info' fb_info(fb_info, "Mode %dx%d-%d pitch = %ld cable: %s video output: %s\n", ^~~~~~~ sparse warnings: (new ones prefixed by >>) >> drivers/video/fbdev/pvr2fb.c:1050:11: sparse: sparse: Using plain integer as NULL pointer >> drivers/video/fbdev/pvr2fb.c:737:46: sparse: sparse: non size-preserving pointer to integer cast >> drivers/video/fbdev/pvr2fb.c:819:9: sparse: sparse: non size-preserving integer to pointer cast >> drivers/video/fbdev/pvr2fb.c:819:9: sparse: sparse: non size-preserving integer to pointer cast vim +/fb_info +819 drivers/video//fbdev/pvr2fb.c 970866e8 drivers/video/fbdev/pvr2fb.c Bartlomiej Zolnierkiewicz 2019-05-22 725 970866e8 drivers/video/fbdev/pvr2fb.c Bartlomiej Zolnierkiewicz 2019-05-22 726 static int pvr2_get_param(const struct pvr2_params *p, const char *s, int val, 970866e8 drivers/video/fbdev/pvr2fb.c Bartlomiej Zolnierkiewicz 2019-05-22 727 int size) 970866e8 drivers/video/fbdev/pvr2fb.c Bartlomiej Zolnierkiewicz 2019-05-22 728 { 970866e8 drivers/video/fbdev/pvr2fb.c Bartlomiej Zolnierkiewicz 2019-05-22 729 int i; 970866e8 drivers/video/fbdev/pvr2fb.c Bartlomiej Zolnierkiewicz 2019-05-22 730 970866e8 drivers/video/fbdev/pvr2fb.c Bartlomiej Zolnierkiewicz 2019-05-22 731 for (i = 0 ; i < size ; i++ ) { 970866e8 drivers/video/fbdev/pvr2fb.c Bartlomiej Zolnierkiewicz 2019-05-22 732 if (s != NULL) { 970866e8 drivers/video/fbdev/pvr2fb.c Bartlomiej Zolnierkiewicz 2019-05-22 733 if (!strncasecmp(p[i].name, s, strlen(s))) 970866e8 drivers/video/fbdev/pvr2fb.c Bartlomiej Zolnierkiewicz 2019-05-22 734 return p[i].val; 970866e8 drivers/video/fbdev/pvr2fb.c Bartlomiej Zolnierkiewicz 2019-05-22 735 } else { 970866e8 drivers/video/fbdev/pvr2fb.c Bartlomiej Zolnierkiewicz 2019-05-22 736 if (p[i].val == val) 970866e8 drivers/video/fbdev/pvr2fb.c Bartlomiej Zolnierkiewicz 2019-05-22 @737 return (int)p[i].name; 970866e8 drivers/video/fbdev/pvr2fb.c Bartlomiej Zolnierkiewicz 2019-05-22 738 } 970866e8 drivers/video/fbdev/pvr2fb.c Bartlomiej Zolnierkiewicz 2019-05-22 739 } 970866e8 drivers/video/fbdev/pvr2fb.c Bartlomiej Zolnierkiewicz 2019-05-22 740 return -1; 970866e8 drivers/video/fbdev/pvr2fb.c Bartlomiej Zolnierkiewicz 2019-05-22 741 } 970866e8 drivers/video/fbdev/pvr2fb.c Bartlomiej Zolnierkiewicz 2019-05-22 742 ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 743 /** ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 744 * pvr2fb_common_init ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 745 * ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 746 * Common init code for the PVR2 chips. ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 747 * ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 748 * This mostly takes care of the common aspects of the fb setup and ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 749 * registration. It's expected that the board-specific init code has ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 750 * already setup pvr2_fix with something meaningful at this point. ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 751 * ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 752 * Device info reporting is also done here, as well as picking a sane ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 753 * default from the modedb. For board-specific modelines, simply define ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 754 * a per-board modedb. ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 755 * ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 756 * Also worth noting is that the cable and video output types are likely ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 757 * always going to be VGA for the PCI-based PVR2 boards, but we leave this ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 758 * in for flexibility anyways. Who knows, maybe someone has tv-out on a ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 759 * PCI-based version of these things ;-) ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 760 */ c76c323b drivers/video/fbdev/pvr2fb.c Bartlomiej Zolnierkiewicz 2019-05-22 761 static int __maybe_unused pvr2fb_common_init(void) ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 762 { ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 763 struct pvr2fb_par *par = currentpar; ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 764 unsigned long modememused, rev; ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 765 ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 766 fb_info->screen_base = ioremap_nocache(pvr2_fix.smem_start, ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 767 pvr2_fix.smem_len); ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 768 ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 769 if (!fb_info->screen_base) { ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 770 printk(KERN_ERR "pvr2fb: Failed to remap smem space\n"); ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 771 goto out_err; ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 772 } ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 773 c76c323b drivers/video/fbdev/pvr2fb.c Bartlomiej Zolnierkiewicz 2019-05-22 774 par->mmio_base = ioremap_nocache(pvr2_fix.mmio_start, ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 775 pvr2_fix.mmio_len); ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 776 if (!par->mmio_base) { ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 777 printk(KERN_ERR "pvr2fb: Failed to remap mmio space\n"); ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 778 goto out_err; ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 779 } ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 780 d2b06a8b drivers/video/pvr2fb.c Paul Mundt 2006-09-27 781 fb_memset(fb_info->screen_base, 0, pvr2_fix.smem_len); ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 782 ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 783 pvr2_fix.ypanstep = nopan ? 0 : 1; ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 784 pvr2_fix.ywrapstep = nowrap ? 0 : 1; ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 785 ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 786 fb_info->fbops = &pvr2fb_ops; ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 787 fb_info->fix = pvr2_fix; ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 788 fb_info->par = currentpar; 9cd1c674 drivers/video/pvr2fb.c Antonino A. Daplas 2007-08-10 789 fb_info->pseudo_palette = currentpar->palette; ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 790 fb_info->flags = FBINFO_DEFAULT | FBINFO_HWACCEL_YPAN; ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 791 ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 792 if (video_output == VO_VGA) ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 793 defmode = DEFMODE_VGA; ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 794 ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 795 if (!mode_option) ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 796 mode_option = "640x480@60"; ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 797 ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 798 if (!fb_find_mode(&fb_info->var, fb_info, mode_option, pvr2_modedb, ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 799 NUM_TOTAL_MODES, &pvr2_modedb[defmode], 16)) ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 800 fb_info->var = pvr2_var; ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 801 ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 802 fb_alloc_cmap(&fb_info->cmap, 256, 0); ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 803 ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 804 if (register_framebuffer(fb_info) < 0) ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 805 goto out_err; 306c869c drivers/video/pvr2fb.c Adrian McMenamin 2007-08-10 806 /*Must write PIXDEPTH to register before anything is displayed - so force init */ 306c869c drivers/video/pvr2fb.c Adrian McMenamin 2007-08-10 807 pvr2_init_display(fb_info); ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 808 ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 809 modememused = get_line_length(fb_info->var.xres_virtual, ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 810 fb_info->var.bits_per_pixel); ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 811 modememused *= fb_info->var.yres_virtual; ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 812 ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 813 rev = fb_readl(par->mmio_base + 0x04); ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 814 31b6780c drivers/video/pvr2fb.c Joe Perches 2013-09-19 815 fb_info(fb_info, "%s (rev %ld.%ld) frame buffer device, using %ldk/%ldk of video memory\n", 31b6780c drivers/video/pvr2fb.c Joe Perches 2013-09-19 816 fb_info->fix.id, (rev >> 4) & 0x0f, rev & 0x0f, 31b6780c drivers/video/pvr2fb.c Joe Perches 2013-09-19 817 modememused >> 10, 31b6780c drivers/video/pvr2fb.c Joe Perches 2013-09-19 818 (unsigned long)(fb_info->fix.smem_len >> 10)); 31b6780c drivers/video/pvr2fb.c Joe Perches 2013-09-19 @819 fb_info(fb_info, "Mode %dx%d-%d pitch = %ld cable: %s video output: %s\n", 31b6780c drivers/video/pvr2fb.c Joe Perches 2013-09-19 820 fb_info->var.xres, fb_info->var.yres, ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 821 fb_info->var.bits_per_pixel, ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 822 get_line_length(fb_info->var.xres, fb_info->var.bits_per_pixel), ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 @823 (char *)pvr2_get_param(cables, NULL, cable_type, 3), ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 824 (char *)pvr2_get_param(outputs, NULL, video_output, 3)); ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 825 :::::: The code at line 819 was first introduced by commit :::::: 31b6780c15a4e3a90fe260e977f5186772ce7afb framebuffer: Use fb_<level> :::::: TO: Joe Perches <joe@perches.com> :::::: CC: Tomi Valkeinen <tomi.valkeinen@ti.com> --- 0-DAY kernel test infrastructure Open Source Technology Center https://lists.01.org/pipermail/kbuild-all Intel Corporation [-- Attachment #2: .config.gz --] [-- Type: application/gzip, Size: 69493 bytes --] ^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [PATCH 2/2] video: fbdev: pvr2fb: add COMPILE_TEST support @ 2019-05-24 8:28 ` kbuild test robot 0 siblings, 0 replies; 7+ messages in thread From: kbuild test robot @ 2019-05-24 8:28 UTC (permalink / raw) To: Bartlomiej Zolnierkiewicz Cc: linux-fbdev, kbuild-all, dri-devel, linux-kernel [-- Attachment #1: Type: text/plain, Size: 14412 bytes --] Hi Bartlomiej, I love your patch! Perhaps something to improve: [auto build test WARNING on linus/master] [also build test WARNING on v5.2-rc1 next-20190524] [if your patch is applied to the wrong git tree, please drop us a note to help improve the system] url: https://github.com/0day-ci/linux/commits/Bartlomiej-Zolnierkiewicz/video-fbdev-pvr2fb-remove-function-prototypes/20190524-145925 config: x86_64-allmodconfig (attached as .config) compiler: gcc-7 (Debian 7.3.0-1) 7.3.0 reproduce: # save the attached .config to linux build tree make ARCH=x86_64 If you fix the issue, kindly add following tag Reported-by: kbuild test robot <lkp@intel.com> All warnings (new ones prefixed by >>): drivers/video//fbdev/pvr2fb.c: In function 'pvr2_get_param': >> drivers/video//fbdev/pvr2fb.c:737:12: warning: cast from pointer to integer of different size [-Wpointer-to-int-cast] return (int)p[i].name; ^ In file included from include/linux/kernel.h:15:0, from include/linux/list.h:9, from include/linux/module.h:9, from drivers/video//fbdev/pvr2fb.c:48: drivers/video//fbdev/pvr2fb.c: In function 'pvr2fb_common_init': >> drivers/video//fbdev/pvr2fb.c:823:3: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast] (char *)pvr2_get_param(cables, NULL, cable_type, 3), ^ include/linux/printk.h:311:34: note: in definition of macro 'pr_info' printk(KERN_INFO pr_fmt(fmt), ##__VA_ARGS__) ^~~~~~~~~~~ >> drivers/video//fbdev/pvr2fb.c:819:2: note: in expansion of macro 'fb_info' fb_info(fb_info, "Mode %dx%d-%d pitch = %ld cable: %s video output: %s\n", ^~~~~~~ drivers/video//fbdev/pvr2fb.c:824:3: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast] (char *)pvr2_get_param(outputs, NULL, video_output, 3)); ^ include/linux/printk.h:311:34: note: in definition of macro 'pr_info' printk(KERN_INFO pr_fmt(fmt), ##__VA_ARGS__) ^~~~~~~~~~~ >> drivers/video//fbdev/pvr2fb.c:819:2: note: in expansion of macro 'fb_info' fb_info(fb_info, "Mode %dx%d-%d pitch = %ld cable: %s video output: %s\n", ^~~~~~~ sparse warnings: (new ones prefixed by >>) >> drivers/video/fbdev/pvr2fb.c:1050:11: sparse: sparse: Using plain integer as NULL pointer >> drivers/video/fbdev/pvr2fb.c:737:46: sparse: sparse: non size-preserving pointer to integer cast >> drivers/video/fbdev/pvr2fb.c:819:9: sparse: sparse: non size-preserving integer to pointer cast >> drivers/video/fbdev/pvr2fb.c:819:9: sparse: sparse: non size-preserving integer to pointer cast vim +/fb_info +819 drivers/video//fbdev/pvr2fb.c 970866e8 drivers/video/fbdev/pvr2fb.c Bartlomiej Zolnierkiewicz 2019-05-22 725 970866e8 drivers/video/fbdev/pvr2fb.c Bartlomiej Zolnierkiewicz 2019-05-22 726 static int pvr2_get_param(const struct pvr2_params *p, const char *s, int val, 970866e8 drivers/video/fbdev/pvr2fb.c Bartlomiej Zolnierkiewicz 2019-05-22 727 int size) 970866e8 drivers/video/fbdev/pvr2fb.c Bartlomiej Zolnierkiewicz 2019-05-22 728 { 970866e8 drivers/video/fbdev/pvr2fb.c Bartlomiej Zolnierkiewicz 2019-05-22 729 int i; 970866e8 drivers/video/fbdev/pvr2fb.c Bartlomiej Zolnierkiewicz 2019-05-22 730 970866e8 drivers/video/fbdev/pvr2fb.c Bartlomiej Zolnierkiewicz 2019-05-22 731 for (i = 0 ; i < size ; i++ ) { 970866e8 drivers/video/fbdev/pvr2fb.c Bartlomiej Zolnierkiewicz 2019-05-22 732 if (s != NULL) { 970866e8 drivers/video/fbdev/pvr2fb.c Bartlomiej Zolnierkiewicz 2019-05-22 733 if (!strncasecmp(p[i].name, s, strlen(s))) 970866e8 drivers/video/fbdev/pvr2fb.c Bartlomiej Zolnierkiewicz 2019-05-22 734 return p[i].val; 970866e8 drivers/video/fbdev/pvr2fb.c Bartlomiej Zolnierkiewicz 2019-05-22 735 } else { 970866e8 drivers/video/fbdev/pvr2fb.c Bartlomiej Zolnierkiewicz 2019-05-22 736 if (p[i].val == val) 970866e8 drivers/video/fbdev/pvr2fb.c Bartlomiej Zolnierkiewicz 2019-05-22 @737 return (int)p[i].name; 970866e8 drivers/video/fbdev/pvr2fb.c Bartlomiej Zolnierkiewicz 2019-05-22 738 } 970866e8 drivers/video/fbdev/pvr2fb.c Bartlomiej Zolnierkiewicz 2019-05-22 739 } 970866e8 drivers/video/fbdev/pvr2fb.c Bartlomiej Zolnierkiewicz 2019-05-22 740 return -1; 970866e8 drivers/video/fbdev/pvr2fb.c Bartlomiej Zolnierkiewicz 2019-05-22 741 } 970866e8 drivers/video/fbdev/pvr2fb.c Bartlomiej Zolnierkiewicz 2019-05-22 742 ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 743 /** ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 744 * pvr2fb_common_init ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 745 * ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 746 * Common init code for the PVR2 chips. ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 747 * ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 748 * This mostly takes care of the common aspects of the fb setup and ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 749 * registration. It's expected that the board-specific init code has ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 750 * already setup pvr2_fix with something meaningful at this point. ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 751 * ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 752 * Device info reporting is also done here, as well as picking a sane ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 753 * default from the modedb. For board-specific modelines, simply define ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 754 * a per-board modedb. ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 755 * ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 756 * Also worth noting is that the cable and video output types are likely ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 757 * always going to be VGA for the PCI-based PVR2 boards, but we leave this ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 758 * in for flexibility anyways. Who knows, maybe someone has tv-out on a ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 759 * PCI-based version of these things ;-) ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 760 */ c76c323b drivers/video/fbdev/pvr2fb.c Bartlomiej Zolnierkiewicz 2019-05-22 761 static int __maybe_unused pvr2fb_common_init(void) ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 762 { ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 763 struct pvr2fb_par *par = currentpar; ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 764 unsigned long modememused, rev; ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 765 ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 766 fb_info->screen_base = ioremap_nocache(pvr2_fix.smem_start, ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 767 pvr2_fix.smem_len); ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 768 ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 769 if (!fb_info->screen_base) { ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 770 printk(KERN_ERR "pvr2fb: Failed to remap smem space\n"); ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 771 goto out_err; ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 772 } ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 773 c76c323b drivers/video/fbdev/pvr2fb.c Bartlomiej Zolnierkiewicz 2019-05-22 774 par->mmio_base = ioremap_nocache(pvr2_fix.mmio_start, ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 775 pvr2_fix.mmio_len); ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 776 if (!par->mmio_base) { ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 777 printk(KERN_ERR "pvr2fb: Failed to remap mmio space\n"); ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 778 goto out_err; ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 779 } ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 780 d2b06a8b drivers/video/pvr2fb.c Paul Mundt 2006-09-27 781 fb_memset(fb_info->screen_base, 0, pvr2_fix.smem_len); ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 782 ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 783 pvr2_fix.ypanstep = nopan ? 0 : 1; ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 784 pvr2_fix.ywrapstep = nowrap ? 0 : 1; ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 785 ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 786 fb_info->fbops = &pvr2fb_ops; ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 787 fb_info->fix = pvr2_fix; ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 788 fb_info->par = currentpar; 9cd1c674 drivers/video/pvr2fb.c Antonino A. Daplas 2007-08-10 789 fb_info->pseudo_palette = currentpar->palette; ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 790 fb_info->flags = FBINFO_DEFAULT | FBINFO_HWACCEL_YPAN; ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 791 ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 792 if (video_output == VO_VGA) ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 793 defmode = DEFMODE_VGA; ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 794 ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 795 if (!mode_option) ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 796 mode_option = "640x480@60"; ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 797 ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 798 if (!fb_find_mode(&fb_info->var, fb_info, mode_option, pvr2_modedb, ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 799 NUM_TOTAL_MODES, &pvr2_modedb[defmode], 16)) ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 800 fb_info->var = pvr2_var; ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 801 ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 802 fb_alloc_cmap(&fb_info->cmap, 256, 0); ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 803 ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 804 if (register_framebuffer(fb_info) < 0) ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 805 goto out_err; 306c869c drivers/video/pvr2fb.c Adrian McMenamin 2007-08-10 806 /*Must write PIXDEPTH to register before anything is displayed - so force init */ 306c869c drivers/video/pvr2fb.c Adrian McMenamin 2007-08-10 807 pvr2_init_display(fb_info); ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 808 ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 809 modememused = get_line_length(fb_info->var.xres_virtual, ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 810 fb_info->var.bits_per_pixel); ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 811 modememused *= fb_info->var.yres_virtual; ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 812 ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 813 rev = fb_readl(par->mmio_base + 0x04); ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 814 31b6780c drivers/video/pvr2fb.c Joe Perches 2013-09-19 815 fb_info(fb_info, "%s (rev %ld.%ld) frame buffer device, using %ldk/%ldk of video memory\n", 31b6780c drivers/video/pvr2fb.c Joe Perches 2013-09-19 816 fb_info->fix.id, (rev >> 4) & 0x0f, rev & 0x0f, 31b6780c drivers/video/pvr2fb.c Joe Perches 2013-09-19 817 modememused >> 10, 31b6780c drivers/video/pvr2fb.c Joe Perches 2013-09-19 818 (unsigned long)(fb_info->fix.smem_len >> 10)); 31b6780c drivers/video/pvr2fb.c Joe Perches 2013-09-19 @819 fb_info(fb_info, "Mode %dx%d-%d pitch = %ld cable: %s video output: %s\n", 31b6780c drivers/video/pvr2fb.c Joe Perches 2013-09-19 820 fb_info->var.xres, fb_info->var.yres, ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 821 fb_info->var.bits_per_pixel, ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 822 get_line_length(fb_info->var.xres, fb_info->var.bits_per_pixel), ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 @823 (char *)pvr2_get_param(cables, NULL, cable_type, 3), ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 824 (char *)pvr2_get_param(outputs, NULL, video_output, 3)); ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 825 :::::: The code at line 819 was first introduced by commit :::::: 31b6780c15a4e3a90fe260e977f5186772ce7afb framebuffer: Use fb_<level> :::::: TO: Joe Perches <joe@perches.com> :::::: CC: Tomi Valkeinen <tomi.valkeinen@ti.com> --- 0-DAY kernel test infrastructure Open Source Technology Center https://lists.01.org/pipermail/kbuild-all Intel Corporation [-- Attachment #2: .config.gz --] [-- Type: application/gzip, Size: 69493 bytes --] [-- Attachment #3: Type: text/plain, Size: 159 bytes --] _______________________________________________ dri-devel mailing list dri-devel@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/dri-devel ^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [PATCH 2/2] video: fbdev: pvr2fb: add COMPILE_TEST support 2019-05-22 10:16 ` Bartlomiej Zolnierkiewicz (?) @ 2019-05-27 4:13 ` kbuild test robot -1 siblings, 0 replies; 7+ messages in thread From: kbuild test robot @ 2019-05-27 4:13 UTC (permalink / raw) To: Bartlomiej Zolnierkiewicz Cc: kbuild-all, linux-fbdev, dri-devel, linux-kernel Hi Bartlomiej, I love your patch! Perhaps something to improve: [auto build test WARNING on linus/master] [also build test WARNING on v5.2-rc2 next-20190524] [if your patch is applied to the wrong git tree, please drop us a note to help improve the system] url: https://github.com/0day-ci/linux/commits/Bartlomiej-Zolnierkiewicz/video-fbdev-pvr2fb-remove-function-prototypes/20190524-145925 If you fix the issue, kindly add following tag Reported-by: kbuild test robot <lkp@intel.com> smatch warnings: drivers/video/fbdev/pvr2fb.c:467 pvr2fb_check_var() warn: unsigned 'var->xoffset' is never less than zero. drivers/video/fbdev/pvr2fb.c:467 pvr2fb_check_var() warn: unsigned 'var->yoffset' is never less than zero. vim +467 drivers/video/fbdev/pvr2fb.c ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 430 ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 431 static int pvr2fb_check_var(struct fb_var_screeninfo *var, struct fb_info *info) ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 432 { ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 433 struct pvr2fb_par *par = (struct pvr2fb_par *)info->par; ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 434 unsigned int vtotal, hsync_total; ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 435 unsigned long line_length; ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 436 ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 437 if (var->pixclock != TV_CLK && var->pixclock != VGA_CLK) { ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 438 pr_debug("Invalid pixclock value %d\n", var->pixclock); ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 439 return -EINVAL; ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 440 } ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 441 ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 442 if (var->xres < 320) ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 443 var->xres = 320; ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 444 if (var->yres < 240) ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 445 var->yres = 240; ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 446 if (var->xres_virtual < var->xres) ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 447 var->xres_virtual = var->xres; ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 448 if (var->yres_virtual < var->yres) ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 449 var->yres_virtual = var->yres; ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 450 ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 451 if (var->bits_per_pixel <= 16) ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 452 var->bits_per_pixel = 16; ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 453 else if (var->bits_per_pixel <= 24) ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 454 var->bits_per_pixel = 24; ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 455 else if (var->bits_per_pixel <= 32) ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 456 var->bits_per_pixel = 32; ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 457 ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 458 set_color_bitfields(var); ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 459 ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 460 if (var->vmode & FB_VMODE_YWRAP) { ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 461 if (var->xoffset || var->yoffset < 0 || ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 462 var->yoffset >= var->yres_virtual) { ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 463 var->xoffset = var->yoffset = 0; ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 464 } else { ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 465 if (var->xoffset > var->xres_virtual - var->xres || ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 466 var->yoffset > var->yres_virtual - var->yres || ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 @467 var->xoffset < 0 || var->yoffset < 0) ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 468 var->xoffset = var->yoffset = 0; ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 469 } ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 470 } else { ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 471 var->xoffset = var->yoffset = 0; ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 472 } ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 473 ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 474 /* ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 475 * XXX: Need to be more creative with this (i.e. allow doublecan for ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 476 * PAL/NTSC output). ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 477 */ ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 478 if (var->yres < 480 && video_output == VO_VGA) ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 479 var->vmode |= FB_VMODE_DOUBLE; ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 480 ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 481 if (video_output != VO_VGA) { ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 482 var->sync |= FB_SYNC_BROADCAST; ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 483 var->vmode |= FB_VMODE_INTERLACED; ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 484 } else { ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 485 var->sync &= ~FB_SYNC_BROADCAST; ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 486 var->vmode &= ~FB_VMODE_INTERLACED; fcb1fec7 drivers/video/pvr2fb.c Paul Mundt 2008-03-06 487 var->vmode |= FB_VMODE_NONINTERLACED; ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 488 } ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 489 ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 490 if ((var->activate & FB_ACTIVATE_MASK) != FB_ACTIVATE_TEST) { ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 491 var->right_margin = par->borderstop_h - ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 492 (par->diwstart_h + var->xres); ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 493 var->left_margin = par->diwstart_h - par->borderstart_h; ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 494 var->hsync_len = par->borderstart_h + ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 495 (par->hsync_total - par->borderstop_h); ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 496 ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 497 var->upper_margin = par->diwstart_v - par->borderstart_v; ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 498 var->lower_margin = par->borderstop_v - ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 499 (par->diwstart_v + var->yres); ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 500 var->vsync_len = par->borderstop_v + ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 501 (par->vsync_total - par->borderstop_v); ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 502 } ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 503 ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 504 hsync_total = var->left_margin + var->xres + var->right_margin + ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 505 var->hsync_len; ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 506 vtotal = var->upper_margin + var->yres + var->lower_margin + ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 507 var->vsync_len; ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 508 ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 509 if (var->sync & FB_SYNC_BROADCAST) { ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 510 if (var->vmode & FB_VMODE_INTERLACED) ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 511 vtotal /= 2; ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 512 if (vtotal > (PAL_VTOTAL + NTSC_VTOTAL)/2) { ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 513 /* PAL video output */ ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 514 /* XXX: Should be using a range here ... ? */ ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 515 if (hsync_total != PAL_HTOTAL) { ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 516 pr_debug("invalid hsync total for PAL\n"); ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 517 return -EINVAL; ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 518 } ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 519 } else { ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 520 /* NTSC video output */ ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 521 if (hsync_total != NTSC_HTOTAL) { ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 522 pr_debug("invalid hsync total for NTSC\n"); ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 523 return -EINVAL; ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 524 } ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 525 } ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 526 } ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 527 ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 528 /* Check memory sizes */ ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 529 line_length = get_line_length(var->xres_virtual, var->bits_per_pixel); ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 530 if (line_length * var->yres_virtual > info->fix.smem_len) ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 531 return -ENOMEM; ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 532 ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 533 return 0; ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 534 } ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 535 :::::: The code at line 467 was first introduced by commit :::::: 1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 Linux-2.6.12-rc2 :::::: TO: Linus Torvalds <torvalds@ppc970.osdl.org> :::::: CC: Linus Torvalds <torvalds@ppc970.osdl.org> --- 0-DAY kernel test infrastructure Open Source Technology Center https://lists.01.org/pipermail/kbuild-all Intel Corporation ^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [PATCH 2/2] video: fbdev: pvr2fb: add COMPILE_TEST support @ 2019-05-27 4:13 ` kbuild test robot 0 siblings, 0 replies; 7+ messages in thread From: kbuild test robot @ 2019-05-27 4:13 UTC (permalink / raw) To: Bartlomiej Zolnierkiewicz Cc: linux-fbdev, kbuild-all, dri-devel, linux-kernel Hi Bartlomiej, I love your patch! Perhaps something to improve: [auto build test WARNING on linus/master] [also build test WARNING on v5.2-rc2 next-20190524] [if your patch is applied to the wrong git tree, please drop us a note to help improve the system] url: https://github.com/0day-ci/linux/commits/Bartlomiej-Zolnierkiewicz/video-fbdev-pvr2fb-remove-function-prototypes/20190524-145925 If you fix the issue, kindly add following tag Reported-by: kbuild test robot <lkp@intel.com> smatch warnings: drivers/video/fbdev/pvr2fb.c:467 pvr2fb_check_var() warn: unsigned 'var->xoffset' is never less than zero. drivers/video/fbdev/pvr2fb.c:467 pvr2fb_check_var() warn: unsigned 'var->yoffset' is never less than zero. vim +467 drivers/video/fbdev/pvr2fb.c ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 430 ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 431 static int pvr2fb_check_var(struct fb_var_screeninfo *var, struct fb_info *info) ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 432 { ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 433 struct pvr2fb_par *par = (struct pvr2fb_par *)info->par; ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 434 unsigned int vtotal, hsync_total; ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 435 unsigned long line_length; ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 436 ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 437 if (var->pixclock != TV_CLK && var->pixclock != VGA_CLK) { ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 438 pr_debug("Invalid pixclock value %d\n", var->pixclock); ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 439 return -EINVAL; ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 440 } ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 441 ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 442 if (var->xres < 320) ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 443 var->xres = 320; ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 444 if (var->yres < 240) ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 445 var->yres = 240; ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 446 if (var->xres_virtual < var->xres) ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 447 var->xres_virtual = var->xres; ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 448 if (var->yres_virtual < var->yres) ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 449 var->yres_virtual = var->yres; ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 450 ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 451 if (var->bits_per_pixel <= 16) ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 452 var->bits_per_pixel = 16; ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 453 else if (var->bits_per_pixel <= 24) ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 454 var->bits_per_pixel = 24; ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 455 else if (var->bits_per_pixel <= 32) ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 456 var->bits_per_pixel = 32; ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 457 ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 458 set_color_bitfields(var); ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 459 ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 460 if (var->vmode & FB_VMODE_YWRAP) { ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 461 if (var->xoffset || var->yoffset < 0 || ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 462 var->yoffset >= var->yres_virtual) { ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 463 var->xoffset = var->yoffset = 0; ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 464 } else { ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 465 if (var->xoffset > var->xres_virtual - var->xres || ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 466 var->yoffset > var->yres_virtual - var->yres || ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 @467 var->xoffset < 0 || var->yoffset < 0) ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 468 var->xoffset = var->yoffset = 0; ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 469 } ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 470 } else { ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 471 var->xoffset = var->yoffset = 0; ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 472 } ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 473 ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 474 /* ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 475 * XXX: Need to be more creative with this (i.e. allow doublecan for ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 476 * PAL/NTSC output). ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 477 */ ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 478 if (var->yres < 480 && video_output == VO_VGA) ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 479 var->vmode |= FB_VMODE_DOUBLE; ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 480 ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 481 if (video_output != VO_VGA) { ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 482 var->sync |= FB_SYNC_BROADCAST; ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 483 var->vmode |= FB_VMODE_INTERLACED; ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 484 } else { ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 485 var->sync &= ~FB_SYNC_BROADCAST; ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 486 var->vmode &= ~FB_VMODE_INTERLACED; fcb1fec7 drivers/video/pvr2fb.c Paul Mundt 2008-03-06 487 var->vmode |= FB_VMODE_NONINTERLACED; ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 488 } ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 489 ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 490 if ((var->activate & FB_ACTIVATE_MASK) != FB_ACTIVATE_TEST) { ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 491 var->right_margin = par->borderstop_h - ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 492 (par->diwstart_h + var->xres); ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 493 var->left_margin = par->diwstart_h - par->borderstart_h; ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 494 var->hsync_len = par->borderstart_h + ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 495 (par->hsync_total - par->borderstop_h); ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 496 ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 497 var->upper_margin = par->diwstart_v - par->borderstart_v; ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 498 var->lower_margin = par->borderstop_v - ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 499 (par->diwstart_v + var->yres); ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 500 var->vsync_len = par->borderstop_v + ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 501 (par->vsync_total - par->borderstop_v); ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 502 } ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 503 ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 504 hsync_total = var->left_margin + var->xres + var->right_margin + ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 505 var->hsync_len; ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 506 vtotal = var->upper_margin + var->yres + var->lower_margin + ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 507 var->vsync_len; ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 508 ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 509 if (var->sync & FB_SYNC_BROADCAST) { ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 510 if (var->vmode & FB_VMODE_INTERLACED) ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 511 vtotal /= 2; ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 512 if (vtotal > (PAL_VTOTAL + NTSC_VTOTAL)/2) { ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 513 /* PAL video output */ ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 514 /* XXX: Should be using a range here ... ? */ ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 515 if (hsync_total != PAL_HTOTAL) { ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 516 pr_debug("invalid hsync total for PAL\n"); ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 517 return -EINVAL; ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 518 } ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 519 } else { ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 520 /* NTSC video output */ ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 521 if (hsync_total != NTSC_HTOTAL) { ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 522 pr_debug("invalid hsync total for NTSC\n"); ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 523 return -EINVAL; ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 524 } ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 525 } ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 526 } ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 527 ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 528 /* Check memory sizes */ ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 529 line_length = get_line_length(var->xres_virtual, var->bits_per_pixel); ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 530 if (line_length * var->yres_virtual > info->fix.smem_len) ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 531 return -ENOMEM; ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 532 ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 533 return 0; ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 534 } ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 535 :::::: The code at line 467 was first introduced by commit :::::: 1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 Linux-2.6.12-rc2 :::::: TO: Linus Torvalds <torvalds@ppc970.osdl.org> :::::: CC: Linus Torvalds <torvalds@ppc970.osdl.org> --- 0-DAY kernel test infrastructure Open Source Technology Center https://lists.01.org/pipermail/kbuild-all Intel Corporation _______________________________________________ dri-devel mailing list dri-devel@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/dri-devel ^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [PATCH 2/2] video: fbdev: pvr2fb: add COMPILE_TEST support @ 2019-05-27 4:13 ` kbuild test robot 0 siblings, 0 replies; 7+ messages in thread From: kbuild test robot @ 2019-05-27 4:13 UTC (permalink / raw) To: Bartlomiej Zolnierkiewicz Cc: linux-fbdev, kbuild-all, dri-devel, linux-kernel Hi Bartlomiej, I love your patch! Perhaps something to improve: [auto build test WARNING on linus/master] [also build test WARNING on v5.2-rc2 next-20190524] [if your patch is applied to the wrong git tree, please drop us a note to help improve the system] url: https://github.com/0day-ci/linux/commits/Bartlomiej-Zolnierkiewicz/video-fbdev-pvr2fb-remove-function-prototypes/20190524-145925 If you fix the issue, kindly add following tag Reported-by: kbuild test robot <lkp@intel.com> smatch warnings: drivers/video/fbdev/pvr2fb.c:467 pvr2fb_check_var() warn: unsigned 'var->xoffset' is never less than zero. drivers/video/fbdev/pvr2fb.c:467 pvr2fb_check_var() warn: unsigned 'var->yoffset' is never less than zero. vim +467 drivers/video/fbdev/pvr2fb.c ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 430 ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 431 static int pvr2fb_check_var(struct fb_var_screeninfo *var, struct fb_info *info) ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 432 { ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 433 struct pvr2fb_par *par = (struct pvr2fb_par *)info->par; ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 434 unsigned int vtotal, hsync_total; ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 435 unsigned long line_length; ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 436 ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 437 if (var->pixclock != TV_CLK && var->pixclock != VGA_CLK) { ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 438 pr_debug("Invalid pixclock value %d\n", var->pixclock); ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 439 return -EINVAL; ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 440 } ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 441 ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 442 if (var->xres < 320) ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 443 var->xres = 320; ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 444 if (var->yres < 240) ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 445 var->yres = 240; ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 446 if (var->xres_virtual < var->xres) ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 447 var->xres_virtual = var->xres; ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 448 if (var->yres_virtual < var->yres) ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 449 var->yres_virtual = var->yres; ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 450 ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 451 if (var->bits_per_pixel <= 16) ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 452 var->bits_per_pixel = 16; ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 453 else if (var->bits_per_pixel <= 24) ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 454 var->bits_per_pixel = 24; ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 455 else if (var->bits_per_pixel <= 32) ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 456 var->bits_per_pixel = 32; ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 457 ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 458 set_color_bitfields(var); ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 459 ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 460 if (var->vmode & FB_VMODE_YWRAP) { ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 461 if (var->xoffset || var->yoffset < 0 || ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 462 var->yoffset >= var->yres_virtual) { ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 463 var->xoffset = var->yoffset = 0; ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 464 } else { ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 465 if (var->xoffset > var->xres_virtual - var->xres || ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 466 var->yoffset > var->yres_virtual - var->yres || ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 @467 var->xoffset < 0 || var->yoffset < 0) ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 468 var->xoffset = var->yoffset = 0; ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 469 } ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 470 } else { ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 471 var->xoffset = var->yoffset = 0; ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 472 } ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 473 ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 474 /* ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 475 * XXX: Need to be more creative with this (i.e. allow doublecan for ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 476 * PAL/NTSC output). ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 477 */ ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 478 if (var->yres < 480 && video_output = VO_VGA) ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 479 var->vmode |= FB_VMODE_DOUBLE; ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 480 ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 481 if (video_output != VO_VGA) { ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 482 var->sync |= FB_SYNC_BROADCAST; ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 483 var->vmode |= FB_VMODE_INTERLACED; ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 484 } else { ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 485 var->sync &= ~FB_SYNC_BROADCAST; ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 486 var->vmode &= ~FB_VMODE_INTERLACED; fcb1fec7 drivers/video/pvr2fb.c Paul Mundt 2008-03-06 487 var->vmode |= FB_VMODE_NONINTERLACED; ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 488 } ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 489 ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 490 if ((var->activate & FB_ACTIVATE_MASK) != FB_ACTIVATE_TEST) { ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 491 var->right_margin = par->borderstop_h - ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 492 (par->diwstart_h + var->xres); ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 493 var->left_margin = par->diwstart_h - par->borderstart_h; ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 494 var->hsync_len = par->borderstart_h + ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 495 (par->hsync_total - par->borderstop_h); ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 496 ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 497 var->upper_margin = par->diwstart_v - par->borderstart_v; ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 498 var->lower_margin = par->borderstop_v - ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 499 (par->diwstart_v + var->yres); ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 500 var->vsync_len = par->borderstop_v + ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 501 (par->vsync_total - par->borderstop_v); ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 502 } ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 503 ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 504 hsync_total = var->left_margin + var->xres + var->right_margin + ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 505 var->hsync_len; ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 506 vtotal = var->upper_margin + var->yres + var->lower_margin + ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 507 var->vsync_len; ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 508 ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 509 if (var->sync & FB_SYNC_BROADCAST) { ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 510 if (var->vmode & FB_VMODE_INTERLACED) ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 511 vtotal /= 2; ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 512 if (vtotal > (PAL_VTOTAL + NTSC_VTOTAL)/2) { ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 513 /* PAL video output */ ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 514 /* XXX: Should be using a range here ... ? */ ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 515 if (hsync_total != PAL_HTOTAL) { ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 516 pr_debug("invalid hsync total for PAL\n"); ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 517 return -EINVAL; ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 518 } ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 519 } else { ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 520 /* NTSC video output */ ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 521 if (hsync_total != NTSC_HTOTAL) { ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 522 pr_debug("invalid hsync total for NTSC\n"); ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 523 return -EINVAL; ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 524 } ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 525 } ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 526 } ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 527 ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 528 /* Check memory sizes */ ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 529 line_length = get_line_length(var->xres_virtual, var->bits_per_pixel); ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 530 if (line_length * var->yres_virtual > info->fix.smem_len) ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 531 return -ENOMEM; ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 532 ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 533 return 0; ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 534 } ^1da177e drivers/video/pvr2fb.c Linus Torvalds 2005-04-16 535 :::::: The code at line 467 was first introduced by commit :::::: 1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 Linux-2.6.12-rc2 :::::: TO: Linus Torvalds <torvalds@ppc970.osdl.org> :::::: CC: Linus Torvalds <torvalds@ppc970.osdl.org> --- 0-DAY kernel test infrastructure Open Source Technology Center https://lists.01.org/pipermail/kbuild-all Intel Corporation ^ permalink raw reply [flat|nested] 7+ messages in thread
end of thread, other threads:[~2019-05-27 4:13 UTC | newest] Thread overview: 7+ messages (download: mbox.gz / follow: Atom feed) -- links below jump to the message on this page -- [not found] <CGME20190522101651eucas1p18b5ce16f065cc83125b4bd97e141bdcd@eucas1p1.samsung.com> 2019-05-22 10:16 ` [PATCH 2/2] video: fbdev: pvr2fb: add COMPILE_TEST support Bartlomiej Zolnierkiewicz 2019-05-22 10:16 ` Bartlomiej Zolnierkiewicz 2019-05-24 8:28 ` kbuild test robot 2019-05-24 8:28 ` kbuild test robot 2019-05-27 4:13 ` kbuild test robot 2019-05-27 4:13 ` kbuild test robot 2019-05-27 4:13 ` kbuild 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.