video, drm, etc: constify fbops in struct fb_info
Subsystems (53)
v3 cover video, drm, etc: constify fbops in struct fb_info
This is v3 of https://patchwork.freedesktop.org/series/70198/.
0day reported some build failures, and I needed to add patches 1-5 and 7 to address them. Patch 8 was amended accordingly (dropped some consts), but the other patches remain the same from v2, except the ones I merged already.
BR,
Jani.
Jani Nikula (12):
video: fbdev: atyfb: modify the static fb_ops directly
video: fbdev: mb862xx: modify the static fb_ops directly
video: fbdev: nvidia: modify the static fb_ops directly
video: fbdev: uvesafb: modify the static fb_ops directly
video: fbdev: make fbops member of struct fb_info a const pointer
drm: constify fb ops across all drivers
video: fbdev: intelfb: use const pointer for fb_ops
video: constify fb ops across all drivers
HID: picoLCD: constify fb ops
media: constify fb ops across all drivers
samples: vfio-mdev: constify fb ops
auxdisplay: constify fb ops
drivers/auxdisplay/cfag12864bfb.c | 2 +- drivers/auxdisplay/ht16k33.c | 2 +- drivers/gpu/drm/amd/amdgpu/amdgpu_fb.c | 2 +- drivers/gpu/drm/armada/armada_fbdev.c | 2 +- drivers/gpu/drm/drm_fb_helper.c | 2 +- drivers/gpu/drm/exynos/exynos_drm_fbdev.c | 2 +- .../gpu/drm/hisilicon/hibmc/hibmc_drm_fbdev.c | 2 +- drivers/gpu/drm/i915/display/intel_fbdev.c | 2 +- drivers/gpu/drm/msm/msm_fbdev.c | 2 +- drivers/gpu/drm/nouveau/nouveau_fbcon.c | 4 ++-- drivers/gpu/drm/omapdrm/omap_fbdev.c | 2 +- drivers/gpu/drm/radeon/radeon_fb.c | 2 +- drivers/gpu/drm/rockchip/rockchip_drm_fbdev.c | 2 +- drivers/gpu/drm/tegra/fb.c | 2 +- drivers/gpu/drm/vmwgfx/vmwgfx_fb.c | 2 +- drivers/hid/hid-picolcd_fb.c | 3 +-- drivers/media/pci/ivtv/ivtvfb.c | 3 +-- drivers/media/platform/vivid/vivid-osd.c | 3 +-- drivers/video/fbdev/68328fb.c | 2 +- drivers/video/fbdev/acornfb.c | 2 +- drivers/video/fbdev/amba-clcd.c | 2 +- drivers/video/fbdev/amifb.c | 2 +- drivers/video/fbdev/arcfb.c | 2 +- drivers/video/fbdev/arkfb.c | 2 +- drivers/video/fbdev/asiliantfb.c | 2 +- drivers/video/fbdev/atmel_lcdfb.c | 2 +- drivers/video/fbdev/aty/aty128fb.c | 2 +- drivers/video/fbdev/aty/atyfb.h | 2 +- drivers/video/fbdev/aty/atyfb_base.c | 6 +++--- drivers/video/fbdev/aty/mach64_cursor.c | 4 ++-- drivers/video/fbdev/aty/radeon_base.c | 2 +- drivers/video/fbdev/au1100fb.c | 2 +- drivers/video/fbdev/au1200fb.c | 2 +- drivers/video/fbdev/broadsheetfb.c | 2 +- drivers/video/fbdev/bw2.c | 2 +- drivers/video/fbdev/carminefb.c | 2 +- drivers/video/fbdev/cg14.c | 2 +- drivers/video/fbdev/cg3.c | 2 +- drivers/video/fbdev/cg6.c | 2 +- drivers/video/fbdev/chipsfb.c | 2 +- drivers/video/fbdev/cirrusfb.c | 2 +- drivers/video/fbdev/clps711x-fb.c | 2 +- drivers/video/fbdev/cobalt_lcdfb.c | 2 +- drivers/video/fbdev/controlfb.c | 2 +- drivers/video/fbdev/cyber2000fb.c | 2 +- drivers/video/fbdev/da8xx-fb.c | 2 +- drivers/video/fbdev/dnfb.c | 2 +- drivers/video/fbdev/efifb.c | 2 +- drivers/video/fbdev/ep93xx-fb.c | 2 +- drivers/video/fbdev/fb-puv3.c | 2 +- drivers/video/fbdev/ffb.c | 2 +- drivers/video/fbdev/fm2fb.c | 2 +- drivers/video/fbdev/fsl-diu-fb.c | 2 +- drivers/video/fbdev/g364fb.c | 2 +- drivers/video/fbdev/gbefb.c | 2 +- drivers/video/fbdev/geode/gx1fb_core.c | 2 +- drivers/video/fbdev/geode/gxfb_core.c | 2 +- drivers/video/fbdev/geode/lxfb_core.c | 2 +- drivers/video/fbdev/goldfishfb.c | 2 +- drivers/video/fbdev/grvga.c | 2 +- drivers/video/fbdev/gxt4500.c | 2 +- drivers/video/fbdev/hecubafb.c | 2 +- drivers/video/fbdev/hgafb.c | 2 +- drivers/video/fbdev/hitfb.c | 2 +- drivers/video/fbdev/hpfb.c | 2 +- drivers/video/fbdev/hyperv_fb.c | 2 +- drivers/video/fbdev/i740fb.c | 2 +- drivers/video/fbdev/imsttfb.c | 2 +- drivers/video/fbdev/imxfb.c | 2 +- drivers/video/fbdev/intelfb/intelfb.h | 2 +- drivers/video/fbdev/intelfb/intelfbdrv.c | 2 +- drivers/video/fbdev/kyro/fbdev.c | 2 +- drivers/video/fbdev/leo.c | 2 +- drivers/video/fbdev/macfb.c | 2 +- drivers/video/fbdev/matrox/matroxfb_crtc2.c | 2 +- drivers/video/fbdev/maxinefb.c | 2 +- drivers/video/fbdev/mb862xx/mb862xxfb.h | 2 +- drivers/video/fbdev/mb862xx/mb862xxfb_accel.c | 15 +++++++------- drivers/video/fbdev/mb862xx/mb862xxfbdrv.c | 4 +++- drivers/video/fbdev/mbx/mbxfb.c | 2 +- drivers/video/fbdev/metronomefb.c | 2 +- drivers/video/fbdev/mmp/fb/mmpfb.c | 2 +- drivers/video/fbdev/mx3fb.c | 5 +++-- drivers/video/fbdev/neofb.c | 2 +- drivers/video/fbdev/nvidia/nvidia.c | 20 ++++++++++--------- drivers/video/fbdev/ocfb.c | 2 +- drivers/video/fbdev/offb.c | 2 +- .../video/fbdev/omap2/omapfb/omapfb-main.c | 2 +- drivers/video/fbdev/p9100.c | 2 +- drivers/video/fbdev/platinumfb.c | 2 +- drivers/video/fbdev/pm2fb.c | 2 +- drivers/video/fbdev/pm3fb.c | 2 +- drivers/video/fbdev/pmag-aa-fb.c | 2 +- drivers/video/fbdev/pmag-ba-fb.c | 2 +- drivers/video/fbdev/pmagb-b-fb.c | 2 +- drivers/video/fbdev/ps3fb.c | 2 +- drivers/video/fbdev/pvr2fb.c | 2 +- drivers/video/fbdev/pxa168fb.c | 2 +- drivers/video/fbdev/pxafb.c | 4 ++-- drivers/video/fbdev/q40fb.c | 2 +- drivers/video/fbdev/riva/fbdev.c | 2 +- drivers/video/fbdev/s3c-fb.c | 2 +- drivers/video/fbdev/s3c2410fb.c | 2 +- drivers/video/fbdev/s3fb.c | 2 +- drivers/video/fbdev/sa1100fb.c | 2 +- drivers/video/fbdev/savage/savagefb_driver.c | 2 +- drivers/video/fbdev/sh7760fb.c | 2 +- drivers/video/fbdev/sh_mobile_lcdcfb.c | 4 ++-- drivers/video/fbdev/simplefb.c | 2 +- drivers/video/fbdev/sis/sis_main.c | 2 +- drivers/video/fbdev/skeletonfb.c | 2 +- drivers/video/fbdev/sm712fb.c | 2 +- drivers/video/fbdev/smscufx.c | 2 +- drivers/video/fbdev/ssd1307fb.c | 2 +- drivers/video/fbdev/sstfb.c | 2 +- drivers/video/fbdev/stifb.c | 2 +- drivers/video/fbdev/sunxvr1000.c | 2 +- drivers/video/fbdev/sunxvr2500.c | 2 +- drivers/video/fbdev/sunxvr500.c | 2 +- drivers/video/fbdev/tcx.c | 2 +- drivers/video/fbdev/tdfxfb.c | 2 +- drivers/video/fbdev/tgafb.c | 2 +- drivers/video/fbdev/tmiofb.c | 2 +- drivers/video/fbdev/tridentfb.c | 2 +- drivers/video/fbdev/uvesafb.c | 4 ++-- drivers/video/fbdev/valkyriefb.c | 2 +- drivers/video/fbdev/vfb.c | 2 +- drivers/video/fbdev/vga16fb.c | 2 +- drivers/video/fbdev/vt8500lcdfb.c | 2 +- drivers/video/fbdev/vt8623fb.c | 2 +- drivers/video/fbdev/w100fb.c | 2 +- drivers/video/fbdev/wm8505fb.c | 2 +- drivers/video/fbdev/xen-fbfront.c | 2 +- drivers/video/fbdev/xilinxfb.c | 2 +- include/linux/fb.h | 2 +- samples/vfio-mdev/mdpy-fb.c | 2 +- 136 files changed, 163 insertions(+), 162 deletions(-)
Signature · 1 line
2.20.1
PATCH v3 1/12 video: fbdev: atyfb: modify the static fb_ops directly
Avoid modifying the fb_ops via info->fbops to let us make the pointer const in the future.
--- drivers/video/fbdev/aty/atyfb.h | 2 +- drivers/video/fbdev/aty/atyfb_base.c | 6 +++--- drivers/video/fbdev/aty/mach64_cursor.c | 4 ++-- 3 files changed, 6 insertions(+), 6 deletions(-)
drivers/video/fbdev/aty/atyfb.h +1 -1
@@ -341,7 +341,7 @@ extern const u8 aty_postdividers[8];* Hardware cursor support */ -extern int aty_init_cursor (struct fb_info *info); +extern int aty_init_cursor (struct fb_info *info,struct fb_ops *atyfb_ops);/* * Hardware acceleration
drivers/video/fbdev/aty/atyfb_base.c +3 -3
@@ -1316,10 +1316,10 @@ static int atyfb_set_par(struct fb_info *info) par->accel_flags = var->accel_flags;/* hack */ if (var->accel_flags) { - info->fbops->fb_sync = atyfb_sync; + atyfb_ops.fb_sync = atyfb_sync; info->flags &= ~FBINFO_HWACCEL_DISABLED ; }else { - info->fbops->fb_sync =NULL ; + atyfb_ops.fb_sync =NULL ; info->flags |=FBINFO_HWACCEL_DISABLED ; }
@@ -2702,7 +2702,7 @@ static int aty_init(struct fb_info *info)#ifdef CONFIG_FB_ATY_CT if (!noaccel &&M64_HAS (INTEGRATED )) -aty_init_cursor (info); +aty_init_cursor (info, &atyfb_ops);#endif /* CONFIG_FB_ATY_CT */ info->var = var;
drivers/video/fbdev/aty/mach64_cursor.c +2 -2
@@ -194,7 +194,7 @@ static int atyfb_cursor(struct fb_info *info, struct fb_cursor *cursor)return 0 ; } -int aty_init_cursor (struct fb_info *info) +int aty_init_cursor (struct fb_info *info,struct fb_ops *atyfb_ops) {unsigned long addr;
@@ -219,7 +219,7 @@ int aty_init_cursor(struct fb_info *info) info->sprite.buf_align =16 ;/* and 64 lines tall. */ info->sprite.flags =FB_PIXMAP_IO ; - info->fbops->fb_cursor = atyfb_cursor; + atyfb_ops->fb_cursor = atyfb_cursor;return 0 ; }
Signature · 1 line
2.20.1
Re: [PATCH v3 01/12] video: fbdev: atyfb: modify the static fb_ops directly
Quoted 42 lines · Jani Nikula
Avoid modifying the
fb_opsviainfo->fbopsto let us make the pointer const in the future.Signed-off-by Jani Nikula <[email protected]>--- drivers/video/fbdev/aty/atyfb.h | 2 +- drivers/video/fbdev/aty/atyfb_base.c | 6 +++--- drivers/video/fbdev/aty/mach64_cursor.c | 4 ++-- 3 files changed, 6 insertions(+), 6 deletions(-)drivers/video/fbdev/aty/atyfb.h +1
-1@@ -341,7 +341,7 @@ extern const u8 aty_postdividers[8];* Hardware cursor support */ -extern int aty_init_cursor (struct fb_info *info); +extern int aty_init_cursor (struct fb_info *info,struct fb_ops *atyfb_ops);/* * Hardware acceleration drivers/video/fbdev/aty/atyfb_base.c +2
-2@@ -1316,10 +1316,10 @@ static int atyfb_set_par(struct fb_info *info) par->accel_flags = var->accel_flags;/* hack */ if (var->accel_flags) { - info->fbops->fb_sync = atyfb_sync; + atyfb_ops.fb_sync = atyfb_sync; info->flags &= ~FBINFO_HWACCEL_DISABLED ; }else { - info->fbops->fb_sync =NULL ; + atyfb_ops.fb_sync =NULL ; info->flags |=FBINFO_HWACCEL_DISABLED ; }
drivers/video/fbdev/aty/atyfb_base.c static int aty_init(struct fb_info *info) · line 2705
Quoted 5 lines
drivers/video/fbdev/aty/atyfb_base.c +1
-1@@ -2702,7 +2702,7 @@ static int aty_init(struct fb_info *info)#ifdef CONFIG_FB_ATY_CT if (!noaccel &&M64_HAS (INTEGRATED )) -aty_init_cursor (info); +aty_init_cursor (info, &atyfb_ops);
Uh ... can I bikeshed this to duplicating an atyfb_cursor_ops and then just reassigning the info->fbops pointer?
This here seems a bit too wild.
-Daniel
Quoted 32 lines
drivers/video/fbdev/aty/atyfb_base.c +0
-0#endif /* CONFIG_FB_ATY_CT */ info->var = var;drivers/video/fbdev/aty/mach64_cursor.c +2
-2@@ -194,7 +194,7 @@ static int atyfb_cursor(struct fb_info *info, struct fb_cursor *cursor)return 0 ; } -int aty_init_cursor (struct fb_info *info) +int aty_init_cursor (struct fb_info *info,struct fb_ops *atyfb_ops) {unsigned long addr;@@ -219,7 +219,7 @@ int aty_init_cursor(struct fb_info *info) info->sprite.buf_align =16 ;/* and 64 lines tall. */ info->sprite.flags =FB_PIXMAP_IO ; - info->fbops->fb_cursor = atyfb_cursor; + atyfb_ops->fb_cursor = atyfb_cursor;return 0 ; }Signature · 6 lines
2.20.1 _______________________________________________ dri-devel mailing list [email protected] https://lists.freedesktop.org/mailman/listinfo/dri-devel
Signature · 3 lines
Daniel Vetter Software Engineer, Intel Corporation http://blog.ffwll.ch
PATCH v3 2/12 video: fbdev: mb862xx: modify the static fb_ops directly
In reply to Jani NikulaAvoid modifying the fb_ops via info->fbops to let us make the pointer const in the future. Drop the unnecessary EXPORT_SYMBOL() while at it.
--- drivers/video/fbdev/mb862xx/mb862xxfb.h | 2 +- drivers/video/fbdev/mb862xx/mb862xxfb_accel.c | 15 +++++++-------- drivers/video/fbdev/mb862xx/mb862xxfbdrv.c | 4 +++- 3 files changed, 11 insertions(+), 10 deletions(-)
drivers/video/fbdev/mb862xx/mb862xxfb.h +1 -1
@@ -89,7 +89,7 @@ struct mb862xxfb_par {u32 pseudo_palette[16 ]; }; -extern void mb862xxfb_init_accel (struct fb_info *info,int xres); +extern void mb862xxfb_init_accel (struct fb_info *info,struct fb_ops *fbops,int xres);#ifdef CONFIG_FB_MB862XX_I2C extern int mb862xx_i2c_init (struct mb862xxfb_par *par);extern void mb862xx_i2c_exit (struct mb862xxfb_par *par);
drivers/video/fbdev/mb862xx/mb862xxfb_accel.c +7 -8
@@ -303,19 +303,19 @@ static void mb86290fb_fillrect(struct fb_info *info,mb862xxfb_write_fifo (7 , cmd, info); } -void mb862xxfb_init_accel (struct fb_info *info,int xres) +void mb862xxfb_init_accel (struct fb_info *info,struct fb_ops *fbops,int xres) {struct mb862xxfb_par *par = info->par;if (info->var.bits_per_pixel =32 ) { - info->fbops->fb_fillrect = cfb_fillrect; - info->fbops->fb_copyarea = cfb_copyarea; - info->fbops->fb_imageblit = cfb_imageblit; + fbops->fb_fillrect = cfb_fillrect; + fbops->fb_copyarea = cfb_copyarea; + fbops->fb_imageblit = cfb_imageblit; }else {outreg (disp,GC_L0EM ,3 ); - info->fbops->fb_fillrect = mb86290fb_fillrect; - info->fbops->fb_copyarea = mb86290fb_copyarea; - info->fbops->fb_imageblit = mb86290fb_imageblit; + fbops->fb_fillrect = mb86290fb_fillrect; + fbops->fb_copyarea = mb86290fb_copyarea; + fbops->fb_imageblit = mb86290fb_imageblit; }outreg (draw,GDC_REG_DRAW_BASE ,0 );outreg (draw,GDC_REG_MODE_MISC ,0x8000 );
@@ -326,6 +326,5 @@ void mb862xxfb_init_accel(struct fb_info *info, int xres)FBINFO_HWACCEL_IMAGEBLIT ; info->fix.accel =0xff ;/*FIXME: add right define */ } -EXPORT_SYMBOL (mb862xxfb_init_accel);MODULE_LICENSE ("GPL v2" );
drivers/video/fbdev/mb862xx/mb862xxfbdrv.c +3 -1
@@ -194,6 +194,8 @@ static int mb862xxfb_check_var(struct fb_var_screeninfo *var,return 0 ; } +static struct fb_ops mb862xxfb_ops; +/* * set display parameters */
@@ -204,7 +206,7 @@ static int mb862xxfb_set_par(struct fb_info *fbi)dev_dbg (par->dev,"%s\n" , __func__);if (par->type =BT_CORALP ) -mb862xxfb_init_accel (fbi, fbi->var.xres); +mb862xxfb_init_accel (fbi, &mb862xxfb_ops, fbi->var.xres);if (par->pre_init)return 0 ;
Signature · 1 line
2.20.1
Re: [PATCH v3 02/12] video: fbdev: mb862xx: modify the static fb_ops directly
drivers/video/fbdev/mb862xx/mb862xxfb_accel.c
Quoted 28 lines · Jani Nikula
Avoid modifying the
fb_opsviainfo->fbopsto let us make the pointer const in the future. Drop the unnecessaryEXPORT_SYMBOL()while at it.Signed-off-by Jani Nikula <[email protected]>--- drivers/video/fbdev/mb862xx/mb862xxfb.h | 2 +- drivers/video/fbdev/mb862xx/mb862xxfb_accel.c | 15 +++++++-------- drivers/video/fbdev/mb862xx/mb862xxfbdrv.c | 4 +++- 3 files changed, 11 insertions(+), 10 deletions(-)drivers/video/fbdev/mb862xx/mb862xxfb.h +1
-1@@ -89,7 +89,7 @@ struct mb862xxfb_par {u32 pseudo_palette[16 ]; }; -extern void mb862xxfb_init_accel (struct fb_info *info,int xres); +extern void mb862xxfb_init_accel (struct fb_info *info,struct fb_ops *fbops,int xres);#ifdef CONFIG_FB_MB862XX_I2C extern int mb862xx_i2c_init (struct mb862xxfb_par *par);extern void mb862xx_i2c_exit (struct mb862xxfb_par *par);drivers/video/fbdev/mb862xx/mb862xxfb_accel.c +0
-0
/me cries in fbdev
Quoted 6 lines
drivers/video/fbdev/mb862xx/mb862xxfb_accel.c +1
-1@@ -303,19 +303,19 @@ static void mb86290fb_fillrect(struct fb_info *info,mb862xxfb_write_fifo (7 , cmd, info); } -void mb862xxfb_init_accel (struct fb_info *info,int xres) +void mb862xxfb_init_accel (struct fb_info *info,struct fb_ops *fbops,int xres)
drivers/video/fbdev/mb862xx/mb862xxfb_accel.c static void mb86290fb_fillrect(struct fb_info *info, · line 313
Quoted 10 lines
drivers/video/fbdev/mb862xx/mb862xxfb_accel.c +3
-3{struct mb862xxfb_par *par = info->par;if (info->var.bits_per_pixel =32 ) { - info->fbops->fb_fillrect = cfb_fillrect; - info->fbops->fb_copyarea = cfb_copyarea; - info->fbops->fb_imageblit = cfb_imageblit; + fbops->fb_fillrect = cfb_fillrect; + fbops->fb_copyarea = cfb_copyarea; + fbops->fb_imageblit = cfb_imageblit;
Ok, so this just resets to the same values as mb862xxfb_ops.
drivers/video/fbdev/mb862xx/mb862xxfb_accel.c static void mb86290fb_fillrect(struct fb_info *info, · line 318
Quoted 8 lines
drivers/video/fbdev/mb862xx/mb862xxfb_accel.c +3
-3}else {outreg (disp,GC_L0EM ,3 ); - info->fbops->fb_fillrect = mb86290fb_fillrect; - info->fbops->fb_copyarea = mb86290fb_copyarea; - info->fbops->fb_imageblit = mb86290fb_imageblit; + fbops->fb_fillrect = mb86290fb_fillrect; + fbops->fb_copyarea = mb86290fb_copyarea; + fbops->fb_imageblit = mb86290fb_imageblit;
Which means if we'd copypaste that into an mb862xxfb_accel_ops we could do this a bit cleaner, and leave the ops structs const.
drivers/video/fbdev/mb862xx/mb862xxfbdrv.c static int mb862xxfb_set_par(struct fb_info *fbi)
Quoted 24 lines
drivers/video/fbdev/mb862xx/mb862xxfb_accel.c +0
-1}outreg (draw,GDC_REG_DRAW_BASE ,0 );outreg (draw,GDC_REG_MODE_MISC ,0x8000 );@@ -326,6 +326,5 @@ void mb862xxfb_init_accel(struct fb_info *info, int xres)FBINFO_HWACCEL_IMAGEBLIT ; info->fix.accel =0xff ;/*FIXME: add right define */ } -EXPORT_SYMBOL (mb862xxfb_init_accel);MODULE_LICENSE ("GPL v2" );drivers/video/fbdev/mb862xx/mb862xxfbdrv.c +2
-0@@ -194,6 +194,8 @@ static int mb862xxfb_check_var(struct fb_var_screeninfo *var,return 0 ; } +static struct fb_ops mb862xxfb_ops; +/* * set display parameters */ @@ -204,7 +206,7 @@ static int mb862xxfb_set_par(struct fb_info *fbi)
set_par. It's called from set_par.
Ok not going to think about this more.
-Daniel
Quoted 15 lines
drivers/video/fbdev/mb862xx/mb862xxfbdrv.c +1
-1dev_dbg (par->dev,"%s\n" , __func__);if (par->type =BT_CORALP ) -mb862xxfb_init_accel (fbi, fbi->var.xres); +mb862xxfb_init_accel (fbi, &mb862xxfb_ops, fbi->var.xres);if (par->pre_init)return 0 ;Signature · 6 lines
2.20.1 _______________________________________________ dri-devel mailing list [email protected] https://lists.freedesktop.org/mailman/listinfo/dri-devel
Signature · 3 lines
Daniel Vetter Software Engineer, Intel Corporation http://blog.ffwll.ch
PATCH v3 3/12 video: fbdev: nvidia: modify the static fb_ops directly
In reply to Jani NikulaAvoid modifying the fb_ops via info->fbops to let us make the pointer const in the future.
--- drivers/video/fbdev/nvidia/nvidia.c | 20 +++++++++++--------- 1 file changed, 11 insertions(+), 9 deletions(-)
drivers/video/fbdev/nvidia/nvidia.c +11 -9
@@ -607,6 +607,8 @@ static int nvidiafb_cursor(struct fb_info *info, struct fb_cursor *cursor)return 0 ; } +static struct fb_ops nvidia_fb_ops; +static int nvidiafb_set_par (struct fb_info *info) {struct nvidia_par *par = info->par;
@@ -660,19 +662,19 @@ static int nvidiafb_set_par(struct fb_info *info) info->fix.line_length = (info->var.xres_virtual * info->var.bits_per_pixel) >>3 ;if (info->var.accel_flags) { - info->fbops->fb_imageblit = nvidiafb_imageblit; - info->fbops->fb_fillrect = nvidiafb_fillrect; - info->fbops->fb_copyarea = nvidiafb_copyarea; - info->fbops->fb_sync = nvidiafb_sync; + nvidia_fb_ops.fb_imageblit = nvidiafb_imageblit; + nvidia_fb_ops.fb_fillrect = nvidiafb_fillrect; + nvidia_fb_ops.fb_copyarea = nvidiafb_copyarea; + nvidia_fb_ops.fb_sync = nvidiafb_sync; info->pixmap.scan_align =4 ; info->flags &= ~FBINFO_HWACCEL_DISABLED ; info->flags |=FBINFO_READS_FAST ;NVResetGraphics (info); }else { - info->fbops->fb_imageblit = cfb_imageblit; - info->fbops->fb_fillrect = cfb_fillrect; - info->fbops->fb_copyarea = cfb_copyarea; - info->fbops->fb_sync =NULL ; + nvidia_fb_ops.fb_imageblit = cfb_imageblit; + nvidia_fb_ops.fb_fillrect = cfb_fillrect; + nvidia_fb_ops.fb_copyarea = cfb_copyarea; + nvidia_fb_ops.fb_sync =NULL ; info->pixmap.scan_align =1 ; info->flags |=FBINFO_HWACCEL_DISABLED ; info->flags &= ~FBINFO_READS_FAST ;
@@ -1165,7 +1167,7 @@ static int nvidia_set_fbinfo(struct fb_info *info) info->pixmap.flags =FB_PIXMAP_SYSTEM ;if (!hwcur) - info->fbops->fb_cursor =NULL ; + nvidia_fb_ops.fb_cursor =NULL ; info->var.accel_flags = (!noaccel);
Signature · 1 line
2.20.1
Re: [Intel-gfx] [PATCH v3 03/12] video: fbdev: nvidia: modify the static fb_ops directly
Quoted 14 lines · Jani Nikula
Avoid modifying the
fb_opsviainfo->fbopsto let us make the pointer const in the future.Signed-off-by Jani Nikula <[email protected]>--- drivers/video/fbdev/nvidia/nvidia.c | 20 +++++++++++--------- 1 file changed, 11 insertions(+), 9 deletions(-)drivers/video/fbdev/nvidia/nvidia.c +0
-0
drivers/video/fbdev/nvidia/nvidia.c static int nvidiafb_cursor(struct fb_info *info, struct fb_cursor *cursor) · line 610
Quoted 4 lines
drivers/video/fbdev/nvidia/nvidia.c +1
-0@@ -607,6 +607,8 @@ static int nvidiafb_cursor(struct fb_info *info, struct fb_cursor *cursor)return 0 ; } +static struct fb_ops nvidia_fb_ops;
Ok this one is two independent flags, I'm not going to ask for a matrix. Plus it's all in one file. Plus have you read the coding style used in here. Plus ...
Well.
Quoted 48 lines
drivers/video/fbdev/nvidia/nvidia.c +10
-9+static int nvidiafb_set_par (struct fb_info *info) {struct nvidia_par *par = info->par;@@ -660,19 +662,19 @@ static int nvidiafb_set_par(struct fb_info *info) info->fix.line_length = (info->var.xres_virtual * info->var.bits_per_pixel) >>3 ;if (info->var.accel_flags) { - info->fbops->fb_imageblit = nvidiafb_imageblit; - info->fbops->fb_fillrect = nvidiafb_fillrect; - info->fbops->fb_copyarea = nvidiafb_copyarea; - info->fbops->fb_sync = nvidiafb_sync; + nvidia_fb_ops.fb_imageblit = nvidiafb_imageblit; + nvidia_fb_ops.fb_fillrect = nvidiafb_fillrect; + nvidia_fb_ops.fb_copyarea = nvidiafb_copyarea; + nvidia_fb_ops.fb_sync = nvidiafb_sync; info->pixmap.scan_align =4 ; info->flags &= ~FBINFO_HWACCEL_DISABLED ; info->flags |=FBINFO_READS_FAST ;NVResetGraphics (info); }else { - info->fbops->fb_imageblit = cfb_imageblit; - info->fbops->fb_fillrect = cfb_fillrect; - info->fbops->fb_copyarea = cfb_copyarea; - info->fbops->fb_sync =NULL ; + nvidia_fb_ops.fb_imageblit = cfb_imageblit; + nvidia_fb_ops.fb_fillrect = cfb_fillrect; + nvidia_fb_ops.fb_copyarea = cfb_copyarea; + nvidia_fb_ops.fb_sync =NULL ; info->pixmap.scan_align =1 ; info->flags |=FBINFO_HWACCEL_DISABLED ; info->flags &= ~FBINFO_READS_FAST ;@@ -1165,7 +1167,7 @@ static int nvidia_set_fbinfo(struct fb_info *info) info->pixmap.flags =FB_PIXMAP_SYSTEM ;if (!hwcur) - info->fbops->fb_cursor =NULL ; + nvidia_fb_ops.fb_cursor =NULL ; info->var.accel_flags = (!noaccel);Signature · 6 lines
2.20.1 _______________________________________________ Intel-gfx mailing list [email protected] https://lists.freedesktop.org/mailman/listinfo/intel-gfx
Signature · 3 lines
Daniel Vetter Software Engineer, Intel Corporation http://blog.ffwll.ch
PATCH v3 4/12 video: fbdev: uvesafb: modify the static fb_ops directly
In reply to Jani NikulaAvoid modifying the fb_ops via info->fbops to let us make the pointer const in the future.
--- drivers/video/fbdev/uvesafb.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-)
drivers/video/fbdev/uvesafb.c +2 -2
@@ -1440,7 +1440,7 @@ static void uvesafb_init_info(struct fb_info *info, struct vbe_mode_ib *mode)/* Disable blanking if the user requested so. */ if (!blank) - info->fbops->fb_blank =NULL ; + uvesafb_ops.fb_blank =NULL ;/* * Find out how much IO memory is required for the mode with
@@ -1510,7 +1510,7 @@ static void uvesafb_init_info(struct fb_info *info, struct vbe_mode_ib *mode) (par->ypan ?FBINFO_HWACCEL_YPAN :0 );if (!par->ypan) - info->fbops->fb_pan_display =NULL ; + uvesafb_ops.fb_pan_display =NULL ; }static void uvesafb_init_mtrr (struct fb_info *info)
Signature · 1 line
2.20.1
Re: [Intel-gfx] [PATCH v3 04/12] video: fbdev: uvesafb: modify the static fb_ops directly
Quoted 23 lines · Jani Nikula
Avoid modifying the
fb_opsviainfo->fbopsto let us make the pointer const in the future.Signed-off-by Jani Nikula <[email protected]>--- drivers/video/fbdev/uvesafb.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-)drivers/video/fbdev/uvesafb.c +1
-1@@ -1440,7 +1440,7 @@ static void uvesafb_init_info(struct fb_info *info, struct vbe_mode_ib *mode)/* Disable blanking if the user requested so. */ if (!blank) - info->fbops->fb_blank =NULL ; + uvesafb_ops.fb_blank =NULL ;/* * Find out how much IO memory is required for the mode with
drivers/video/fbdev/uvesafb.c static void uvesafb_init_info(struct fb_info *info, struct vbe_mode_ib *mode) · line 1514
Quoted 6 lines
drivers/video/fbdev/uvesafb.c +1
-1@@ -1510,7 +1510,7 @@ static void uvesafb_init_info(struct fb_info *info, struct vbe_mode_ib *mode) (par->ypan ?FBINFO_HWACCEL_YPAN :0 );if (!par->ypan) - info->fbops->fb_pan_display =NULL ; + uvesafb_ops.fb_pan_display =NULL ; }
I read code.
I cried.
Also, with more reading and more bad dreams I'll get about this, I'm revising my take on patches 1&2 in this series. On those also
as-is.
Cheers, Daniel
Quoted 9 lines
drivers/video/fbdev/uvesafb.c +0
-0static void uvesafb_init_mtrr (struct fb_info *info)Signature · 6 lines
2.20.1 _______________________________________________ Intel-gfx mailing list [email protected] https://lists.freedesktop.org/mailman/listinfo/intel-gfx
Signature · 3 lines
Daniel Vetter Software Engineer, Intel Corporation http://blog.ffwll.ch
Re: [Intel-gfx] [PATCH v3 04/12] video: fbdev: uvesafb: modify the static fb_ops directly
Quoted 35 lines · Daniel Vetter
Quoted 23 lines · Jani Nikula
Avoid modifying the
fb_opsviainfo->fbopsto let us make the pointer const in the future.Signed-off-by Jani Nikula <[email protected]>--- drivers/video/fbdev/uvesafb.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-)drivers/video/fbdev/uvesafb.c +1
-1@@ -1440,7 +1440,7 @@ static void uvesafb_init_info(struct fb_info *info, struct vbe_mode_ib *mode)/* Disable blanking if the user requested so. */ if (!blank) - info->fbops->fb_blank =NULL ; + uvesafb_ops.fb_blank =NULL ;/* * Find out how much IO memory is required for the mode with drivers/video/fbdev/uvesafb.c static void uvesafb_init_info(struct fb_info *info, struct vbe_mode_ib *mode) · line 1514
Quoted 6 lines
drivers/video/fbdev/uvesafb.c +1
-1@@ -1510,7 +1510,7 @@ static void uvesafb_init_info(struct fb_info *info, struct vbe_mode_ib *mode) (par->ypan ?FBINFO_HWACCEL_YPAN :0 );if (!par->ypan) - info->fbops->fb_pan_display =NULL ; + uvesafb_ops.fb_pan_display =NULL ; }I read code.
I cried.
Quoted 8 lines
Reviewed-by Daniel Vetter <[email protected]>Also, with more reading and more bad dreams I'll get about this, I'm revising my take on patches 1&2 in this series. On those also
Reviewed-by Daniel Vetter <[email protected]>as-is.
Thanks. I feel you.
And remember, all I ever wanted to do was
-static struct fb_ops intelfb_ops = {
+static const struct fb_ops intelfb_ops = {
in drivers/gpu/drm/i915/display/intel_fbdev.c.
BR,
Jani.
Quoted 11 lines
Cheers, Daniel
Quoted 9 lines
drivers/video/fbdev/uvesafb.c +0
-0static void uvesafb_init_mtrr (struct fb_info *info)Signature · 6 lines
2.20.1 _______________________________________________ Intel-gfx mailing list [email protected] https://lists.freedesktop.org/mailman/listinfo/intel-gfx
Signature · 1 line
Jani Nikula, Intel Open Source Graphics Center
PATCH v3 5/12 video: fbdev: make fbops member of struct fb_info a const pointer
In reply to Jani NikulaNow that we no longer modify the fbops, or hold non-const pointers to it, we can make it const. After this, we can start making the fbops const all over the place.
--- include/linux/fb.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)
include/linux/fb.h +1 -1
@@ -472,7 +472,7 @@ struct fb_info {struct fb_deferred_io *fbdefio;#endif -struct fb_ops *fbops; +const struct fb_ops *fbops;struct device *device;/* This is the parent */ struct device *dev;/* This is this fb device */ int class_flag;/* private sysfs flags */
Signature · 1 line
2.20.1
kbuild test robot
build botRe: [PATCH v3 05/12] video: fbdev: make fbops member of struct fb_info a const pointer
I love your patch! Yet something to improve:
Hi Jani,
I love your patch! Yet something to improve:
[auto build test ERROR on drm-intel/for-linux-next]
[cannot apply to drm-exynos/exynos-drm-next linus/master v5.4 v5.4-rc8 v5.4-rc7 next-20191203 v5.4 next-20191203] [if your patch is applied to the wrong git tree, please drop us a note to help
improve the system. BTW, we also suggest to use '--base' option to specify the
base tree in git format-patch, please see https://stackoverflow.com/a/37406982]
url: https://github.com/0day-ci/linux/commits/Jani-Nikula/video-drm-etc-constify-fbops-in-struct-fb_info/20191204-055320 base: git://anongit.freedesktop.org/drm-intel for-linux-next config: m68k-allmodconfig (attached as .config) compiler: m68k-linux-gcc (GCC) 7.5.0
reproduce:
wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross chmod +x ~/bin/make.cross
# save the attached .config to linux build tree
GCC_VERSION=7.5.0 make.cross ARCH=m68k
If you fix the issue, kindly add following tag
All errors (new ones prefixed by >>):
drivers/video/fbdev/udlfb.c: In function 'dlfb_ops_release':
>> drivers/video/fbdev/udlfb.c:1040:24: error: assignment of member 'fb_mmap' in read-only object
info->fbops->fb_mmap = dlfb_ops_mmap;
^
--
drivers/video/fbdev/smscufx.c: In function 'ufx_ops_release':
>> drivers/video/fbdev/smscufx.c:1173:24: error: assignment of member 'fb_mmap' in read-only object
info->fbops->fb_mmap = ufx_ops_mmap;
^
--
drivers/video/fbdev/core/fb_defio.c: In function 'fb_deferred_io_init':
>> drivers/video/fbdev/core/fb_defio.c:209:23: error: assignment of member 'fb_mmap' in read-only object
info->fbops->fb_mmap = fb_deferred_io_mmap;
^
drivers/video/fbdev/core/fb_defio.c: In function 'fb_deferred_io_cleanup':
drivers/video/fbdev/core/fb_defio.c:240:23: error: assignment of member 'fb_mmap' in read-only object
info->fbops->fb_mmap = NULL;
^vim +/fb_mmap +1040 drivers/video/fbdev/udlfb.c
33077b8d3042e0 drivers/staging/udlfb/udlfb.c Bernie Thompson 2010-09-05 1026
33077b8d3042e0 drivers/staging/udlfb/udlfb.c Bernie Thompson 2010-09-05 1027 /*
33077b8d3042e0 drivers/staging/udlfb/udlfb.c Bernie Thompson 2010-09-05 1028 * Assumes caller is holding info->lock mutex (for open and release at least)
33077b8d3042e0 drivers/staging/udlfb/udlfb.c Bernie Thompson 2010-09-05 1029 */
33077b8d3042e0 drivers/staging/udlfb/udlfb.c Bernie Thompson 2010-09-05 1030 static int dlfb_ops_release(struct fb_info *info, int user)
33077b8d3042e0 drivers/staging/udlfb/udlfb.c Bernie Thompson 2010-09-05 1031 {
7ea46206d1706b drivers/video/fbdev/udlfb.c Ladislav Michl 2018-01-15 1032 struct dlfb_data *dlfb = info->par;
33077b8d3042e0 drivers/staging/udlfb/udlfb.c Bernie Thompson 2010-09-05 1033
7ea46206d1706b drivers/video/fbdev/udlfb.c Ladislav Michl 2018-01-15 1034 dlfb->fb_count--;
33077b8d3042e0 drivers/staging/udlfb/udlfb.c Bernie Thompson 2010-09-05 1035
7ea46206d1706b drivers/video/fbdev/udlfb.c Ladislav Michl 2018-01-15 1036 if ((dlfb->fb_count == 0) && (info->fbdefio)) {
33077b8d3042e0 drivers/staging/udlfb/udlfb.c Bernie Thompson 2010-09-05 1037 fb_deferred_io_cleanup(info);
33077b8d3042e0 drivers/staging/udlfb/udlfb.c Bernie Thompson 2010-09-05 1038 kfree(info->fbdefio);
33077b8d3042e0 drivers/staging/udlfb/udlfb.c Bernie Thompson 2010-09-05 1039 info->fbdefio = NULL;
33077b8d3042e0 drivers/staging/udlfb/udlfb.c Bernie Thompson 2010-09-05 @1040 info->fbops->fb_mmap = dlfb_ops_mmap;
33077b8d3042e0 drivers/staging/udlfb/udlfb.c Bernie Thompson 2010-09-05 1041 }
33077b8d3042e0 drivers/staging/udlfb/udlfb.c Bernie Thompson 2010-09-05 1042
5865889fe43194 drivers/video/fbdev/udlfb.c Ladislav Michl 2018-01-16 1043 dev_dbg(info->dev, "release, user=%d count=%d\n", user, dlfb->fb_count);
33077b8d3042e0 drivers/staging/udlfb/udlfb.c Bernie Thompson 2010-09-05 1044
33077b8d3042e0 drivers/staging/udlfb/udlfb.c Bernie Thompson 2010-09-05 1045 return 0;
2469d5dbcafe06 drivers/staging/udlfb/udlfb.c Bernie Thompson 2010-02-15 1046 }
2469d5dbcafe06 drivers/staging/udlfb/udlfb.c Bernie Thompson 2010-02-15 1047 :::::: The code at line 1040 was first introduced by commit
:::::: 33077b8d3042e01da61924973e372abe589ba297 staging: udlfb: revamp reference handling to insure successful shutdown
:::::: TO: Bernie Thompson <[email protected]>
:::::: CC: Greg Kroah-Hartman <[email protected]>
---
0-DAY kernel test infrastructure Open Source Technology Center
https://lists.01.org/hyperkitty/list/[email protected] Intel Corporation
kbuild test robot
build botRe: [PATCH v3 05/12] video: fbdev: make fbops member of struct fb_info a const pointer
In reply to Jani NikulaI love your patch! Perhaps something to improve:
Hi Jani,
I love your patch! Perhaps something to improve:
[auto build test WARNING on drm-intel/for-linux-next]
[also build test WARNING on drm-exynos/exynos-drm-next linus/master v5.4 next-20191205] [if your patch is applied to the wrong git tree, please drop us a note to help improve the system. BTW, we also suggest to use '--base' option to specify the base tree in git format-patch, please see https://stackoverflow.com/a/37406982]
url: https://github.com/0day-ci/linux/commits/Jani-Nikula/video-drm-etc-constify-fbops-in-struct-fb_info/20191204-055320 base: git://anongit.freedesktop.org/drm-intel for-linux-next reproduce: # apt-get install sparse # sparse version: v0.6.1-91-g817270f-dirty make ARCH=x86_64 allmodconfig make C=1 CF='-fdiagnostic-prefix -D__CHECK_ENDIAN__'
If you fix the issue, kindly add following tag
sparse warnings: (new ones prefixed by >>)
drivers/video/fbdev/smscufx.c:821:27: sparse: sparse: incorrect type in assignment (different base types) @@ expected unsigned int [usertype] @@ got restrunsigned int [usertype] @@
drivers/video/fbdev/smscufx.c:821:27: sparse: expected unsigned int [usertype]
drivers/video/fbdev/smscufx.c:821:27: sparse: got restricted __le32 [usertype]
drivers/video/fbdev/smscufx.c:824:27: sparse: sparse: incorrect type in assignment (different base types) @@ expected unsigned int [usertype] @@ got restrunsigned int [usertype] @@
drivers/video/fbdev/smscufx.c:824:27: sparse: expected unsigned int [usertype]
drivers/video/fbdev/smscufx.c:824:27: sparse: got restricted __le32 [usertype]
drivers/video/fbdev/smscufx.c:826:16: sparse: sparse: incorrect type in assignment (different base types) @@ expected unsigned short [usertype] @@ got resunsigned short [usertype] @@
drivers/video/fbdev/smscufx.c:826:16: sparse: expected unsigned short [usertype]
drivers/video/fbdev/smscufx.c:826:16: sparse: got restricted __le16 [usertype]
drivers/video/fbdev/smscufx.c:827:16: sparse: sparse: incorrect type in assignment (different base types) @@ expected unsigned short [usertype] @@ got resunsigned short [usertype] @@
drivers/video/fbdev/smscufx.c:827:16: sparse: expected unsigned short [usertype]
drivers/video/fbdev/smscufx.c:827:16: sparse: got restricted __le16 [usertype]
drivers/video/fbdev/smscufx.c:828:16: sparse: sparse: incorrect type in assignment (different base types) @@ expected unsigned short [usertype] @@ got resunsigned short [usertype] @@
drivers/video/fbdev/smscufx.c:828:16: sparse: expected unsigned short [usertype]
drivers/video/fbdev/smscufx.c:828:16: sparse: got restricted __le16 [usertype]
drivers/video/fbdev/smscufx.c:829:16: sparse: sparse: incorrect type in assignment (different base types) @@ expected unsigned short [usertype] @@ got resunsigned short [usertype] @@
drivers/video/fbdev/smscufx.c:829:16: sparse: expected unsigned short [usertype]
drivers/video/fbdev/smscufx.c:829:16: sparse: got restricted __le16 [usertype]
drivers/video/fbdev/smscufx.c:832:27: sparse: sparse: incorrect type in assignment (different base types) @@ expected unsigned int [usertype] @@ got restrunsigned int [usertype] @@
drivers/video/fbdev/smscufx.c:832:27: sparse: expected unsigned int [usertype]
drivers/video/fbdev/smscufx.c:832:27: sparse: got restricted __le32 [usertype]
drivers/video/fbdev/smscufx.c:835:17: sparse: sparse: incorrect type in assignment (different base types) @@ expected unsigned short [usertype] @@ got resunsigned short [usertype] @@
drivers/video/fbdev/smscufx.c:835:17: sparse: expected unsigned short [usertype]
drivers/video/fbdev/smscufx.c:835:17: sparse: got restricted __le16 [usertype]
drivers/video/fbdev/smscufx.c:838:17: sparse: sparse: incorrect type in assignment (different base types) @@ expected unsigned short [usertype] @@ got resunsigned short [usertype] @@
drivers/video/fbdev/smscufx.c:838:17: sparse: expected unsigned short [usertype]
drivers/video/fbdev/smscufx.c:838:17: sparse: got restricted __le16 [usertype]
drivers/video/fbdev/smscufx.c:1141:19: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const *addr @@ got char [noderevoid const *addr @@
drivers/video/fbdev/smscufx.c:1141:19: sparse: expected void const *addr
drivers/video/fbdev/smscufx.c:1141:19: sparse: got char [noderef] <asn:2> *screen_base
>> drivers/video/fbdev/smscufx.c:1173:28: sparse: sparse: assignment to const expression
drivers/video/fbdev/smscufx.c:1250:36: sparse: sparse: cast removes address space '<asn:2>' of expression
drivers/video/fbdev/smscufx.c:1295:37: sparse: sparse: incorrect type in initializer (different address spaces) @@ expected unsigned char *old_fb @@ got char [nodunsigned char *old_fb @@
drivers/video/fbdev/smscufx.c:1295:37: sparse: expected unsigned char *old_fb
drivers/video/fbdev/smscufx.c:1295:37: sparse: got char [noderef] <asn:2> *screen_base
drivers/video/fbdev/smscufx.c:1312:35: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const *addr @@ got char [noderevoid const *addr @@
drivers/video/fbdev/smscufx.c:1312:35: sparse: expected void const *addr
drivers/video/fbdev/smscufx.c:1312:35: sparse: got char [noderef] <asn:2> *screen_base
drivers/video/fbdev/smscufx.c:1315:35: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected char [noderef] <asn:2> *screen_base @@ got unchar [noderef] <asn:2> *screen_base @@
drivers/video/fbdev/smscufx.c:1315:35: sparse: expected char [noderef] <asn:2> *screen_base
drivers/video/fbdev/smscufx.c:1315:35: sparse: got unsigned char *[assigned] new_fb
drivers/video/fbdev/smscufx.c:1558:49: sparse: sparse: Using plain integer as NULL pointer
drivers/video/fbdev/smscufx.c:1728:19: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const *addr @@ got char [noderevoid const *addr @@
drivers/video/fbdev/smscufx.c:1728:19: sparse: expected void const *addr
drivers/video/fbdev/smscufx.c:1728:19: sparse: got char [noderef] <asn:2> *screen_base
--
drivers/video/fbdev/udlfb.c:1008:19: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const *addr @@ got char [noderevoid const *addr @@
drivers/video/fbdev/udlfb.c:1008:19: sparse: expected void const *addr
drivers/video/fbdev/udlfb.c:1008:19: sparse: got char [noderef] <asn:2> *screen_base
>> drivers/video/fbdev/udlfb.c:1040:28: sparse: sparse: assignment to const expression drivers/video/fbdev/udlfb.c:1122:36: sparse: sparse: cast removes address space '<asn:2>' of expression drivers/video/fbdev/udlfb.c:1374:49: sparse: sparse: Using plain integer as NULL pointer -- >> drivers/video/fbdev/vesafb.c:457:28: sparse: sparse: assignment to const expression -- >> drivers/video/fbdev/core/fbmem.c:1164:20: sparse: sparse: incorrect type in assignment (different modifiers) @@ expected struct fb_ops *fb @@ got structstruct fb_ops *fb @@ >> drivers/video/fbdev/core/fbmem.c:1164:20: sparse: expected struct fb_ops *fb >> drivers/video/fbdev/core/fbmem.c:1164:20: sparse: got struct fb_ops const *fbops
drivers/video/fbdev/core/fbmem.c:1300:12: sparse: sparse: incorrect type in assignment (different modifiers) @@ expected struct fb_ops *fb @@ got structstruct fb_ops *fb @@
drivers/video/fbdev/core/fbmem.c:1300:12: sparse: expected struct fb_ops *fb
drivers/video/fbdev/core/fbmem.c:1300:12: sparse: got struct fb_ops const *fbops
drivers/video/fbdev/core/fbmem.c:1342:12: sparse: sparse: incorrect type in assignment (different modifiers) @@ expected struct fb_ops *fb @@ got structstruct fb_ops *fb @@
drivers/video/fbdev/core/fbmem.c:1342:12: sparse: expected struct fb_ops *fb
drivers/video/fbdev/core/fbmem.c:1342:12: sparse: got struct fb_ops const *fbops
--
>> drivers/video/fbdev/core/fb_defio.c:209:20: sparse: sparse: assignment to const expression
drivers/video/fbdev/core/fb_defio.c:240:20: sparse: sparse: assignment to const expression
vim +1173 drivers/video/fbdev/smscufx.c
3c8a63e22a0802 drivers/video/smscufx.c Steve Glendinning 2011-08-18 1155
3c8a63e22a0802 drivers/video/smscufx.c Steve Glendinning 2011-08-18 1156 /*
3c8a63e22a0802 drivers/video/smscufx.c Steve Glendinning 2011-08-18 1157 * Assumes caller is holding info->lock mutex (for open and release at least)
3c8a63e22a0802 drivers/video/smscufx.c Steve Glendinning 2011-08-18 1158 */
3c8a63e22a0802 drivers/video/smscufx.c Steve Glendinning 2011-08-18 1159 static int ufx_ops_release(struct fb_info *info, int user)
3c8a63e22a0802 drivers/video/smscufx.c Steve Glendinning 2011-08-18 1160 {
3c8a63e22a0802 drivers/video/smscufx.c Steve Glendinning 2011-08-18 1161 struct ufx_data *dev = info->par;
3c8a63e22a0802 drivers/video/smscufx.c Steve Glendinning 2011-08-18 1162
3c8a63e22a0802 drivers/video/smscufx.c Steve Glendinning 2011-08-18 1163 dev->fb_count--;
3c8a63e22a0802 drivers/video/smscufx.c Steve Glendinning 2011-08-18 1164
3c8a63e22a0802 drivers/video/smscufx.c Steve Glendinning 2011-08-18 1165 /* We can't free fb_info here - fbmem will touch it when we return */
3c8a63e22a0802 drivers/video/smscufx.c Steve Glendinning 2011-08-18 1166 if (dev->virtualized && (dev->fb_count == 0))
3c8a63e22a0802 drivers/video/smscufx.c Steve Glendinning 2011-08-18 1167 schedule_delayed_work(&dev->free_framebuffer_work, HZ);
3c8a63e22a0802 drivers/video/smscufx.c Steve Glendinning 2011-08-18 1168
3c8a63e22a0802 drivers/video/smscufx.c Steve Glendinning 2011-08-18 1169 if ((dev->fb_count == 0) && (info->fbdefio)) {
3c8a63e22a0802 drivers/video/smscufx.c Steve Glendinning 2011-08-18 1170 fb_deferred_io_cleanup(info);
3c8a63e22a0802 drivers/video/smscufx.c Steve Glendinning 2011-08-18 1171 kfree(info->fbdefio);
3c8a63e22a0802 drivers/video/smscufx.c Steve Glendinning 2011-08-18 1172 info->fbdefio = NULL;
3c8a63e22a0802 drivers/video/smscufx.c Steve Glendinning 2011-08-18 @1173 info->fbops->fb_mmap = ufx_ops_mmap;
3c8a63e22a0802 drivers/video/smscufx.c Steve Glendinning 2011-08-18 1174 }
3c8a63e22a0802 drivers/video/smscufx.c Steve Glendinning 2011-08-18 1175
3c8a63e22a0802 drivers/video/smscufx.c Steve Glendinning 2011-08-18 1176 pr_debug("released /dev/fb%d user=%d count=%d",
3c8a63e22a0802 drivers/video/smscufx.c Steve Glendinning 2011-08-18 1177 info->node, user, dev->fb_count);
3c8a63e22a0802 drivers/video/smscufx.c Steve Glendinning 2011-08-18 1178
3c8a63e22a0802 drivers/video/smscufx.c Steve Glendinning 2011-08-18 1179 kref_put(&dev->kref, ufx_free);
3c8a63e22a0802 drivers/video/smscufx.c Steve Glendinning 2011-08-18 1180
3c8a63e22a0802 drivers/video/smscufx.c Steve Glendinning 2011-08-18 1181 return 0;
3c8a63e22a0802 drivers/video/smscufx.c Steve Glendinning 2011-08-18 1182 }
3c8a63e22a0802 drivers/video/smscufx.c Steve Glendinning 2011-08-18 1183 :::::: The code at line 1173 was first introduced by commit
:::::: 3c8a63e22a0802fd56380f6ab305b419f18eb6f5 Add support for SMSC UFX6000/7000 USB display adapters
:::::: TO: Steve Glendinning <[email protected]> :::::: CC: Florian Tobias Schandinat <[email protected]>
---
0-DAY kernel test infrastructure Open Source Technology Center
https://lists.01.org/hyperkitty/list/kbuild-all(a)lists.01.org Intel Corporation
PATCH v3 6/12 drm: constify fb ops across all drivers
In reply to Jani NikulaNow that the fbops member of struct fb_info is const, we can start making the ops const as well.
--- drivers/gpu/drm/amd/amdgpu/amdgpu_fb.c | 2 +- drivers/gpu/drm/armada/armada_fbdev.c | 2 +- drivers/gpu/drm/drm_fb_helper.c | 2 +- drivers/gpu/drm/exynos/exynos_drm_fbdev.c | 2 +- drivers/gpu/drm/hisilicon/hibmc/hibmc_drm_fbdev.c | 2 +- drivers/gpu/drm/i915/display/intel_fbdev.c | 2 +- drivers/gpu/drm/msm/msm_fbdev.c | 2 +- drivers/gpu/drm/nouveau/nouveau_fbcon.c | 4 ++-- drivers/gpu/drm/omapdrm/omap_fbdev.c | 2 +- drivers/gpu/drm/radeon/radeon_fb.c | 2 +- drivers/gpu/drm/rockchip/rockchip_drm_fbdev.c | 2 +- drivers/gpu/drm/tegra/fb.c | 2 +- drivers/gpu/drm/vmwgfx/vmwgfx_fb.c | 2 +- 13 files changed, 14 insertions(+), 14 deletions(-)
drivers/gpu/drm/amd/amdgpu/amdgpu_fb.c +1 -1
@@ -69,7 +69,7 @@ amdgpufb_release(struct fb_info *info, int user)return 0 ; } -static struct fb_ops amdgpufb_ops = { +static const struct fb_ops amdgpufb_ops = { .owner =THIS_MODULE ,DRM_FB_HELPER_DEFAULT_OPS , .fb_open = amdgpufb_open,
drivers/gpu/drm/armada/armada_fbdev.c +1 -1
@@ -16,7 +16,7 @@#include "armada_fb.h" #include "armada_gem.h" -static /*const*/ struct fb_ops armada_fb_ops = { +static const struct fb_ops armada_fb_ops = { .owner =THIS_MODULE ,DRM_FB_HELPER_DEFAULT_OPS , .fb_fillrect = drm_fb_helper_cfb_fillrect,
drivers/gpu/drm/drm_fb_helper.c +1 -1
@@ -1997,7 +1997,7 @@ static int drm_fbdev_fb_mmap(struct fb_info *info, struct vm_area_struct *vma)return -ENODEV ; } -static struct fb_ops drm_fbdev_fb_ops = { +static const struct fb_ops drm_fbdev_fb_ops = { .owner =THIS_MODULE ,DRM_FB_HELPER_DEFAULT_OPS , .fb_open = drm_fbdev_fb_open,
drivers/gpu/drm/exynos/exynos_drm_fbdev.c +1 -1
@@ -60,7 +60,7 @@ static int exynos_drm_fb_mmap(struct fb_info *info,return 0 ; } -static struct fb_ops exynos_drm_fb_ops = { +static const struct fb_ops exynos_drm_fb_ops = { .owner =THIS_MODULE ,DRM_FB_HELPER_DEFAULT_OPS , .fb_mmap = exynos_drm_fb_mmap,
drivers/gpu/drm/hisilicon/hibmc/hibmc_drm_fbdev.c +1 -1
@@ -38,7 +38,7 @@ static int hibmcfb_create_object(return ret; } -static struct fb_ops hibmc_drm_fb_ops = { +static const struct fb_ops hibmc_drm_fb_ops = { .owner =THIS_MODULE , .fb_check_var = drm_fb_helper_check_var, .fb_set_par = drm_fb_helper_set_par,
drivers/gpu/drm/i915/display/intel_fbdev.c +1 -1
@@ -100,7 +100,7 @@ static int intel_fbdev_pan_display(struct fb_var_screeninfo *var,return ret; } -static struct fb_ops intelfb_ops = { +static const struct fb_ops intelfb_ops = { .owner =THIS_MODULE ,DRM_FB_HELPER_DEFAULT_OPS , .fb_set_par = intel_fbdev_set_par,
drivers/gpu/drm/msm/msm_fbdev.c +1 -1
@@ -26,7 +26,7 @@ struct msm_fbdev {struct drm_framebuffer *fb; }; -static struct fb_ops msm_fb_ops = { +static const struct fb_ops msm_fb_ops = { .owner =THIS_MODULE ,DRM_FB_HELPER_DEFAULT_OPS ,
drivers/gpu/drm/nouveau/nouveau_fbcon.c +2 -2
@@ -203,7 +203,7 @@ nouveau_fbcon_release(struct fb_info *info, int user)return 0 ; } -static struct fb_ops nouveau_fbcon_ops = { +static const struct fb_ops nouveau_fbcon_ops = { .owner =THIS_MODULE ,DRM_FB_HELPER_DEFAULT_OPS , .fb_open = nouveau_fbcon_open,
@@ -214,7 +214,7 @@ static struct fb_ops nouveau_fbcon_ops = { .fb_sync = nouveau_fbcon_sync, }; -static struct fb_ops nouveau_fbcon_sw_ops = { +static const struct fb_ops nouveau_fbcon_sw_ops = { .owner =THIS_MODULE ,DRM_FB_HELPER_DEFAULT_OPS , .fb_open = nouveau_fbcon_open,
drivers/gpu/drm/omapdrm/omap_fbdev.c +1 -1
@@ -70,7 +70,7 @@ static int omap_fbdev_pan_display(struct fb_var_screeninfo *var,return drm_fb_helper_pan_display (var, fbi); } -static struct fb_ops omap_fb_ops = { +static const struct fb_ops omap_fb_ops = { .owner =THIS_MODULE , .fb_check_var = drm_fb_helper_check_var,
drivers/gpu/drm/radeon/radeon_fb.c +1 -1
@@ -73,7 +73,7 @@ radeonfb_release(struct fb_info *info, int user)return 0 ; } -static struct fb_ops radeonfb_ops = { +static const struct fb_ops radeonfb_ops = { .owner =THIS_MODULE ,DRM_FB_HELPER_DEFAULT_OPS , .fb_open = radeonfb_open,
drivers/gpu/drm/rockchip/rockchip_drm_fbdev.c +1 -1
@@ -27,7 +27,7 @@ static int rockchip_fbdev_mmap(struct fb_info *info,return rockchip_gem_mmap_buf (private->fbdev_bo, vma); } -static struct fb_ops rockchip_drm_fbdev_ops = { +static const struct fb_ops rockchip_drm_fbdev_ops = { .owner =THIS_MODULE ,DRM_FB_HELPER_DEFAULT_OPS , .fb_mmap = rockchip_fbdev_mmap,
drivers/gpu/drm/tegra/fb.c +1 -1
@@ -192,7 +192,7 @@ static int tegra_fb_mmap(struct fb_info *info, struct vm_area_struct *vma)return __tegra_gem_mmap (&bo->gem, vma); } -static struct fb_ops tegra_fb_ops = { +static const struct fb_ops tegra_fb_ops = { .owner =THIS_MODULE ,DRM_FB_HELPER_DEFAULT_OPS , .fb_fillrect = drm_fb_helper_sys_fillrect,
drivers/gpu/drm/vmwgfx/vmwgfx_fb.c +1 -1
@@ -624,7 +624,7 @@ static int vmw_fb_set_par(struct fb_info *info) } -static struct fb_ops vmw_fb_ops = { +static const struct fb_ops vmw_fb_ops = { .owner =THIS_MODULE , .fb_check_var = vmw_fb_check_var, .fb_set_par = vmw_fb_set_par,
Signature · 1 line
2.20.1
PATCH v3 7/12 video: fbdev: intelfb: use const pointer for fb_ops
In reply to Jani NikulaUse const for fb_ops to let us make the fbops struct const in the future.
--- drivers/video/fbdev/intelfb/intelfb.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)
drivers/video/fbdev/intelfb/intelfb.h +1 -1
@@ -273,7 +273,7 @@ struct intelfb_vsync {struct intelfb_info {struct fb_info *info; -struct fb_ops *fbops; +const struct fb_ops *fbops;struct pci_dev *pdev;struct intelfb_hwstate save_state;
Signature · 1 line
2.20.1
Re: [PATCH v3 07/12] video: fbdev: intelfb: use const pointer for fb_ops
Quoted 14 lines · Jani Nikula
Use const for
fb_opsto let us make the fbops struct const in the future.Signed-off-by Jani Nikula <[email protected]>--- drivers/video/fbdev/intelfb/intelfb.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)drivers/video/fbdev/intelfb/intelfb.h +0
-0
drivers/video/fbdev/intelfb/intelfb.h struct intelfb_vsync { · line 276
Quoted 5 lines
drivers/video/fbdev/intelfb/intelfb.h +1
-1@@ -273,7 +273,7 @@ struct intelfb_vsync {struct intelfb_info {struct fb_info *info; -struct fb_ops *fbops; +const struct fb_ops *fbops;
I think aside from a lone assignment in intelfb_pci_register this is entirely unused. But I also think resistance is futile so
Quoted 10 lines
drivers/video/fbdev/intelfb/intelfb.h +0
-0struct pci_dev *pdev;struct intelfb_hwstate save_state;Signature · 6 lines
2.20.1 _______________________________________________ dri-devel mailing list [email protected] https://lists.freedesktop.org/mailman/listinfo/dri-devel
Signature · 3 lines
Daniel Vetter Software Engineer, Intel Corporation http://blog.ffwll.ch
PATCH v3 8/12 video: constify fb ops across all drivers
In reply to Jani NikulaNow that the fbops member of struct fb_info is const, we can start making the ops const as well.
This does not cover all drivers; some actually modify the fbops struct, for example to adjust for different configurations, and others do more involved things that I'd rather not touch in practically obsolete drivers. Mostly this is the low hanging fruit where we can add "const" and be done with it.
v3:
- un-constify atyfb, mb862xx, nvidia and uvesabf (0day)
v2:
- fix typo (Christophe de Dinechin)
- use "static const" instead of "const static" in mx3fb.c
- also constify smscufx.c
--- drivers/video/fbdev/68328fb.c | 2 +- drivers/video/fbdev/acornfb.c | 2 +- drivers/video/fbdev/amba-clcd.c | 2 +- drivers/video/fbdev/amifb.c | 2 +- drivers/video/fbdev/arcfb.c | 2 +- drivers/video/fbdev/arkfb.c | 2 +- drivers/video/fbdev/asiliantfb.c | 2 +- drivers/video/fbdev/atmel_lcdfb.c | 2 +- drivers/video/fbdev/aty/aty128fb.c | 2 +- drivers/video/fbdev/aty/radeon_base.c | 2 +- drivers/video/fbdev/au1100fb.c | 2 +- drivers/video/fbdev/au1200fb.c | 2 +- drivers/video/fbdev/broadsheetfb.c | 2 +- drivers/video/fbdev/bw2.c | 2 +- drivers/video/fbdev/carminefb.c | 2 +- drivers/video/fbdev/cg14.c | 2 +- drivers/video/fbdev/cg3.c | 2 +- drivers/video/fbdev/cg6.c | 2 +- drivers/video/fbdev/chipsfb.c | 2 +- drivers/video/fbdev/cirrusfb.c | 2 +- drivers/video/fbdev/clps711x-fb.c | 2 +- drivers/video/fbdev/cobalt_lcdfb.c | 2 +- drivers/video/fbdev/controlfb.c | 2 +- drivers/video/fbdev/cyber2000fb.c | 2 +- drivers/video/fbdev/da8xx-fb.c | 2 +- drivers/video/fbdev/dnfb.c | 2 +- drivers/video/fbdev/efifb.c | 2 +- drivers/video/fbdev/ep93xx-fb.c | 2 +- drivers/video/fbdev/fb-puv3.c | 2 +- drivers/video/fbdev/ffb.c | 2 +- drivers/video/fbdev/fm2fb.c | 2 +- drivers/video/fbdev/fsl-diu-fb.c | 2 +- drivers/video/fbdev/g364fb.c | 2 +- drivers/video/fbdev/gbefb.c | 2 +- drivers/video/fbdev/geode/gx1fb_core.c | 2 +- drivers/video/fbdev/geode/gxfb_core.c | 2 +- drivers/video/fbdev/geode/lxfb_core.c | 2 +- drivers/video/fbdev/goldfishfb.c | 2 +- drivers/video/fbdev/grvga.c | 2 +- drivers/video/fbdev/gxt4500.c | 2 +- drivers/video/fbdev/hecubafb.c | 2 +- drivers/video/fbdev/hgafb.c | 2 +- drivers/video/fbdev/hitfb.c | 2 +- drivers/video/fbdev/hpfb.c | 2 +- drivers/video/fbdev/hyperv_fb.c | 2 +- drivers/video/fbdev/i740fb.c | 2 +- drivers/video/fbdev/imsttfb.c | 2 +- drivers/video/fbdev/imxfb.c | 2 +- drivers/video/fbdev/intelfb/intelfbdrv.c | 2 +- drivers/video/fbdev/kyro/fbdev.c | 2 +- drivers/video/fbdev/leo.c | 2 +- drivers/video/fbdev/macfb.c | 2 +- drivers/video/fbdev/matrox/matroxfb_crtc2.c | 2 +- drivers/video/fbdev/maxinefb.c | 2 +- drivers/video/fbdev/mbx/mbxfb.c | 2 +- drivers/video/fbdev/metronomefb.c | 2 +- drivers/video/fbdev/mmp/fb/mmpfb.c | 2 +- drivers/video/fbdev/mx3fb.c | 5 +++-- drivers/video/fbdev/neofb.c | 2 +- drivers/video/fbdev/ocfb.c | 2 +- drivers/video/fbdev/offb.c | 2 +- drivers/video/fbdev/omap2/omapfb/omapfb-main.c | 2 +- drivers/video/fbdev/p9100.c | 2 +- drivers/video/fbdev/platinumfb.c | 2 +- drivers/video/fbdev/pm2fb.c | 2 +- drivers/video/fbdev/pm3fb.c | 2 +- drivers/video/fbdev/pmag-aa-fb.c | 2 +- drivers/video/fbdev/pmag-ba-fb.c | 2 +- drivers/video/fbdev/pmagb-b-fb.c | 2 +- drivers/video/fbdev/ps3fb.c | 2 +- drivers/video/fbdev/pvr2fb.c | 2 +- drivers/video/fbdev/pxa168fb.c | 2 +- drivers/video/fbdev/pxafb.c | 4 ++-- drivers/video/fbdev/q40fb.c | 2 +- drivers/video/fbdev/riva/fbdev.c | 2 +- drivers/video/fbdev/s3c-fb.c | 2 +- drivers/video/fbdev/s3c2410fb.c | 2 +- drivers/video/fbdev/s3fb.c | 2 +- drivers/video/fbdev/sa1100fb.c | 2 +- drivers/video/fbdev/savage/savagefb_driver.c | 2 +- drivers/video/fbdev/sh7760fb.c | 2 +- drivers/video/fbdev/sh_mobile_lcdcfb.c | 4 ++-- drivers/video/fbdev/simplefb.c | 2 +- drivers/video/fbdev/sis/sis_main.c | 2 +- drivers/video/fbdev/skeletonfb.c | 2 +- drivers/video/fbdev/sm712fb.c | 2 +- drivers/video/fbdev/smscufx.c | 2 +- drivers/video/fbdev/ssd1307fb.c | 2 +- drivers/video/fbdev/sstfb.c | 2 +- drivers/video/fbdev/stifb.c | 2 +- drivers/video/fbdev/sunxvr1000.c | 2 +- drivers/video/fbdev/sunxvr2500.c | 2 +- drivers/video/fbdev/sunxvr500.c | 2 +- drivers/video/fbdev/tcx.c | 2 +- drivers/video/fbdev/tdfxfb.c | 2 +- drivers/video/fbdev/tgafb.c | 2 +- drivers/video/fbdev/tmiofb.c | 2 +- drivers/video/fbdev/tridentfb.c | 2 +- drivers/video/fbdev/valkyriefb.c | 2 +- drivers/video/fbdev/vfb.c | 2 +- drivers/video/fbdev/vga16fb.c | 2 +- drivers/video/fbdev/vt8500lcdfb.c | 2 +- drivers/video/fbdev/vt8623fb.c | 2 +- drivers/video/fbdev/w100fb.c | 2 +- drivers/video/fbdev/wm8505fb.c | 2 +- drivers/video/fbdev/xen-fbfront.c | 2 +- drivers/video/fbdev/xilinxfb.c | 2 +- 107 files changed, 111 insertions(+), 110 deletions(-)
drivers/video/fbdev/68328fb.c +1 -1
@@ -96,7 +96,7 @@ static int mc68x328fb_pan_display(struct fb_var_screeninfo *var, struct fb_info *info);static int mc68x328fb_mmap (struct fb_info *info,struct vm_area_struct *vma); -static struct fb_ops mc68x328fb_ops = { +static const struct fb_ops mc68x328fb_ops = { .fb_check_var = mc68x328fb_check_var, .fb_set_par = mc68x328fb_set_par, .fb_setcolreg = mc68x328fb_setcolreg,
drivers/video/fbdev/acornfb.c +1 -1
@@ -604,7 +604,7 @@ acornfb_pan_display(struct fb_var_screeninfo *var, struct fb_info *info)return 0 ; } -static struct fb_ops acornfb_ops = { +static const struct fb_ops acornfb_ops = { .owner =THIS_MODULE , .fb_check_var = acornfb_check_var, .fb_set_par = acornfb_set_par,
drivers/video/fbdev/amba-clcd.c +1 -1
@@ -423,7 +423,7 @@ static int clcdfb_mmap(struct fb_info *info,return ret; } -static struct fb_ops clcdfb_ops = { +static const struct fb_ops clcdfb_ops = { .owner =THIS_MODULE , .fb_check_var = clcdfb_check_var, .fb_set_par = clcdfb_set_par,
drivers/video/fbdev/amifb.c +1 -1
@@ -3493,7 +3493,7 @@ static irqreturn_t amifb_interrupt(int irq, void *dev_id) } -static struct fb_ops amifb_ops = { +static const struct fb_ops amifb_ops = { .owner =THIS_MODULE , .fb_check_var = amifb_check_var, .fb_set_par = amifb_set_par,
drivers/video/fbdev/arcfb.c +1 -1
@@ -491,7 +491,7 @@ static ssize_t arcfb_write(struct fb_info *info, const char __user *buf,return err; } -static struct fb_ops arcfb_ops = { +static const struct fb_ops arcfb_ops = { .owner =THIS_MODULE , .fb_open = arcfb_open, .fb_read = fb_sys_read,
drivers/video/fbdev/arkfb.c +1 -1
@@ -917,7 +917,7 @@ static int arkfb_pan_display(struct fb_var_screeninfo *var, struct fb_info *info/* Frame buffer operations */ -static struct fb_ops arkfb_ops = { +static const struct fb_ops arkfb_ops = { .owner =THIS_MODULE , .fb_open = arkfb_open, .fb_release = arkfb_release,
drivers/video/fbdev/asiliantfb.c +1 -1
@@ -95,7 +95,7 @@ static int asiliantfb_set_par(struct fb_info *info);static int asiliantfb_setcolreg (u_int regno,u_int red,u_int green,u_int blue,u_int transp,struct fb_info *info); -static struct fb_ops asiliantfb_ops = { +static const struct fb_ops asiliantfb_ops = { .owner =THIS_MODULE , .fb_check_var = asiliantfb_check_var, .fb_set_par = asiliantfb_set_par,
drivers/video/fbdev/atmel_lcdfb.c +1 -1
@@ -824,7 +824,7 @@ static int atmel_lcdfb_blank(int blank_mode, struct fb_info *info)return ((blank_mode =FB_BLANK_NORMAL ) ?1 :0 ); } -static struct fb_ops atmel_lcdfb_ops = { +static const struct fb_ops atmel_lcdfb_ops = { .owner =THIS_MODULE , .fb_check_var = atmel_lcdfb_check_var, .fb_set_par = atmel_lcdfb_set_par,
drivers/video/fbdev/aty/aty128fb.c +1 -1
@@ -509,7 +509,7 @@ static void aty128_bl_set_power(struct fb_info *info, int power); (readb(bios + (v) + 3) << 24)) -static struct fb_ops aty128fb_ops = { +static const struct fb_ops aty128fb_ops = { .owner =THIS_MODULE , .fb_check_var = aty128fb_check_var, .fb_set_par = aty128fb_set_par,
drivers/video/fbdev/aty/radeon_base.c +1 -1
@@ -1965,7 +1965,7 @@ static int radeonfb_set_par(struct fb_info *info) } -static struct fb_ops radeonfb_ops = { +static const struct fb_ops radeonfb_ops = { .owner =THIS_MODULE , .fb_check_var = radeonfb_check_var, .fb_set_par = radeonfb_set_par,
drivers/video/fbdev/au1100fb.c +0 -1
@@ -348,7 +348,7 @@ int au1100fb_fb_mmap(struct fb_info *fbi, struct vm_area_struct *vma) fbdev->fb_len); } -static struct fb_ops au1100fb_ops +static const struct fb_ops au1100fb_ops { .owner = THIS_MODULE, .fb_setcolreg = au1100fb_fb_setcolreg,
drivers/video/fbdev/au1200fb.c +1 -1
@@ -1483,7 +1483,7 @@ static int au1200fb_ioctl(struct fb_info *info, unsigned int cmd, } -static struct fb_ops au1200fb_fb_ops = { +static const struct fb_ops au1200fb_fb_ops = { .owner =THIS_MODULE , .fb_check_var = au1200fb_fb_check_var, .fb_set_par = au1200fb_fb_set_par,
drivers/video/fbdev/broadsheetfb.c +1 -1
@@ -1048,7 +1048,7 @@ static ssize_t broadsheetfb_write(struct fb_info *info, const char __user *buf,return (err) ? err : count; } -static struct fb_ops broadsheetfb_ops = { +static const struct fb_ops broadsheetfb_ops = { .owner =THIS_MODULE , .fb_read = fb_sys_read, .fb_write = broadsheetfb_write,
drivers/video/fbdev/bw2.c +1 -1
@@ -37,7 +37,7 @@ static int bw2_ioctl(struct fb_info *, unsigned int, unsigned long);* Frame buffer operations */ -static struct fb_ops bw2_ops = { +static const struct fb_ops bw2_ops = { .owner =THIS_MODULE , .fb_blank = bw2_blank, .fb_fillrect = cfb_fillrect,
drivers/video/fbdev/carminefb.c +1 -1
@@ -527,7 +527,7 @@ static int init_hardware(struct carmine_hw *hw)return 0 ; } -static struct fb_ops carminefb_ops = { +static const struct fb_ops carminefb_ops = { .owner =THIS_MODULE , .fb_fillrect = cfb_fillrect, .fb_copyarea = cfb_copyarea,
drivers/video/fbdev/cg14.c +1 -1
@@ -39,7 +39,7 @@ static int cg14_pan_display(struct fb_var_screeninfo *, struct fb_info *);* Frame buffer operations */ -static struct fb_ops cg14_ops = { +static const struct fb_ops cg14_ops = { .owner =THIS_MODULE , .fb_setcolreg = cg14_setcolreg, .fb_pan_display = cg14_pan_display,
drivers/video/fbdev/cg3.c +1 -1
@@ -39,7 +39,7 @@ static int cg3_ioctl(struct fb_info *, unsigned int, unsigned long);* Frame buffer operations */ -static struct fb_ops cg3_ops = { +static const struct fb_ops cg3_ops = { .owner =THIS_MODULE , .fb_setcolreg = cg3_setcolreg, .fb_blank = cg3_blank,
drivers/video/fbdev/cg6.c +1 -1
@@ -44,7 +44,7 @@ static int cg6_pan_display(struct fb_var_screeninfo *, struct fb_info *);* Frame buffer operations */ -static struct fb_ops cg6_ops = { +static const struct fb_ops cg6_ops = { .owner =THIS_MODULE , .fb_setcolreg = cg6_setcolreg, .fb_blank = cg6_blank,
drivers/video/fbdev/chipsfb.c +1 -1
@@ -79,7 +79,7 @@ static int chipsfb_setcolreg(u_int regno, u_int red, u_int green, u_int blue, u_int transp, struct fb_info *info);static int chipsfb_blank (int blank,struct fb_info *info); -static struct fb_ops chipsfb_ops = { +static const struct fb_ops chipsfb_ops = { .owner =THIS_MODULE , .fb_check_var = chipsfb_check_var, .fb_set_par = chipsfb_set_par,
drivers/video/fbdev/cirrusfb.c +1 -1
@@ -1956,7 +1956,7 @@ static void cirrusfb_zorro_unmap(struct fb_info *info)#endif /* CONFIG_ZORRO */ /* function table of the above functions */ -static struct fb_ops cirrusfb_ops = { +static const struct fb_ops cirrusfb_ops = { .owner =THIS_MODULE , .fb_open = cirrusfb_open, .fb_release = cirrusfb_release,
drivers/video/fbdev/clps711x-fb.c +1 -1
@@ -153,7 +153,7 @@ static int clps711x_fb_blank(int blank, struct fb_info *info)return 0 ; } -static struct fb_ops clps711x_fb_ops = { +static const struct fb_ops clps711x_fb_ops = { .owner =THIS_MODULE , .fb_setcolreg = clps711x_fb_setcolreg, .fb_check_var = clps711x_fb_check_var,
drivers/video/fbdev/cobalt_lcdfb.c +1 -1
@@ -269,7 +269,7 @@ static int cobalt_lcdfb_cursor(struct fb_info *info, struct fb_cursor *cursor)return 0 ; } -static struct fb_ops cobalt_lcd_fbops = { +static const struct fb_ops cobalt_lcd_fbops = { .owner =THIS_MODULE , .fb_read = cobalt_lcdfb_read, .fb_write = cobalt_lcdfb_write,
drivers/video/fbdev/controlfb.c +1 -1
@@ -157,7 +157,7 @@ static int default_vmode __initdata = VMODE_NVRAM;static int default_cmode__initdata =CMODE_NVRAM ; -static struct fb_ops controlfb_ops = { +static const struct fb_ops controlfb_ops = { .owner =THIS_MODULE , .fb_check_var = controlfb_check_var, .fb_set_par = controlfb_set_par,
drivers/video/fbdev/cyber2000fb.c +1 -1
@@ -1060,7 +1060,7 @@ static int cyber2000fb_blank(int blank, struct fb_info *info)return 0 ; } -static struct fb_ops cyber2000fb_ops = { +static const struct fb_ops cyber2000fb_ops = { .owner =THIS_MODULE , .fb_check_var = cyber2000fb_check_var, .fb_set_par = cyber2000fb_set_par,
drivers/video/fbdev/da8xx-fb.c +1 -1
@@ -1294,7 +1294,7 @@ static int da8xxfb_set_par(struct fb_info *info)return 0 ; } -static struct fb_ops da8xx_fb_ops = { +static const struct fb_ops da8xx_fb_ops = { .owner =THIS_MODULE , .fb_check_var = fb_check_var, .fb_set_par = da8xxfb_set_par,
drivers/video/fbdev/dnfb.c +1 -1
@@ -108,7 +108,7 @@static int dnfb_blank (int blank,struct fb_info *info);static void dnfb_copyarea (struct fb_info *info,const struct fb_copyarea *area); -static struct fb_ops dn_fb_ops = { +static const struct fb_ops dn_fb_ops = { .owner =THIS_MODULE , .fb_blank = dnfb_blank, .fb_fillrect = cfb_fillrect,
drivers/video/fbdev/efifb.c +1 -1
@@ -255,7 +255,7 @@ static void efifb_destroy(struct fb_info *info)fb_dealloc_cmap (&info->cmap); } -static struct fb_ops efifb_ops = { +static const struct fb_ops efifb_ops = { .owner =THIS_MODULE , .fb_destroy = efifb_destroy, .fb_setcolreg = efifb_setcolreg,
drivers/video/fbdev/ep93xx-fb.c +1 -1
@@ -402,7 +402,7 @@ static int ep93xxfb_setcolreg(unsigned int regno, unsigned int red,return 0 ; } -static struct fb_ops ep93xxfb_ops = { +static const struct fb_ops ep93xxfb_ops = { .owner =THIS_MODULE , .fb_check_var = ep93xxfb_check_var, .fb_set_par = ep93xxfb_set_par,
drivers/video/fbdev/fb-puv3.c +1 -1
@@ -644,7 +644,7 @@ int unifb_mmap(struct fb_info *info,return vm_iomap_memory (vma, info->fix.smem_start, info->fix.smem_len); } -static struct fb_ops unifb_ops = { +static const struct fb_ops unifb_ops = { .fb_read = fb_sys_read, .fb_write = fb_sys_write, .fb_check_var = unifb_check_var,
drivers/video/fbdev/ffb.c +1 -1
@@ -44,7 +44,7 @@ static int ffb_pan_display(struct fb_var_screeninfo *, struct fb_info *);* Frame buffer operations */ -static struct fb_ops ffb_ops = { +static const struct fb_ops ffb_ops = { .owner =THIS_MODULE , .fb_setcolreg = ffb_setcolreg, .fb_blank = ffb_blank,
drivers/video/fbdev/fm2fb.c +1 -1
@@ -165,7 +165,7 @@ static int fm2fb_setcolreg(u_int regno, u_int red, u_int green, u_int blue, u_int transp, struct fb_info *info);static int fm2fb_blank (int blank,struct fb_info *info); -static struct fb_ops fm2fb_ops = { +static const struct fb_ops fm2fb_ops = { .owner =THIS_MODULE , .fb_setcolreg = fm2fb_setcolreg, .fb_blank = fm2fb_blank,
drivers/video/fbdev/fsl-diu-fb.c +1 -1
@@ -1448,7 +1448,7 @@ static int fsl_diu_release(struct fb_info *info, int user)return res; } -static struct fb_ops fsl_diu_ops = { +static const struct fb_ops fsl_diu_ops = { .owner =THIS_MODULE , .fb_check_var = fsl_diu_check_var, .fb_set_par = fsl_diu_set_par,
drivers/video/fbdev/g364fb.c +1 -1
@@ -111,7 +111,7 @@ static int g364fb_setcolreg(u_int regno, u_int red, u_int green,static int g364fb_cursor (struct fb_info *info,struct fb_cursor *cursor);static int g364fb_blank (int blank,struct fb_info *info); -static struct fb_ops g364fb_ops = { +static const struct fb_ops g364fb_ops = { .owner =THIS_MODULE , .fb_setcolreg = g364fb_setcolreg, .fb_pan_display = g364fb_pan_display,
drivers/video/fbdev/gbefb.c +1 -1
@@ -1044,7 +1044,7 @@ static int gbefb_mmap(struct fb_info *info,return 0 ; } -static struct fb_ops gbefb_ops = { +static const struct fb_ops gbefb_ops = { .owner =THIS_MODULE , .fb_check_var = gbefb_check_var, .fb_set_par = gbefb_set_par,
drivers/video/fbdev/geode/gx1fb_core.c +1 -1
@@ -252,7 +252,7 @@ static int parse_panel_option(struct fb_info *info)return 0 ; } -static struct fb_ops gx1fb_ops = { +static const struct fb_ops gx1fb_ops = { .owner =THIS_MODULE , .fb_check_var = gx1fb_check_var, .fb_set_par = gx1fb_set_par,
drivers/video/fbdev/geode/gxfb_core.c +1 -1
@@ -265,7 +265,7 @@ static int gxfb_map_video_memory(struct fb_info *info, struct pci_dev *dev)return 0 ; } -static struct fb_ops gxfb_ops = { +static const struct fb_ops gxfb_ops = { .owner =THIS_MODULE , .fb_check_var = gxfb_check_var, .fb_set_par = gxfb_set_par,
drivers/video/fbdev/geode/lxfb_core.c +1 -1
@@ -386,7 +386,7 @@ static int lxfb_map_video_memory(struct fb_info *info, struct pci_dev *dev)return 0 ; } -static struct fb_ops lxfb_ops = { +static const struct fb_ops lxfb_ops = { .owner =THIS_MODULE , .fb_check_var = lxfb_check_var, .fb_set_par = lxfb_set_par,
drivers/video/fbdev/goldfishfb.c +1 -1
@@ -160,7 +160,7 @@ static int goldfish_fb_blank(int blank, struct fb_info *info)return 0 ; } -static struct fb_ops goldfish_fb_ops = { +static const struct fb_ops goldfish_fb_ops = { .owner =THIS_MODULE , .fb_check_var = goldfish_fb_check_var, .fb_set_par = goldfish_fb_set_par,
drivers/video/fbdev/grvga.c +1 -1
@@ -251,7 +251,7 @@ static int grvga_pan_display(struct fb_var_screeninfo *var,return 0 ; } -static struct fb_ops grvga_ops = { +static const struct fb_ops grvga_ops = { .owner =THIS_MODULE , .fb_check_var = grvga_check_var, .fb_set_par = grvga_set_par,
drivers/video/fbdev/gxt4500.c +1 -1
@@ -599,7 +599,7 @@ static const struct fb_fix_screeninfo gxt4500_fix = { .mmio_len = 0x20000, }; -static struct fb_ops gxt4500_ops = { +static const struct fb_ops gxt4500_ops = { .owner =THIS_MODULE , .fb_check_var = gxt4500_check_var, .fb_set_par = gxt4500_set_par,
drivers/video/fbdev/hecubafb.c +1 -1
@@ -197,7 +197,7 @@ static ssize_t hecubafb_write(struct fb_info *info, const char __user *buf,return (err) ? err : count; } -static struct fb_ops hecubafb_ops = { +static const struct fb_ops hecubafb_ops = { .owner =THIS_MODULE , .fb_read = fb_sys_read, .fb_write = hecubafb_write,
drivers/video/fbdev/hgafb.c +1 -1
@@ -523,7 +523,7 @@ static void hgafb_imageblit(struct fb_info *info, const struct fb_image *image) } } -static struct fb_ops hgafb_ops = { +static const struct fb_ops hgafb_ops = { .owner =THIS_MODULE , .fb_open = hgafb_open, .fb_release = hgafb_release,
drivers/video/fbdev/hitfb.c +1 -1
@@ -311,7 +311,7 @@ static int hitfb_set_par(struct fb_info *info)return 0 ; } -static struct fb_ops hitfb_ops = { +static const struct fb_ops hitfb_ops = { .owner =THIS_MODULE , .fb_check_var = hitfb_check_var, .fb_set_par = hitfb_set_par,
drivers/video/fbdev/hpfb.c +1 -1
@@ -184,7 +184,7 @@ static int hpfb_sync(struct fb_info *info)return 0 ; } -static struct fb_ops hpfb_ops = { +static const struct fb_ops hpfb_ops = { .owner =THIS_MODULE , .fb_setcolreg = hpfb_setcolreg, .fb_blank = hpfb_blank,
drivers/video/fbdev/hyperv_fb.c +1 -1
@@ -623,7 +623,7 @@ static void hvfb_cfb_imageblit(struct fb_info *p,synthvid_update (p); } -static struct fb_ops hvfb_ops = { +static const struct fb_ops hvfb_ops = { .owner =THIS_MODULE , .fb_check_var = hvfb_check_var, .fb_set_par = hvfb_set_par,
drivers/video/fbdev/i740fb.c +1 -1
@@ -981,7 +981,7 @@ static int i740fb_blank(int blank_mode, struct fb_info *info)return (blank_mode =FB_BLANK_NORMAL ) ?1 :0 ; } -static struct fb_ops i740fb_ops = { +static const struct fb_ops i740fb_ops = { .owner =THIS_MODULE , .fb_open = i740fb_open, .fb_release = i740fb_release,
drivers/video/fbdev/imsttfb.c +1 -1
@@ -1333,7 +1333,7 @@ static struct pci_driver imsttfb_pci_driver = { .remove = imsttfb_remove, }; -static struct fb_ops imsttfb_ops = { +static const struct fb_ops imsttfb_ops = { .owner =THIS_MODULE , .fb_check_var = imsttfb_check_var, .fb_set_par = imsttfb_set_par,
drivers/video/fbdev/imxfb.c +1 -1
@@ -566,7 +566,7 @@ static int imxfb_blank(int blank, struct fb_info *info)return 0 ; } -static struct fb_ops imxfb_ops = { +static const struct fb_ops imxfb_ops = { .owner =THIS_MODULE , .fb_check_var = imxfb_check_var, .fb_set_par = imxfb_set_par,
drivers/video/fbdev/intelfb/intelfbdrv.c +1 -1
@@ -193,7 +193,7 @@ static const struct pci_device_id intelfb_pci_table[] = {static int num_registered =0 ;/* fb ops */ -static struct fb_ops intel_fb_ops = { +static const struct fb_ops intel_fb_ops = { .owner =THIS_MODULE , .fb_open = intelfb_open, .fb_release = intelfb_release,
drivers/video/fbdev/kyro/fbdev.c +1 -1
@@ -648,7 +648,7 @@ static struct pci_driver kyrofb_pci_driver = { .remove = kyrofb_remove, }; -static struct fb_ops kyrofb_ops = { +static const struct fb_ops kyrofb_ops = { .owner =THIS_MODULE , .fb_check_var = kyrofb_check_var, .fb_set_par = kyrofb_set_par,
drivers/video/fbdev/leo.c +1 -1
@@ -39,7 +39,7 @@ static int leo_pan_display(struct fb_var_screeninfo *, struct fb_info *);* Frame buffer operations */ -static struct fb_ops leo_ops = { +static const struct fb_ops leo_ops = { .owner =THIS_MODULE , .fb_setcolreg = leo_setcolreg, .fb_blank = leo_blank,
drivers/video/fbdev/macfb.c +1 -1
@@ -496,7 +496,7 @@ static int macfb_setcolreg(unsigned regno, unsigned red, unsigned green,return 0 ; } -static struct fb_ops macfb_ops = { +static const struct fb_ops macfb_ops = { .owner =THIS_MODULE , .fb_setcolreg = macfb_setcolreg, .fb_fillrect = cfb_fillrect,
drivers/video/fbdev/matrox/matroxfb_crtc2.c +1 -1
@@ -563,7 +563,7 @@ static int matroxfb_dh_blank(int blank, struct fb_info* info) {#undef m2info } -static struct fb_ops matroxfb_dh_ops = { +static const struct fb_ops matroxfb_dh_ops = { .owner =THIS_MODULE , .fb_open = matroxfb_dh_open, .fb_release = matroxfb_dh_release,
drivers/video/fbdev/maxinefb.c +1 -1
@@ -105,7 +105,7 @@ static int maxinefb_setcolreg(unsigned regno, unsigned red, unsigned green,return 0 ; } -static struct fb_ops maxinefb_ops = { +static const struct fb_ops maxinefb_ops = { .owner =THIS_MODULE , .fb_setcolreg = maxinefb_setcolreg, .fb_fillrect = cfb_fillrect,
drivers/video/fbdev/mbx/mbxfb.c +1 -1
@@ -671,7 +671,7 @@ static int mbxfb_ioctl(struct fb_info *info, unsigned int cmd,return -EINVAL ; } -static struct fb_ops mbxfb_ops = { +static const struct fb_ops mbxfb_ops = { .owner =THIS_MODULE , .fb_check_var = mbxfb_check_var, .fb_set_par = mbxfb_set_par,
drivers/video/fbdev/metronomefb.c +1 -1
@@ -558,7 +558,7 @@ static ssize_t metronomefb_write(struct fb_info *info, const char __user *buf,return (err) ? err : count; } -static struct fb_ops metronomefb_ops = { +static const struct fb_ops metronomefb_ops = { .owner =THIS_MODULE , .fb_write = metronomefb_write, .fb_fillrect = metronomefb_fillrect,
drivers/video/fbdev/mmp/fb/mmpfb.c +1 -1
@@ -454,7 +454,7 @@ static int mmpfb_blank(int blank, struct fb_info *info)return 0 ; } -static struct fb_ops mmpfb_ops = { +static const struct fb_ops mmpfb_ops = { .owner =THIS_MODULE , .fb_blank = mmpfb_blank, .fb_check_var = mmpfb_check_var,
drivers/video/fbdev/mx3fb.c +3 -2
@@ -1249,7 +1249,7 @@ static int mx3fb_pan_display(struct fb_var_screeninfo *var,* invoked by the core framebuffer driver to perform operations like * blitting, rectangle filling, copy regions and cursor definition. */ -static struct fb_ops mx3fb_ops = { +static const struct fb_ops mx3fb_ops = { .owner =THIS_MODULE , .fb_set_par = mx3fb_set_par, .fb_check_var = mx3fb_check_var,
@@ -1389,7 +1389,8 @@ static int mx3fb_unmap_video_memory(struct fb_info *fbi)* mx3fb_init_fbinfo() - initialize framebuffer information object. * @return: initialized framebuffer structure. */ -static struct fb_info *mx3fb_init_fbinfo (struct device *dev,struct fb_ops *ops) +static struct fb_info *mx3fb_init_fbinfo (struct device *dev, +const struct fb_ops *ops) {struct fb_info *fbi;struct mx3fb_info *mx3fbi;
drivers/video/fbdev/neofb.c +1 -1
@@ -1610,7 +1610,7 @@ neofb_cursor(struct fb_info *info, struct fb_cursor *cursor)} */ -static struct fb_ops neofb_ops = { +static const struct fb_ops neofb_ops = { .owner =THIS_MODULE , .fb_open = neofb_open, .fb_release = neofb_release,
drivers/video/fbdev/ocfb.c +1 -1
@@ -285,7 +285,7 @@ static int ocfb_init_var(struct ocfb_dev *fbdev)return 0 ; } -static struct fb_ops ocfb_ops = { +static const struct fb_ops ocfb_ops = { .owner =THIS_MODULE , .fb_setcolreg = ocfb_setcolreg, .fb_fillrect = cfb_fillrect,
drivers/video/fbdev/offb.c +1 -1
@@ -286,7 +286,7 @@ static void offb_destroy(struct fb_info *info)framebuffer_release (info); } -static struct fb_ops offb_ops = { +static const struct fb_ops offb_ops = { .owner =THIS_MODULE , .fb_destroy = offb_destroy, .fb_setcolreg = offb_setcolreg,
drivers/video/fbdev/omap2/omapfb/omapfb-main.c +1 -1
@@ -1280,7 +1280,7 @@ ssize_t omapfb_write(struct fb_info *info, const char __user *buf, }#endif -static struct fb_ops omapfb_ops = { +static const struct fb_ops omapfb_ops = { .owner =THIS_MODULE , .fb_open = omapfb_open, .fb_release = omapfb_release,
drivers/video/fbdev/p9100.c +1 -1
@@ -37,7 +37,7 @@ static int p9100_ioctl(struct fb_info *, unsigned int, unsigned long);* Frame buffer operations */ -static struct fb_ops p9100_ops = { +static const struct fb_ops p9100_ops = { .owner =THIS_MODULE , .fb_setcolreg = p9100_setcolreg, .fb_blank = p9100_blank,
drivers/video/fbdev/platinumfb.c +1 -1
@@ -96,7 +96,7 @@ static int platinum_var_to_par(struct fb_var_screeninfo *var,* Interface used by the world */ -static struct fb_ops platinumfb_ops = { +static const struct fb_ops platinumfb_ops = { .owner =THIS_MODULE , .fb_check_var = platinumfb_check_var, .fb_set_par = platinumfb_set_par,
drivers/video/fbdev/pm2fb.c +1 -1
@@ -1483,7 +1483,7 @@ static int pm2fb_cursor(struct fb_info *info, struct fb_cursor *cursor)* Frame buffer operations */ -static struct fb_ops pm2fb_ops = { +static const struct fb_ops pm2fb_ops = { .owner =THIS_MODULE , .fb_check_var = pm2fb_check_var, .fb_set_par = pm2fb_set_par,
drivers/video/fbdev/pm3fb.c +1 -1
@@ -1200,7 +1200,7 @@ static int pm3fb_blank(int blank_mode, struct fb_info *info)* Frame buffer operations */ -static struct fb_ops pm3fb_ops = { +static const struct fb_ops pm3fb_ops = { .owner =THIS_MODULE , .fb_check_var = pm3fb_check_var, .fb_set_par = pm3fb_set_par,
drivers/video/fbdev/pmag-aa-fb.c +1 -1
@@ -147,7 +147,7 @@ static int aafb_blank(int blank, struct fb_info *info)return 0 ; } -static struct fb_ops aafb_ops = { +static const struct fb_ops aafb_ops = { .owner =THIS_MODULE , .fb_blank = aafb_blank, .fb_fillrect = cfb_fillrect,
drivers/video/fbdev/pmag-ba-fb.c +1 -1
@@ -117,7 +117,7 @@ static int pmagbafb_setcolreg(unsigned int regno, unsigned int red,return 0 ; } -static struct fb_ops pmagbafb_ops = { +static const struct fb_ops pmagbafb_ops = { .owner =THIS_MODULE , .fb_setcolreg = pmagbafb_setcolreg, .fb_fillrect = cfb_fillrect,
drivers/video/fbdev/pmagb-b-fb.c +1 -1
@@ -121,7 +121,7 @@ static int pmagbbfb_setcolreg(unsigned int regno, unsigned int red,return 0 ; } -static struct fb_ops pmagbbfb_ops = { +static const struct fb_ops pmagbbfb_ops = { .owner =THIS_MODULE , .fb_setcolreg = pmagbbfb_setcolreg, .fb_fillrect = cfb_fillrect,
drivers/video/fbdev/ps3fb.c +1 -1
@@ -934,7 +934,7 @@ static irqreturn_t ps3fb_vsync_interrupt(int irq, void *ptr) } -static struct fb_ops ps3fb_ops = { +static const struct fb_ops ps3fb_ops = { .fb_open = ps3fb_open, .fb_release = ps3fb_release, .fb_read = fb_sys_read,
drivers/video/fbdev/pvr2fb.c +1 -1
@@ -707,7 +707,7 @@ static ssize_t pvr2fb_write(struct fb_info *info, const char *buf, }#endif /* CONFIG_PVR2_DMA */ -static struct fb_ops pvr2fb_ops = { +static const struct fb_ops pvr2fb_ops = { .owner =THIS_MODULE , .fb_setcolreg = pvr2fb_setcolreg, .fb_blank = pvr2fb_blank,
drivers/video/fbdev/pxa168fb.c +1 -1
@@ -545,7 +545,7 @@ static irqreturn_t pxa168fb_handle_irq(int irq, void *dev_id)return IRQ_NONE ; } -static struct fb_ops pxa168fb_ops = { +static const struct fb_ops pxa168fb_ops = { .owner =THIS_MODULE , .fb_check_var = pxa168fb_check_var, .fb_set_par = pxa168fb_set_par,
drivers/video/fbdev/pxafb.c +2 -2
@@ -597,7 +597,7 @@ static int pxafb_blank(int blank, struct fb_info *info)return 0 ; } -static struct fb_ops pxafb_ops = { +static const struct fb_ops pxafb_ops = { .owner =THIS_MODULE , .fb_check_var = pxafb_check_var, .fb_set_par = pxafb_set_par,
@@ -865,7 +865,7 @@ static int overlayfb_set_par(struct fb_info *info)return 0 ; } -static struct fb_ops overlay_fb_ops = { +static const struct fb_ops overlay_fb_ops = { .owner =THIS_MODULE , .fb_open = overlayfb_open, .fb_release = overlayfb_release,
drivers/video/fbdev/q40fb.c +1 -1
@@ -75,7 +75,7 @@ static int q40fb_setcolreg(unsigned regno, unsigned red, unsigned green,return 0 ; } -static struct fb_ops q40fb_ops = { +static const struct fb_ops q40fb_ops = { .owner =THIS_MODULE , .fb_setcolreg = q40fb_setcolreg, .fb_fillrect = cfb_fillrect,
drivers/video/fbdev/riva/fbdev.c +1 -1
@@ -1673,7 +1673,7 @@ static int rivafb_sync(struct fb_info *info)* ------------------------------------------------------------------------- */ /* kernel interface */ -static struct fb_ops riva_fb_ops = { +static const struct fb_ops riva_fb_ops = { .owner =THIS_MODULE , .fb_open = rivafb_open, .fb_release = rivafb_release,
drivers/video/fbdev/s3c-fb.c +1 -1
@@ -1035,7 +1035,7 @@ static int s3c_fb_ioctl(struct fb_info *info, unsigned int cmd,return ret; } -static struct fb_ops s3c_fb_ops = { +static const struct fb_ops s3c_fb_ops = { .owner =THIS_MODULE , .fb_check_var = s3c_fb_check_var, .fb_set_par = s3c_fb_set_par,
drivers/video/fbdev/s3c2410fb.c +1 -1
@@ -618,7 +618,7 @@ static int s3c2410fb_debug_store(struct device *dev, static DEVICE_ATTR(debug, 0664, s3c2410fb_debug_show, s3c2410fb_debug_store); -static struct fb_ops s3c2410fb_ops = { +static const struct fb_ops s3c2410fb_ops = { .owner =THIS_MODULE , .fb_check_var = s3c2410fb_check_var, .fb_set_par = s3c2410fb_set_par,
drivers/video/fbdev/s3fb.c +1 -1
@@ -1037,7 +1037,7 @@ static int s3fb_pan_display(struct fb_var_screeninfo *var, struct fb_info *info)/* Frame buffer operations */ -static struct fb_ops s3fb_ops = { +static const struct fb_ops s3fb_ops = { .owner =THIS_MODULE , .fb_open = s3fb_open, .fb_release = s3fb_release,
drivers/video/fbdev/sa1100fb.c +1 -1
@@ -574,7 +574,7 @@ static int sa1100fb_mmap(struct fb_info *info,return vm_iomap_memory (vma, info->fix.mmio_start, info->fix.mmio_len); } -static struct fb_ops sa1100fb_ops = { +static const struct fb_ops sa1100fb_ops = { .owner =THIS_MODULE , .fb_check_var = sa1100fb_check_var, .fb_set_par = sa1100fb_set_par,
drivers/video/fbdev/savage/savagefb_driver.c +1 -1
@@ -1637,7 +1637,7 @@ static int savagefb_release(struct fb_info *info, int user)return 0 ; } -static struct fb_ops savagefb_ops = { +static const struct fb_ops savagefb_ops = { .owner =THIS_MODULE , .fb_open = savagefb_open, .fb_release = savagefb_release,
drivers/video/fbdev/sh7760fb.c +1 -1
@@ -341,7 +341,7 @@ static int sh7760fb_set_par(struct fb_info *info)return 0 ; } -static struct fb_ops sh7760fb_ops = { +static const struct fb_ops sh7760fb_ops = { .owner =THIS_MODULE , .fb_blank = sh7760fb_blank, .fb_check_var = sh7760fb_check_var,
drivers/video/fbdev/sh_mobile_lcdcfb.c +2 -2
@@ -1490,7 +1490,7 @@ sh_mobile_lcdc_overlay_mmap(struct fb_info *info, struct vm_area_struct *vma) ovl->dma_handle, ovl->fb_size); } -static struct fb_ops sh_mobile_lcdc_overlay_ops = { +static const struct fb_ops sh_mobile_lcdc_overlay_ops = { .owner =THIS_MODULE , .fb_read = fb_sys_read, .fb_write = fb_sys_write,
@@ -1964,7 +1964,7 @@ sh_mobile_lcdc_mmap(struct fb_info *info, struct vm_area_struct *vma) ch->dma_handle, ch->fb_size); } -static struct fb_ops sh_mobile_lcdc_ops = { +static const struct fb_ops sh_mobile_lcdc_ops = { .owner =THIS_MODULE , .fb_setcolreg = sh_mobile_lcdc_setcolreg, .fb_read = fb_sys_read,
drivers/video/fbdev/simplefb.c +1 -1
@@ -78,7 +78,7 @@ static void simplefb_destroy(struct fb_info *info)iounmap (info->screen_base); } -static struct fb_ops simplefb_ops = { +static const struct fb_ops simplefb_ops = { .owner =THIS_MODULE , .fb_destroy = simplefb_destroy, .fb_setcolreg = simplefb_setcolreg,
drivers/video/fbdev/sis/sis_main.c +1 -1
@@ -1906,7 +1906,7 @@ sisfb_get_fix(struct fb_fix_screeninfo *fix, int con, struct fb_info *info)/* ---------------- fb_ops structures ----------------- */ -static struct fb_ops sisfb_ops = { +static const struct fb_ops sisfb_ops = { .owner =THIS_MODULE , .fb_open = sisfb_open, .fb_release = sisfb_release,
drivers/video/fbdev/skeletonfb.c +1 -1
@@ -634,7 +634,7 @@ int xxxfb_sync(struct fb_info *info)* Frame buffer operations */ -static struct fb_ops xxxfb_ops = { +static const struct fb_ops xxxfb_ops = { .owner =THIS_MODULE , .fb_open = xxxfb_open, .fb_read = xxxfb_read,
drivers/video/fbdev/sm712fb.c +1 -1
@@ -1369,7 +1369,7 @@ static int smtc_set_par(struct fb_info *info)return 0 ; } -static struct fb_ops smtcfb_ops = { +static const struct fb_ops smtcfb_ops = { .owner =THIS_MODULE , .fb_check_var = smtc_check_var, .fb_set_par = smtc_set_par,
drivers/video/fbdev/smscufx.c +1 -1
@@ -1268,7 +1268,7 @@ static int ufx_ops_blank(int blank_mode, struct fb_info *info)return 0 ; } -static struct fb_ops ufx_ops = { +static const struct fb_ops ufx_ops = { .owner =THIS_MODULE , .fb_read = fb_sys_read, .fb_write = ufx_ops_write,
drivers/video/fbdev/ssd1307fb.c +1 -1
@@ -280,7 +280,7 @@ static void ssd1307fb_imageblit(struct fb_info *info, const struct fb_image *imassd1307fb_update_display (par); } -static struct fb_ops ssd1307fb_ops = { +static const struct fb_ops ssd1307fb_ops = { .owner =THIS_MODULE , .fb_read = fb_sys_read, .fb_write = ssd1307fb_write,
drivers/video/fbdev/sstfb.c +1 -1
@@ -1307,7 +1307,7 @@ static int sstfb_setup(char *options) } -static struct fb_ops sstfb_ops = { +static const struct fb_ops sstfb_ops = { .owner =THIS_MODULE , .fb_check_var = sstfb_check_var, .fb_set_par = sstfb_set_par,
drivers/video/fbdev/stifb.c +1 -1
@@ -1101,7 +1101,7 @@ stifb_init_display(struct stifb_info *fb)/* ------------ Interfaces to hardware functions ------------ */ -static struct fb_ops stifb_ops = { +static const struct fb_ops stifb_ops = { .owner =THIS_MODULE , .fb_setcolreg = stifb_setcolreg, .fb_blank = stifb_blank,
drivers/video/fbdev/sunxvr1000.c +1 -1
@@ -59,7 +59,7 @@ static int gfb_setcolreg(unsigned regno,return 0 ; } -static struct fb_ops gfb_ops = { +static const struct fb_ops gfb_ops = { .owner =THIS_MODULE , .fb_setcolreg = gfb_setcolreg, .fb_fillrect = cfb_fillrect,
drivers/video/fbdev/sunxvr2500.c +1 -1
@@ -63,7 +63,7 @@ static int s3d_setcolreg(unsigned regno,return 0 ; } -static struct fb_ops s3d_ops = { +static const struct fb_ops s3d_ops = { .owner =THIS_MODULE , .fb_setcolreg = s3d_setcolreg, .fb_fillrect = cfb_fillrect,
drivers/video/fbdev/sunxvr500.c +1 -1
@@ -186,7 +186,7 @@ static void e3d_copyarea(struct fb_info *info, const struct fb_copyarea *area)spin_unlock_irqrestore (&ep->lock, flags); } -static struct fb_ops e3d_ops = { +static const struct fb_ops e3d_ops = { .owner =THIS_MODULE , .fb_setcolreg = e3d_setcolreg, .fb_fillrect = e3d_fillrect,
drivers/video/fbdev/tcx.c +1 -1
@@ -40,7 +40,7 @@ static int tcx_pan_display(struct fb_var_screeninfo *, struct fb_info *);* Frame buffer operations */ -static struct fb_ops tcx_ops = { +static const struct fb_ops tcx_ops = { .owner =THIS_MODULE , .fb_setcolreg = tcx_setcolreg, .fb_blank = tcx_blank,
drivers/video/fbdev/tdfxfb.c +1 -1
@@ -1141,7 +1141,7 @@ static int tdfxfb_cursor(struct fb_info *info, struct fb_cursor *cursor)return 0 ; } -static struct fb_ops tdfxfb_ops = { +static const struct fb_ops tdfxfb_ops = { .owner =THIS_MODULE , .fb_check_var = tdfxfb_check_var, .fb_set_par = tdfxfb_set_par,
drivers/video/fbdev/tgafb.c +1 -1
@@ -70,7 +70,7 @@ static struct tc_driver tgafb_tc_driver;* Frame buffer operations */ -static struct fb_ops tgafb_ops = { +static const struct fb_ops tgafb_ops = { .owner =THIS_MODULE , .fb_check_var = tgafb_check_var, .fb_set_par = tgafb_set_par,
drivers/video/fbdev/tmiofb.c +1 -1
@@ -646,7 +646,7 @@ static int tmiofb_blank(int blank, struct fb_info *info)return 0 ; } -static struct fb_ops tmiofb_ops = { +static const struct fb_ops tmiofb_ops = { .owner =THIS_MODULE , .fb_ioctl = tmiofb_ioctl,
drivers/video/fbdev/tridentfb.c +1 -1
@@ -1443,7 +1443,7 @@ static int tridentfb_blank(int blank_mode, struct fb_info *info)return (blank_mode =FB_BLANK_NORMAL ) ?1 :0 ; } -static struct fb_ops tridentfb_ops = { +static const struct fb_ops tridentfb_ops = { .owner =THIS_MODULE , .fb_setcolreg = tridentfb_setcolreg, .fb_pan_display = tridentfb_pan_display,
drivers/video/fbdev/valkyriefb.c +1 -1
@@ -113,7 +113,7 @@ static int valkyrie_init_info(struct fb_info *info, struct fb_info_valkyrie *p);static void valkyrie_par_to_fix (struct fb_par_valkyrie *par,struct fb_fix_screeninfo *fix);static void valkyrie_init_fix (struct fb_fix_screeninfo *fix,struct fb_info_valkyrie *p); -static struct fb_ops valkyriefb_ops = { +static const struct fb_ops valkyriefb_ops = { .owner =THIS_MODULE , .fb_check_var = valkyriefb_check_var, .fb_set_par = valkyriefb_set_par,
drivers/video/fbdev/vfb.c +1 -1
@@ -78,7 +78,7 @@ static int vfb_pan_display(struct fb_var_screeninfo *var,static int vfb_mmap (struct fb_info *info,struct vm_area_struct *vma); -static struct fb_ops vfb_ops = { +static const struct fb_ops vfb_ops = { .fb_read = fb_sys_read, .fb_write = fb_sys_write, .fb_check_var = vfb_check_var,
drivers/video/fbdev/vga16fb.c +1 -1
@@ -1270,7 +1270,7 @@ static void vga16fb_destroy(struct fb_info *info)framebuffer_release (info); } -static struct fb_ops vga16fb_ops = { +static const struct fb_ops vga16fb_ops = { .owner =THIS_MODULE , .fb_open = vga16fb_open, .fb_release = vga16fb_release,
drivers/video/fbdev/vt8500lcdfb.c +1 -1
@@ -238,7 +238,7 @@ static int vt8500lcd_blank(int blank, struct fb_info *info)return 0 ; } -static struct fb_ops vt8500lcd_ops = { +static const struct fb_ops vt8500lcd_ops = { .owner =THIS_MODULE , .fb_set_par = vt8500lcd_set_par, .fb_setcolreg = vt8500lcd_setcolreg,
drivers/video/fbdev/vt8623fb.c +1 -1
@@ -634,7 +634,7 @@ static int vt8623fb_pan_display(struct fb_var_screeninfo *var, struct fb_info *i/* Frame buffer operations */ -static struct fb_ops vt8623fb_ops = { +static const struct fb_ops vt8623fb_ops = { .owner =THIS_MODULE , .fb_open = vt8623fb_open, .fb_release = vt8623fb_release,
drivers/video/fbdev/w100fb.c +1 -1
@@ -549,7 +549,7 @@ static int w100fb_set_par(struct fb_info *info)/* * Frame buffer operations */ -static struct fb_ops w100fb_ops = { +static const struct fb_ops w100fb_ops = { .owner =THIS_MODULE , .fb_check_var = w100fb_check_var, .fb_set_par = w100fb_set_par,
drivers/video/fbdev/wm8505fb.c +1 -1
@@ -246,7 +246,7 @@ static int wm8505fb_blank(int blank, struct fb_info *info)return 0 ; } -static struct fb_ops wm8505fb_ops = { +static const struct fb_ops wm8505fb_ops = { .owner =THIS_MODULE , .fb_set_par = wm8505fb_set_par, .fb_setcolreg = wm8505fb_setcolreg,
drivers/video/fbdev/xen-fbfront.c +1 -1
@@ -328,7 +328,7 @@ static int xenfb_set_par(struct fb_info *info)return 0 ; } -static struct fb_ops xenfb_fb_ops = { +static const struct fb_ops xenfb_fb_ops = { .owner =THIS_MODULE , .fb_read = fb_sys_read, .fb_write = xenfb_write,
drivers/video/fbdev/xilinxfb.c +1 -1
@@ -247,7 +247,7 @@ xilinx_fb_blank(int blank_mode, struct fb_info *fbi)return 0 ;/* success */ } -static struct fb_ops xilinxfb_ops = { +static const struct fb_ops xilinxfb_ops = { .owner =THIS_MODULE , .fb_setcolreg = xilinx_fb_setcolreg, .fb_blank = xilinx_fb_blank,
Signature · 1 line
2.20.1
Re: [Intel-gfx] [PATCH v3 08/12] video: constify fb ops across all drivers
Quoted 12 lines · Jani Nikula
Now that the fbops member of struct
fb_infois const, we can start making the ops const as well.This does not cover all drivers; some actually modify the fbops struct, for example to adjust for different configurations, and others do more involved things that I'd rather not touch in practically obsolete drivers. Mostly this is the low hanging fruit where we can add "const" and be done with it.
v3:
- un-constify atyfb, mb862xx, nvidia and uvesabf (0day)
Quoted 8 lines
v2:
- fix typo (Christophe de Dinechin)
- use "static const" instead of "const static" inmx3fb.c
- also constifysmscufx.cReviewed-by Daniel Vetter <[email protected]>Signed-off-by Jani Nikula <[email protected]>
Pushed up to and including this patch to drm-misc-next, thanks for the reviews and acks.
BR,
Jani.
Quoted 1,527 lines
--- drivers/video/fbdev/68328fb.c | 2 +- drivers/video/fbdev/acornfb.c | 2 +- drivers/video/fbdev/amba-clcd.c | 2 +- drivers/video/fbdev/amifb.c | 2 +- drivers/video/fbdev/arcfb.c | 2 +- drivers/video/fbdev/arkfb.c | 2 +- drivers/video/fbdev/asiliantfb.c | 2 +- drivers/video/fbdev/atmel_lcdfb.c | 2 +- drivers/video/fbdev/aty/aty128fb.c | 2 +- drivers/video/fbdev/aty/radeon_base.c | 2 +- drivers/video/fbdev/au1100fb.c | 2 +- drivers/video/fbdev/au1200fb.c | 2 +- drivers/video/fbdev/broadsheetfb.c | 2 +- drivers/video/fbdev/bw2.c | 2 +- drivers/video/fbdev/carminefb.c | 2 +- drivers/video/fbdev/cg14.c | 2 +- drivers/video/fbdev/cg3.c | 2 +- drivers/video/fbdev/cg6.c | 2 +- drivers/video/fbdev/chipsfb.c | 2 +- drivers/video/fbdev/cirrusfb.c | 2 +- drivers/video/fbdev/clps711x-fb.c | 2 +- drivers/video/fbdev/cobalt_lcdfb.c | 2 +- drivers/video/fbdev/controlfb.c | 2 +- drivers/video/fbdev/cyber2000fb.c | 2 +- drivers/video/fbdev/da8xx-fb.c | 2 +- drivers/video/fbdev/dnfb.c | 2 +- drivers/video/fbdev/efifb.c | 2 +- drivers/video/fbdev/ep93xx-fb.c | 2 +- drivers/video/fbdev/fb-puv3.c | 2 +- drivers/video/fbdev/ffb.c | 2 +- drivers/video/fbdev/fm2fb.c | 2 +- drivers/video/fbdev/fsl-diu-fb.c | 2 +- drivers/video/fbdev/g364fb.c | 2 +- drivers/video/fbdev/gbefb.c | 2 +- drivers/video/fbdev/geode/gx1fb_core.c | 2 +- drivers/video/fbdev/geode/gxfb_core.c | 2 +- drivers/video/fbdev/geode/lxfb_core.c | 2 +- drivers/video/fbdev/goldfishfb.c | 2 +- drivers/video/fbdev/grvga.c | 2 +- drivers/video/fbdev/gxt4500.c | 2 +- drivers/video/fbdev/hecubafb.c | 2 +- drivers/video/fbdev/hgafb.c | 2 +- drivers/video/fbdev/hitfb.c | 2 +- drivers/video/fbdev/hpfb.c | 2 +- drivers/video/fbdev/hyperv_fb.c | 2 +- drivers/video/fbdev/i740fb.c | 2 +- drivers/video/fbdev/imsttfb.c | 2 +- drivers/video/fbdev/imxfb.c | 2 +- drivers/video/fbdev/intelfb/intelfbdrv.c | 2 +- drivers/video/fbdev/kyro/fbdev.c | 2 +- drivers/video/fbdev/leo.c | 2 +- drivers/video/fbdev/macfb.c | 2 +- drivers/video/fbdev/matrox/matroxfb_crtc2.c | 2 +- drivers/video/fbdev/maxinefb.c | 2 +- drivers/video/fbdev/mbx/mbxfb.c | 2 +- drivers/video/fbdev/metronomefb.c | 2 +- drivers/video/fbdev/mmp/fb/mmpfb.c | 2 +- drivers/video/fbdev/mx3fb.c | 5 +++-- drivers/video/fbdev/neofb.c | 2 +- drivers/video/fbdev/ocfb.c | 2 +- drivers/video/fbdev/offb.c | 2 +- drivers/video/fbdev/omap2/omapfb/omapfb-main.c | 2 +- drivers/video/fbdev/p9100.c | 2 +- drivers/video/fbdev/platinumfb.c | 2 +- drivers/video/fbdev/pm2fb.c | 2 +- drivers/video/fbdev/pm3fb.c | 2 +- drivers/video/fbdev/pmag-aa-fb.c | 2 +- drivers/video/fbdev/pmag-ba-fb.c | 2 +- drivers/video/fbdev/pmagb-b-fb.c | 2 +- drivers/video/fbdev/ps3fb.c | 2 +- drivers/video/fbdev/pvr2fb.c | 2 +- drivers/video/fbdev/pxa168fb.c | 2 +- drivers/video/fbdev/pxafb.c | 4 ++-- drivers/video/fbdev/q40fb.c | 2 +- drivers/video/fbdev/riva/fbdev.c | 2 +- drivers/video/fbdev/s3c-fb.c | 2 +- drivers/video/fbdev/s3c2410fb.c | 2 +- drivers/video/fbdev/s3fb.c | 2 +- drivers/video/fbdev/sa1100fb.c | 2 +- drivers/video/fbdev/savage/savagefb_driver.c | 2 +- drivers/video/fbdev/sh7760fb.c | 2 +- drivers/video/fbdev/sh_mobile_lcdcfb.c | 4 ++-- drivers/video/fbdev/simplefb.c | 2 +- drivers/video/fbdev/sis/sis_main.c | 2 +- drivers/video/fbdev/skeletonfb.c | 2 +- drivers/video/fbdev/sm712fb.c | 2 +- drivers/video/fbdev/smscufx.c | 2 +- drivers/video/fbdev/ssd1307fb.c | 2 +- drivers/video/fbdev/sstfb.c | 2 +- drivers/video/fbdev/stifb.c | 2 +- drivers/video/fbdev/sunxvr1000.c | 2 +- drivers/video/fbdev/sunxvr2500.c | 2 +- drivers/video/fbdev/sunxvr500.c | 2 +- drivers/video/fbdev/tcx.c | 2 +- drivers/video/fbdev/tdfxfb.c | 2 +- drivers/video/fbdev/tgafb.c | 2 +- drivers/video/fbdev/tmiofb.c | 2 +- drivers/video/fbdev/tridentfb.c | 2 +- drivers/video/fbdev/valkyriefb.c | 2 +- drivers/video/fbdev/vfb.c | 2 +- drivers/video/fbdev/vga16fb.c | 2 +- drivers/video/fbdev/vt8500lcdfb.c | 2 +- drivers/video/fbdev/vt8623fb.c | 2 +- drivers/video/fbdev/w100fb.c | 2 +- drivers/video/fbdev/wm8505fb.c | 2 +- drivers/video/fbdev/xen-fbfront.c | 2 +- drivers/video/fbdev/xilinxfb.c | 2 +- 107 files changed, 111 insertions(+), 110 deletions(-)drivers/video/fbdev/68328fb.c +1
-1@@ -96,7 +96,7 @@ static int mc68x328fb_pan_display(struct fb_var_screeninfo *var, struct fb_info *info);static int mc68x328fb_mmap (struct fb_info *info,struct vm_area_struct *vma); -static struct fb_ops mc68x328fb_ops = { +static const struct fb_ops mc68x328fb_ops = { .fb_check_var = mc68x328fb_check_var, .fb_set_par = mc68x328fb_set_par, .fb_setcolreg = mc68x328fb_setcolreg,drivers/video/fbdev/acornfb.c +1
-1@@ -604,7 +604,7 @@ acornfb_pan_display(struct fb_var_screeninfo *var, struct fb_info *info)return 0 ; } -static struct fb_ops acornfb_ops = { +static const struct fb_ops acornfb_ops = { .owner =THIS_MODULE , .fb_check_var = acornfb_check_var, .fb_set_par = acornfb_set_par,drivers/video/fbdev/amba-clcd.c +1
-1@@ -423,7 +423,7 @@ static int clcdfb_mmap(struct fb_info *info,return ret; } -static struct fb_ops clcdfb_ops = { +static const struct fb_ops clcdfb_ops = { .owner =THIS_MODULE , .fb_check_var = clcdfb_check_var, .fb_set_par = clcdfb_set_par,drivers/video/fbdev/amifb.c +1
-1@@ -3493,7 +3493,7 @@ static irqreturn_t amifb_interrupt(int irq, void *dev_id) } -static struct fb_ops amifb_ops = { +static const struct fb_ops amifb_ops = { .owner =THIS_MODULE , .fb_check_var = amifb_check_var, .fb_set_par = amifb_set_par,drivers/video/fbdev/arcfb.c +1
-1@@ -491,7 +491,7 @@ static ssize_t arcfb_write(struct fb_info *info, const char __user *buf,return err; } -static struct fb_ops arcfb_ops = { +static const struct fb_ops arcfb_ops = { .owner =THIS_MODULE , .fb_open = arcfb_open, .fb_read = fb_sys_read,drivers/video/fbdev/arkfb.c +1
-1@@ -917,7 +917,7 @@ static int arkfb_pan_display(struct fb_var_screeninfo *var, struct fb_info *info/* Frame buffer operations */ -static struct fb_ops arkfb_ops = { +static const struct fb_ops arkfb_ops = { .owner =THIS_MODULE , .fb_open = arkfb_open, .fb_release = arkfb_release,drivers/video/fbdev/asiliantfb.c +1
-1@@ -95,7 +95,7 @@ static int asiliantfb_set_par(struct fb_info *info);static int asiliantfb_setcolreg (u_int regno,u_int red,u_int green,u_int blue,u_int transp,struct fb_info *info); -static struct fb_ops asiliantfb_ops = { +static const struct fb_ops asiliantfb_ops = { .owner =THIS_MODULE , .fb_check_var = asiliantfb_check_var, .fb_set_par = asiliantfb_set_par,drivers/video/fbdev/atmel_lcdfb.c +1
-1@@ -824,7 +824,7 @@ static int atmel_lcdfb_blank(int blank_mode, struct fb_info *info)return ((blank_mode =FB_BLANK_NORMAL ) ?1 :0 ); } -static struct fb_ops atmel_lcdfb_ops = { +static const struct fb_ops atmel_lcdfb_ops = { .owner =THIS_MODULE , .fb_check_var = atmel_lcdfb_check_var, .fb_set_par = atmel_lcdfb_set_par,drivers/video/fbdev/aty/aty128fb.c +1
-1@@ -509,7 +509,7 @@ static void aty128_bl_set_power(struct fb_info *info, int power); (readb(bios + (v) + 3) << 24)) -static struct fb_ops aty128fb_ops = { +static const struct fb_ops aty128fb_ops = { .owner =THIS_MODULE , .fb_check_var = aty128fb_check_var, .fb_set_par = aty128fb_set_par,drivers/video/fbdev/aty/radeon_base.c +1
-1@@ -1965,7 +1965,7 @@ static int radeonfb_set_par(struct fb_info *info) } -static struct fb_ops radeonfb_ops = { +static const struct fb_ops radeonfb_ops = { .owner =THIS_MODULE , .fb_check_var = radeonfb_check_var, .fb_set_par = radeonfb_set_par,drivers/video/fbdev/au1100fb.c +0
-1@@ -348,7 +348,7 @@ int au1100fb_fb_mmap(struct fb_info *fbi, struct vm_area_struct *vma) fbdev->fb_len); } -static struct fb_ops au1100fb_ops > +static const struct fb_ops au1100fb_ops > { .owner = THIS_MODULE, .fb_setcolreg = au1100fb_fb_setcolreg,drivers/video/fbdev/au1200fb.c +1
-1@@ -1483,7 +1483,7 @@ static int au1200fb_ioctl(struct fb_info *info, unsigned int cmd, } -static struct fb_ops au1200fb_fb_ops = { +static const struct fb_ops au1200fb_fb_ops = { .owner =THIS_MODULE , .fb_check_var = au1200fb_fb_check_var, .fb_set_par = au1200fb_fb_set_par,drivers/video/fbdev/broadsheetfb.c +1
-1@@ -1048,7 +1048,7 @@ static ssize_t broadsheetfb_write(struct fb_info *info, const char __user *buf,return (err) ? err : count; } -static struct fb_ops broadsheetfb_ops = { +static const struct fb_ops broadsheetfb_ops = { .owner =THIS_MODULE , .fb_read = fb_sys_read, .fb_write = broadsheetfb_write,drivers/video/fbdev/bw2.c +1
-1@@ -37,7 +37,7 @@ static int bw2_ioctl(struct fb_info *, unsigned int, unsigned long);* Frame buffer operations */ -static struct fb_ops bw2_ops = { +static const struct fb_ops bw2_ops = { .owner =THIS_MODULE , .fb_blank = bw2_blank, .fb_fillrect = cfb_fillrect,drivers/video/fbdev/carminefb.c +1
-1@@ -527,7 +527,7 @@ static int init_hardware(struct carmine_hw *hw)return 0 ; } -static struct fb_ops carminefb_ops = { +static const struct fb_ops carminefb_ops = { .owner =THIS_MODULE , .fb_fillrect = cfb_fillrect, .fb_copyarea = cfb_copyarea,drivers/video/fbdev/cg14.c +1
-1@@ -39,7 +39,7 @@ static int cg14_pan_display(struct fb_var_screeninfo *, struct fb_info *);* Frame buffer operations */ -static struct fb_ops cg14_ops = { +static const struct fb_ops cg14_ops = { .owner =THIS_MODULE , .fb_setcolreg = cg14_setcolreg, .fb_pan_display = cg14_pan_display,drivers/video/fbdev/cg3.c +1
-1@@ -39,7 +39,7 @@ static int cg3_ioctl(struct fb_info *, unsigned int, unsigned long);* Frame buffer operations */ -static struct fb_ops cg3_ops = { +static const struct fb_ops cg3_ops = { .owner =THIS_MODULE , .fb_setcolreg = cg3_setcolreg, .fb_blank = cg3_blank,drivers/video/fbdev/cg6.c +1
-1@@ -44,7 +44,7 @@ static int cg6_pan_display(struct fb_var_screeninfo *, struct fb_info *);* Frame buffer operations */ -static struct fb_ops cg6_ops = { +static const struct fb_ops cg6_ops = { .owner =THIS_MODULE , .fb_setcolreg = cg6_setcolreg, .fb_blank = cg6_blank,drivers/video/fbdev/chipsfb.c +1
-1@@ -79,7 +79,7 @@ static int chipsfb_setcolreg(u_int regno, u_int red, u_int green, u_int blue, u_int transp, struct fb_info *info);static int chipsfb_blank (int blank,struct fb_info *info); -static struct fb_ops chipsfb_ops = { +static const struct fb_ops chipsfb_ops = { .owner =THIS_MODULE , .fb_check_var = chipsfb_check_var, .fb_set_par = chipsfb_set_par,drivers/video/fbdev/cirrusfb.c +1
-1@@ -1956,7 +1956,7 @@ static void cirrusfb_zorro_unmap(struct fb_info *info)#endif /* CONFIG_ZORRO */ /* function table of the above functions */ -static struct fb_ops cirrusfb_ops = { +static const struct fb_ops cirrusfb_ops = { .owner =THIS_MODULE , .fb_open = cirrusfb_open, .fb_release = cirrusfb_release,drivers/video/fbdev/clps711x-fb.c +1
-1@@ -153,7 +153,7 @@ static int clps711x_fb_blank(int blank, struct fb_info *info)return 0 ; } -static struct fb_ops clps711x_fb_ops = { +static const struct fb_ops clps711x_fb_ops = { .owner =THIS_MODULE , .fb_setcolreg = clps711x_fb_setcolreg, .fb_check_var = clps711x_fb_check_var,drivers/video/fbdev/cobalt_lcdfb.c +1
-1@@ -269,7 +269,7 @@ static int cobalt_lcdfb_cursor(struct fb_info *info, struct fb_cursor *cursor)return 0 ; } -static struct fb_ops cobalt_lcd_fbops = { +static const struct fb_ops cobalt_lcd_fbops = { .owner =THIS_MODULE , .fb_read = cobalt_lcdfb_read, .fb_write = cobalt_lcdfb_write,drivers/video/fbdev/controlfb.c +1
-1@@ -157,7 +157,7 @@ static int default_vmode __initdata = VMODE_NVRAM;static int default_cmode__initdata =CMODE_NVRAM ; -static struct fb_ops controlfb_ops = { +static const struct fb_ops controlfb_ops = { .owner =THIS_MODULE , .fb_check_var = controlfb_check_var, .fb_set_par = controlfb_set_par,drivers/video/fbdev/cyber2000fb.c +1
-1@@ -1060,7 +1060,7 @@ static int cyber2000fb_blank(int blank, struct fb_info *info)return 0 ; } -static struct fb_ops cyber2000fb_ops = { +static const struct fb_ops cyber2000fb_ops = { .owner =THIS_MODULE , .fb_check_var = cyber2000fb_check_var, .fb_set_par = cyber2000fb_set_par,drivers/video/fbdev/da8xx-fb.c +1
-1@@ -1294,7 +1294,7 @@ static int da8xxfb_set_par(struct fb_info *info)return 0 ; } -static struct fb_ops da8xx_fb_ops = { +static const struct fb_ops da8xx_fb_ops = { .owner =THIS_MODULE , .fb_check_var = fb_check_var, .fb_set_par = da8xxfb_set_par,drivers/video/fbdev/dnfb.c +1
-1@@ -108,7 +108,7 @@static int dnfb_blank (int blank,struct fb_info *info);static void dnfb_copyarea (struct fb_info *info,const struct fb_copyarea *area); -static struct fb_ops dn_fb_ops = { +static const struct fb_ops dn_fb_ops = { .owner =THIS_MODULE , .fb_blank = dnfb_blank, .fb_fillrect = cfb_fillrect,drivers/video/fbdev/efifb.c +1
-1@@ -255,7 +255,7 @@ static void efifb_destroy(struct fb_info *info)fb_dealloc_cmap (&info->cmap); } -static struct fb_ops efifb_ops = { +static const struct fb_ops efifb_ops = { .owner =THIS_MODULE , .fb_destroy = efifb_destroy, .fb_setcolreg = efifb_setcolreg,drivers/video/fbdev/ep93xx-fb.c +1
-1@@ -402,7 +402,7 @@ static int ep93xxfb_setcolreg(unsigned int regno, unsigned int red,return 0 ; } -static struct fb_ops ep93xxfb_ops = { +static const struct fb_ops ep93xxfb_ops = { .owner =THIS_MODULE , .fb_check_var = ep93xxfb_check_var, .fb_set_par = ep93xxfb_set_par,drivers/video/fbdev/fb-puv3.c +1
-1@@ -644,7 +644,7 @@ int unifb_mmap(struct fb_info *info,return vm_iomap_memory (vma, info->fix.smem_start, info->fix.smem_len); } -static struct fb_ops unifb_ops = { +static const struct fb_ops unifb_ops = { .fb_read = fb_sys_read, .fb_write = fb_sys_write, .fb_check_var = unifb_check_var,drivers/video/fbdev/ffb.c +1
-1@@ -44,7 +44,7 @@ static int ffb_pan_display(struct fb_var_screeninfo *, struct fb_info *);* Frame buffer operations */ -static struct fb_ops ffb_ops = { +static const struct fb_ops ffb_ops = { .owner =THIS_MODULE , .fb_setcolreg = ffb_setcolreg, .fb_blank = ffb_blank,drivers/video/fbdev/fm2fb.c +1
-1@@ -165,7 +165,7 @@ static int fm2fb_setcolreg(u_int regno, u_int red, u_int green, u_int blue, u_int transp, struct fb_info *info);static int fm2fb_blank (int blank,struct fb_info *info); -static struct fb_ops fm2fb_ops = { +static const struct fb_ops fm2fb_ops = { .owner =THIS_MODULE , .fb_setcolreg = fm2fb_setcolreg, .fb_blank = fm2fb_blank,drivers/video/fbdev/fsl-diu-fb.c +1
-1@@ -1448,7 +1448,7 @@ static int fsl_diu_release(struct fb_info *info, int user)return res; } -static struct fb_ops fsl_diu_ops = { +static const struct fb_ops fsl_diu_ops = { .owner =THIS_MODULE , .fb_check_var = fsl_diu_check_var, .fb_set_par = fsl_diu_set_par,drivers/video/fbdev/g364fb.c +1
-1@@ -111,7 +111,7 @@ static int g364fb_setcolreg(u_int regno, u_int red, u_int green,static int g364fb_cursor (struct fb_info *info,struct fb_cursor *cursor);static int g364fb_blank (int blank,struct fb_info *info); -static struct fb_ops g364fb_ops = { +static const struct fb_ops g364fb_ops = { .owner =THIS_MODULE , .fb_setcolreg = g364fb_setcolreg, .fb_pan_display = g364fb_pan_display,drivers/video/fbdev/gbefb.c +1
-1@@ -1044,7 +1044,7 @@ static int gbefb_mmap(struct fb_info *info,return 0 ; } -static struct fb_ops gbefb_ops = { +static const struct fb_ops gbefb_ops = { .owner =THIS_MODULE , .fb_check_var = gbefb_check_var, .fb_set_par = gbefb_set_par,drivers/video/fbdev/geode/gx1fb_core.c +1
-1@@ -252,7 +252,7 @@ static int parse_panel_option(struct fb_info *info)return 0 ; } -static struct fb_ops gx1fb_ops = { +static const struct fb_ops gx1fb_ops = { .owner =THIS_MODULE , .fb_check_var = gx1fb_check_var, .fb_set_par = gx1fb_set_par,drivers/video/fbdev/geode/gxfb_core.c +1
-1@@ -265,7 +265,7 @@ static int gxfb_map_video_memory(struct fb_info *info, struct pci_dev *dev)return 0 ; } -static struct fb_ops gxfb_ops = { +static const struct fb_ops gxfb_ops = { .owner =THIS_MODULE , .fb_check_var = gxfb_check_var, .fb_set_par = gxfb_set_par,drivers/video/fbdev/geode/lxfb_core.c +1
-1@@ -386,7 +386,7 @@ static int lxfb_map_video_memory(struct fb_info *info, struct pci_dev *dev)return 0 ; } -static struct fb_ops lxfb_ops = { +static const struct fb_ops lxfb_ops = { .owner =THIS_MODULE , .fb_check_var = lxfb_check_var, .fb_set_par = lxfb_set_par,drivers/video/fbdev/goldfishfb.c +1
-1@@ -160,7 +160,7 @@ static int goldfish_fb_blank(int blank, struct fb_info *info)return 0 ; } -static struct fb_ops goldfish_fb_ops = { +static const struct fb_ops goldfish_fb_ops = { .owner =THIS_MODULE , .fb_check_var = goldfish_fb_check_var, .fb_set_par = goldfish_fb_set_par,drivers/video/fbdev/grvga.c +1
-1@@ -251,7 +251,7 @@ static int grvga_pan_display(struct fb_var_screeninfo *var,return 0 ; } -static struct fb_ops grvga_ops = { +static const struct fb_ops grvga_ops = { .owner =THIS_MODULE , .fb_check_var = grvga_check_var, .fb_set_par = grvga_set_par,drivers/video/fbdev/gxt4500.c +1
-1@@ -599,7 +599,7 @@ static const struct fb_fix_screeninfo gxt4500_fix = { .mmio_len = 0x20000, }; -static struct fb_ops gxt4500_ops = { +static const struct fb_ops gxt4500_ops = { .owner =THIS_MODULE , .fb_check_var = gxt4500_check_var, .fb_set_par = gxt4500_set_par,drivers/video/fbdev/hecubafb.c +1
-1@@ -197,7 +197,7 @@ static ssize_t hecubafb_write(struct fb_info *info, const char __user *buf,return (err) ? err : count; } -static struct fb_ops hecubafb_ops = { +static const struct fb_ops hecubafb_ops = { .owner =THIS_MODULE , .fb_read = fb_sys_read, .fb_write = hecubafb_write,drivers/video/fbdev/hgafb.c +1
-1@@ -523,7 +523,7 @@ static void hgafb_imageblit(struct fb_info *info, const struct fb_image *image) } } -static struct fb_ops hgafb_ops = { +static const struct fb_ops hgafb_ops = { .owner =THIS_MODULE , .fb_open = hgafb_open, .fb_release = hgafb_release,drivers/video/fbdev/hitfb.c +1
-1@@ -311,7 +311,7 @@ static int hitfb_set_par(struct fb_info *info)return 0 ; } -static struct fb_ops hitfb_ops = { +static const struct fb_ops hitfb_ops = { .owner =THIS_MODULE , .fb_check_var = hitfb_check_var, .fb_set_par = hitfb_set_par,drivers/video/fbdev/hpfb.c +1
-1@@ -184,7 +184,7 @@ static int hpfb_sync(struct fb_info *info)return 0 ; } -static struct fb_ops hpfb_ops = { +static const struct fb_ops hpfb_ops = { .owner =THIS_MODULE , .fb_setcolreg = hpfb_setcolreg, .fb_blank = hpfb_blank,drivers/video/fbdev/hyperv_fb.c +1
-1@@ -623,7 +623,7 @@ static void hvfb_cfb_imageblit(struct fb_info *p,synthvid_update (p); } -static struct fb_ops hvfb_ops = { +static const struct fb_ops hvfb_ops = { .owner =THIS_MODULE , .fb_check_var = hvfb_check_var, .fb_set_par = hvfb_set_par,drivers/video/fbdev/i740fb.c +1
-1@@ -981,7 +981,7 @@ static int i740fb_blank(int blank_mode, struct fb_info *info)return (blank_mode =FB_BLANK_NORMAL ) ?1 :0 ; } -static struct fb_ops i740fb_ops = { +static const struct fb_ops i740fb_ops = { .owner =THIS_MODULE , .fb_open = i740fb_open, .fb_release = i740fb_release,drivers/video/fbdev/imsttfb.c +1
-1@@ -1333,7 +1333,7 @@ static struct pci_driver imsttfb_pci_driver = { .remove = imsttfb_remove, }; -static struct fb_ops imsttfb_ops = { +static const struct fb_ops imsttfb_ops = { .owner =THIS_MODULE , .fb_check_var = imsttfb_check_var, .fb_set_par = imsttfb_set_par,drivers/video/fbdev/imxfb.c +1
-1@@ -566,7 +566,7 @@ static int imxfb_blank(int blank, struct fb_info *info)return 0 ; } -static struct fb_ops imxfb_ops = { +static const struct fb_ops imxfb_ops = { .owner =THIS_MODULE , .fb_check_var = imxfb_check_var, .fb_set_par = imxfb_set_par,drivers/video/fbdev/intelfb/intelfbdrv.c +1
-1@@ -193,7 +193,7 @@ static const struct pci_device_id intelfb_pci_table[] = {static int num_registered =0 ;/* fb ops */ -static struct fb_ops intel_fb_ops = { +static const struct fb_ops intel_fb_ops = { .owner =THIS_MODULE , .fb_open = intelfb_open, .fb_release = intelfb_release,drivers/video/fbdev/kyro/fbdev.c +1
-1@@ -648,7 +648,7 @@ static struct pci_driver kyrofb_pci_driver = { .remove = kyrofb_remove, }; -static struct fb_ops kyrofb_ops = { +static const struct fb_ops kyrofb_ops = { .owner =THIS_MODULE , .fb_check_var = kyrofb_check_var, .fb_set_par = kyrofb_set_par,drivers/video/fbdev/leo.c +1
-1@@ -39,7 +39,7 @@ static int leo_pan_display(struct fb_var_screeninfo *, struct fb_info *);* Frame buffer operations */ -static struct fb_ops leo_ops = { +static const struct fb_ops leo_ops = { .owner =THIS_MODULE , .fb_setcolreg = leo_setcolreg, .fb_blank = leo_blank,drivers/video/fbdev/macfb.c +1
-1@@ -496,7 +496,7 @@ static int macfb_setcolreg(unsigned regno, unsigned red, unsigned green,return 0 ; } -static struct fb_ops macfb_ops = { +static const struct fb_ops macfb_ops = { .owner =THIS_MODULE , .fb_setcolreg = macfb_setcolreg, .fb_fillrect = cfb_fillrect,drivers/video/fbdev/matrox/matroxfb_crtc2.c +1
-1@@ -563,7 +563,7 @@ static int matroxfb_dh_blank(int blank, struct fb_info* info) {#undef m2info } -static struct fb_ops matroxfb_dh_ops = { +static const struct fb_ops matroxfb_dh_ops = { .owner =THIS_MODULE , .fb_open = matroxfb_dh_open, .fb_release = matroxfb_dh_release,drivers/video/fbdev/maxinefb.c +1
-1@@ -105,7 +105,7 @@ static int maxinefb_setcolreg(unsigned regno, unsigned red, unsigned green,return 0 ; } -static struct fb_ops maxinefb_ops = { +static const struct fb_ops maxinefb_ops = { .owner =THIS_MODULE , .fb_setcolreg = maxinefb_setcolreg, .fb_fillrect = cfb_fillrect,drivers/video/fbdev/mbx/mbxfb.c +1
-1@@ -671,7 +671,7 @@ static int mbxfb_ioctl(struct fb_info *info, unsigned int cmd,return -EINVAL ; } -static struct fb_ops mbxfb_ops = { +static const struct fb_ops mbxfb_ops = { .owner =THIS_MODULE , .fb_check_var = mbxfb_check_var, .fb_set_par = mbxfb_set_par,drivers/video/fbdev/metronomefb.c +1
-1@@ -558,7 +558,7 @@ static ssize_t metronomefb_write(struct fb_info *info, const char __user *buf,return (err) ? err : count; } -static struct fb_ops metronomefb_ops = { +static const struct fb_ops metronomefb_ops = { .owner =THIS_MODULE , .fb_write = metronomefb_write, .fb_fillrect = metronomefb_fillrect,drivers/video/fbdev/mmp/fb/mmpfb.c +1
-1@@ -454,7 +454,7 @@ static int mmpfb_blank(int blank, struct fb_info *info)return 0 ; } -static struct fb_ops mmpfb_ops = { +static const struct fb_ops mmpfb_ops = { .owner =THIS_MODULE , .fb_blank = mmpfb_blank, .fb_check_var = mmpfb_check_var,drivers/video/fbdev/mx3fb.c +3
-2@@ -1249,7 +1249,7 @@ static int mx3fb_pan_display(struct fb_var_screeninfo *var,* invoked by the core framebuffer driver to perform operations like * blitting, rectangle filling, copy regions and cursor definition. */ -static struct fb_ops mx3fb_ops = { +static const struct fb_ops mx3fb_ops = { .owner =THIS_MODULE , .fb_set_par = mx3fb_set_par, .fb_check_var = mx3fb_check_var,@@ -1389,7 +1389,8 @@ static int mx3fb_unmap_video_memory(struct fb_info *fbi)* mx3fb_init_fbinfo() - initialize framebuffer information object. * @return: initialized framebuffer structure. */ -static struct fb_info *mx3fb_init_fbinfo (struct device *dev,struct fb_ops *ops) +static struct fb_info *mx3fb_init_fbinfo (struct device *dev, +const struct fb_ops *ops) {struct fb_info *fbi;struct mx3fb_info *mx3fbi;drivers/video/fbdev/neofb.c +1
-1@@ -1610,7 +1610,7 @@ neofb_cursor(struct fb_info *info, struct fb_cursor *cursor)} */ -static struct fb_ops neofb_ops = { +static const struct fb_ops neofb_ops = { .owner =THIS_MODULE , .fb_open = neofb_open, .fb_release = neofb_release,drivers/video/fbdev/ocfb.c +1
-1@@ -285,7 +285,7 @@ static int ocfb_init_var(struct ocfb_dev *fbdev)return 0 ; } -static struct fb_ops ocfb_ops = { +static const struct fb_ops ocfb_ops = { .owner =THIS_MODULE , .fb_setcolreg = ocfb_setcolreg, .fb_fillrect = cfb_fillrect,drivers/video/fbdev/offb.c +1
-1@@ -286,7 +286,7 @@ static void offb_destroy(struct fb_info *info)framebuffer_release (info); } -static struct fb_ops offb_ops = { +static const struct fb_ops offb_ops = { .owner =THIS_MODULE , .fb_destroy = offb_destroy, .fb_setcolreg = offb_setcolreg,drivers/video/fbdev/omap2/omapfb/omapfb-main.c +1
-1@@ -1280,7 +1280,7 @@ ssize_t omapfb_write(struct fb_info *info, const char __user *buf, }#endif -static struct fb_ops omapfb_ops = { +static const struct fb_ops omapfb_ops = { .owner =THIS_MODULE , .fb_open = omapfb_open, .fb_release = omapfb_release,drivers/video/fbdev/p9100.c +1
-1@@ -37,7 +37,7 @@ static int p9100_ioctl(struct fb_info *, unsigned int, unsigned long);* Frame buffer operations */ -static struct fb_ops p9100_ops = { +static const struct fb_ops p9100_ops = { .owner =THIS_MODULE , .fb_setcolreg = p9100_setcolreg, .fb_blank = p9100_blank,drivers/video/fbdev/platinumfb.c +1
-1@@ -96,7 +96,7 @@ static int platinum_var_to_par(struct fb_var_screeninfo *var,* Interface used by the world */ -static struct fb_ops platinumfb_ops = { +static const struct fb_ops platinumfb_ops = { .owner =THIS_MODULE , .fb_check_var = platinumfb_check_var, .fb_set_par = platinumfb_set_par,drivers/video/fbdev/pm2fb.c +1
-1@@ -1483,7 +1483,7 @@ static int pm2fb_cursor(struct fb_info *info, struct fb_cursor *cursor)* Frame buffer operations */ -static struct fb_ops pm2fb_ops = { +static const struct fb_ops pm2fb_ops = { .owner =THIS_MODULE , .fb_check_var = pm2fb_check_var, .fb_set_par = pm2fb_set_par,drivers/video/fbdev/pm3fb.c +1
-1@@ -1200,7 +1200,7 @@ static int pm3fb_blank(int blank_mode, struct fb_info *info)* Frame buffer operations */ -static struct fb_ops pm3fb_ops = { +static const struct fb_ops pm3fb_ops = { .owner =THIS_MODULE , .fb_check_var = pm3fb_check_var, .fb_set_par = pm3fb_set_par,drivers/video/fbdev/pmag-aa-fb.c +1
-1@@ -147,7 +147,7 @@ static int aafb_blank(int blank, struct fb_info *info)return 0 ; } -static struct fb_ops aafb_ops = { +static const struct fb_ops aafb_ops = { .owner =THIS_MODULE , .fb_blank = aafb_blank, .fb_fillrect = cfb_fillrect,drivers/video/fbdev/pmag-ba-fb.c +1
-1@@ -117,7 +117,7 @@ static int pmagbafb_setcolreg(unsigned int regno, unsigned int red,return 0 ; } -static struct fb_ops pmagbafb_ops = { +static const struct fb_ops pmagbafb_ops = { .owner =THIS_MODULE , .fb_setcolreg = pmagbafb_setcolreg, .fb_fillrect = cfb_fillrect,drivers/video/fbdev/pmagb-b-fb.c +1
-1@@ -121,7 +121,7 @@ static int pmagbbfb_setcolreg(unsigned int regno, unsigned int red,return 0 ; } -static struct fb_ops pmagbbfb_ops = { +static const struct fb_ops pmagbbfb_ops = { .owner =THIS_MODULE , .fb_setcolreg = pmagbbfb_setcolreg, .fb_fillrect = cfb_fillrect,drivers/video/fbdev/ps3fb.c +1
-1@@ -934,7 +934,7 @@ static irqreturn_t ps3fb_vsync_interrupt(int irq, void *ptr) } -static struct fb_ops ps3fb_ops = { +static const struct fb_ops ps3fb_ops = { .fb_open = ps3fb_open, .fb_release = ps3fb_release, .fb_read = fb_sys_read,drivers/video/fbdev/pvr2fb.c +1
-1@@ -707,7 +707,7 @@ static ssize_t pvr2fb_write(struct fb_info *info, const char *buf, }#endif /* CONFIG_PVR2_DMA */ -static struct fb_ops pvr2fb_ops = { +static const struct fb_ops pvr2fb_ops = { .owner =THIS_MODULE , .fb_setcolreg = pvr2fb_setcolreg, .fb_blank = pvr2fb_blank,drivers/video/fbdev/pxa168fb.c +1
-1@@ -545,7 +545,7 @@ static irqreturn_t pxa168fb_handle_irq(int irq, void *dev_id)return IRQ_NONE ; } -static struct fb_ops pxa168fb_ops = { +static const struct fb_ops pxa168fb_ops = { .owner =THIS_MODULE , .fb_check_var = pxa168fb_check_var, .fb_set_par = pxa168fb_set_par,drivers/video/fbdev/pxafb.c +2
-2@@ -597,7 +597,7 @@ static int pxafb_blank(int blank, struct fb_info *info)return 0 ; } -static struct fb_ops pxafb_ops = { +static const struct fb_ops pxafb_ops = { .owner =THIS_MODULE , .fb_check_var = pxafb_check_var, .fb_set_par = pxafb_set_par,@@ -865,7 +865,7 @@ static int overlayfb_set_par(struct fb_info *info)return 0 ; } -static struct fb_ops overlay_fb_ops = { +static const struct fb_ops overlay_fb_ops = { .owner =THIS_MODULE , .fb_open = overlayfb_open, .fb_release = overlayfb_release,drivers/video/fbdev/q40fb.c +1
-1@@ -75,7 +75,7 @@ static int q40fb_setcolreg(unsigned regno, unsigned red, unsigned green,return 0 ; } -static struct fb_ops q40fb_ops = { +static const struct fb_ops q40fb_ops = { .owner =THIS_MODULE , .fb_setcolreg = q40fb_setcolreg, .fb_fillrect = cfb_fillrect,drivers/video/fbdev/riva/fbdev.c +1
-1@@ -1673,7 +1673,7 @@ static int rivafb_sync(struct fb_info *info)* ------------------------------------------------------------------------- */ /* kernel interface */ -static struct fb_ops riva_fb_ops = { +static const struct fb_ops riva_fb_ops = { .owner =THIS_MODULE , .fb_open = rivafb_open, .fb_release = rivafb_release,drivers/video/fbdev/s3c-fb.c +1
-1@@ -1035,7 +1035,7 @@ static int s3c_fb_ioctl(struct fb_info *info, unsigned int cmd,return ret; } -static struct fb_ops s3c_fb_ops = { +static const struct fb_ops s3c_fb_ops = { .owner =THIS_MODULE , .fb_check_var = s3c_fb_check_var, .fb_set_par = s3c_fb_set_par,drivers/video/fbdev/s3c2410fb.c +1
-1@@ -618,7 +618,7 @@ static int s3c2410fb_debug_store(struct device *dev, static DEVICE_ATTR(debug, 0664, s3c2410fb_debug_show, s3c2410fb_debug_store); -static struct fb_ops s3c2410fb_ops = { +static const struct fb_ops s3c2410fb_ops = { .owner =THIS_MODULE , .fb_check_var = s3c2410fb_check_var, .fb_set_par = s3c2410fb_set_par,drivers/video/fbdev/s3fb.c +1
-1@@ -1037,7 +1037,7 @@ static int s3fb_pan_display(struct fb_var_screeninfo *var, struct fb_info *info)/* Frame buffer operations */ -static struct fb_ops s3fb_ops = { +static const struct fb_ops s3fb_ops = { .owner =THIS_MODULE , .fb_open = s3fb_open, .fb_release = s3fb_release,drivers/video/fbdev/sa1100fb.c +1
-1@@ -574,7 +574,7 @@ static int sa1100fb_mmap(struct fb_info *info,return vm_iomap_memory (vma, info->fix.mmio_start, info->fix.mmio_len); } -static struct fb_ops sa1100fb_ops = { +static const struct fb_ops sa1100fb_ops = { .owner =THIS_MODULE , .fb_check_var = sa1100fb_check_var, .fb_set_par = sa1100fb_set_par,drivers/video/fbdev/savage/savagefb_driver.c +1
-1@@ -1637,7 +1637,7 @@ static int savagefb_release(struct fb_info *info, int user)return 0 ; } -static struct fb_ops savagefb_ops = { +static const struct fb_ops savagefb_ops = { .owner =THIS_MODULE , .fb_open = savagefb_open, .fb_release = savagefb_release,drivers/video/fbdev/sh7760fb.c +1
-1@@ -341,7 +341,7 @@ static int sh7760fb_set_par(struct fb_info *info)return 0 ; } -static struct fb_ops sh7760fb_ops = { +static const struct fb_ops sh7760fb_ops = { .owner =THIS_MODULE , .fb_blank = sh7760fb_blank, .fb_check_var = sh7760fb_check_var,drivers/video/fbdev/sh_mobile_lcdcfb.c +2
-2@@ -1490,7 +1490,7 @@ sh_mobile_lcdc_overlay_mmap(struct fb_info *info, struct vm_area_struct *vma) ovl->dma_handle, ovl->fb_size); } -static struct fb_ops sh_mobile_lcdc_overlay_ops = { +static const struct fb_ops sh_mobile_lcdc_overlay_ops = { .owner =THIS_MODULE , .fb_read = fb_sys_read, .fb_write = fb_sys_write,@@ -1964,7 +1964,7 @@ sh_mobile_lcdc_mmap(struct fb_info *info, struct vm_area_struct *vma) ch->dma_handle, ch->fb_size); } -static struct fb_ops sh_mobile_lcdc_ops = { +static const struct fb_ops sh_mobile_lcdc_ops = { .owner =THIS_MODULE , .fb_setcolreg = sh_mobile_lcdc_setcolreg, .fb_read = fb_sys_read,drivers/video/fbdev/simplefb.c +1
-1@@ -78,7 +78,7 @@ static void simplefb_destroy(struct fb_info *info)iounmap (info->screen_base); } -static struct fb_ops simplefb_ops = { +static const struct fb_ops simplefb_ops = { .owner =THIS_MODULE , .fb_destroy = simplefb_destroy, .fb_setcolreg = simplefb_setcolreg,drivers/video/fbdev/sis/sis_main.c +1
-1@@ -1906,7 +1906,7 @@ sisfb_get_fix(struct fb_fix_screeninfo *fix, int con, struct fb_info *info)/* ---------------- fb_ops structures ----------------- */ -static struct fb_ops sisfb_ops = { +static const struct fb_ops sisfb_ops = { .owner =THIS_MODULE , .fb_open = sisfb_open, .fb_release = sisfb_release,drivers/video/fbdev/skeletonfb.c +1
-1@@ -634,7 +634,7 @@ int xxxfb_sync(struct fb_info *info)* Frame buffer operations */ -static struct fb_ops xxxfb_ops = { +static const struct fb_ops xxxfb_ops = { .owner =THIS_MODULE , .fb_open = xxxfb_open, .fb_read = xxxfb_read,drivers/video/fbdev/sm712fb.c +1
-1@@ -1369,7 +1369,7 @@ static int smtc_set_par(struct fb_info *info)return 0 ; } -static struct fb_ops smtcfb_ops = { +static const struct fb_ops smtcfb_ops = { .owner =THIS_MODULE , .fb_check_var = smtc_check_var, .fb_set_par = smtc_set_par,drivers/video/fbdev/smscufx.c +1
-1@@ -1268,7 +1268,7 @@ static int ufx_ops_blank(int blank_mode, struct fb_info *info)return 0 ; } -static struct fb_ops ufx_ops = { +static const struct fb_ops ufx_ops = { .owner =THIS_MODULE , .fb_read = fb_sys_read, .fb_write = ufx_ops_write,drivers/video/fbdev/ssd1307fb.c +1
-1@@ -280,7 +280,7 @@ static void ssd1307fb_imageblit(struct fb_info *info, const struct fb_image *imassd1307fb_update_display (par); } -static struct fb_ops ssd1307fb_ops = { +static const struct fb_ops ssd1307fb_ops = { .owner =THIS_MODULE , .fb_read = fb_sys_read, .fb_write = ssd1307fb_write,drivers/video/fbdev/sstfb.c +1
-1@@ -1307,7 +1307,7 @@ static int sstfb_setup(char *options) } -static struct fb_ops sstfb_ops = { +static const struct fb_ops sstfb_ops = { .owner =THIS_MODULE , .fb_check_var = sstfb_check_var, .fb_set_par = sstfb_set_par,drivers/video/fbdev/stifb.c +1
-1@@ -1101,7 +1101,7 @@ stifb_init_display(struct stifb_info *fb)/* ------------ Interfaces to hardware functions ------------ */ -static struct fb_ops stifb_ops = { +static const struct fb_ops stifb_ops = { .owner =THIS_MODULE , .fb_setcolreg = stifb_setcolreg, .fb_blank = stifb_blank,drivers/video/fbdev/sunxvr1000.c +1
-1@@ -59,7 +59,7 @@ static int gfb_setcolreg(unsigned regno,return 0 ; } -static struct fb_ops gfb_ops = { +static const struct fb_ops gfb_ops = { .owner =THIS_MODULE , .fb_setcolreg = gfb_setcolreg, .fb_fillrect = cfb_fillrect,drivers/video/fbdev/sunxvr2500.c +1
-1@@ -63,7 +63,7 @@ static int s3d_setcolreg(unsigned regno,return 0 ; } -static struct fb_ops s3d_ops = { +static const struct fb_ops s3d_ops = { .owner =THIS_MODULE , .fb_setcolreg = s3d_setcolreg, .fb_fillrect = cfb_fillrect,drivers/video/fbdev/sunxvr500.c +1
-1@@ -186,7 +186,7 @@ static void e3d_copyarea(struct fb_info *info, const struct fb_copyarea *area)spin_unlock_irqrestore (&ep->lock, flags); } -static struct fb_ops e3d_ops = { +static const struct fb_ops e3d_ops = { .owner =THIS_MODULE , .fb_setcolreg = e3d_setcolreg, .fb_fillrect = e3d_fillrect,drivers/video/fbdev/tcx.c +1
-1@@ -40,7 +40,7 @@ static int tcx_pan_display(struct fb_var_screeninfo *, struct fb_info *);* Frame buffer operations */ -static struct fb_ops tcx_ops = { +static const struct fb_ops tcx_ops = { .owner =THIS_MODULE , .fb_setcolreg = tcx_setcolreg, .fb_blank = tcx_blank,drivers/video/fbdev/tdfxfb.c +1
-1@@ -1141,7 +1141,7 @@ static int tdfxfb_cursor(struct fb_info *info, struct fb_cursor *cursor)return 0 ; } -static struct fb_ops tdfxfb_ops = { +static const struct fb_ops tdfxfb_ops = { .owner =THIS_MODULE , .fb_check_var = tdfxfb_check_var, .fb_set_par = tdfxfb_set_par,drivers/video/fbdev/tgafb.c +1
-1@@ -70,7 +70,7 @@ static struct tc_driver tgafb_tc_driver;* Frame buffer operations */ -static struct fb_ops tgafb_ops = { +static const struct fb_ops tgafb_ops = { .owner =THIS_MODULE , .fb_check_var = tgafb_check_var, .fb_set_par = tgafb_set_par,drivers/video/fbdev/tmiofb.c +1
-1@@ -646,7 +646,7 @@ static int tmiofb_blank(int blank, struct fb_info *info)return 0 ; } -static struct fb_ops tmiofb_ops = { +static const struct fb_ops tmiofb_ops = { .owner =THIS_MODULE , .fb_ioctl = tmiofb_ioctl,drivers/video/fbdev/tridentfb.c +1
-1@@ -1443,7 +1443,7 @@ static int tridentfb_blank(int blank_mode, struct fb_info *info)return (blank_mode =FB_BLANK_NORMAL ) ?1 :0 ; } -static struct fb_ops tridentfb_ops = { +static const struct fb_ops tridentfb_ops = { .owner =THIS_MODULE , .fb_setcolreg = tridentfb_setcolreg, .fb_pan_display = tridentfb_pan_display,drivers/video/fbdev/valkyriefb.c +1
-1@@ -113,7 +113,7 @@ static int valkyrie_init_info(struct fb_info *info, struct fb_info_valkyrie *p);static void valkyrie_par_to_fix (struct fb_par_valkyrie *par,struct fb_fix_screeninfo *fix);static void valkyrie_init_fix (struct fb_fix_screeninfo *fix,struct fb_info_valkyrie *p); -static struct fb_ops valkyriefb_ops = { +static const struct fb_ops valkyriefb_ops = { .owner =THIS_MODULE , .fb_check_var = valkyriefb_check_var, .fb_set_par = valkyriefb_set_par,drivers/video/fbdev/vfb.c +1
-1@@ -78,7 +78,7 @@ static int vfb_pan_display(struct fb_var_screeninfo *var,static int vfb_mmap (struct fb_info *info,struct vm_area_struct *vma); -static struct fb_ops vfb_ops = { +static const struct fb_ops vfb_ops = { .fb_read = fb_sys_read, .fb_write = fb_sys_write, .fb_check_var = vfb_check_var,drivers/video/fbdev/vga16fb.c +1
-1@@ -1270,7 +1270,7 @@ static void vga16fb_destroy(struct fb_info *info)framebuffer_release (info); } -static struct fb_ops vga16fb_ops = { +static const struct fb_ops vga16fb_ops = { .owner =THIS_MODULE , .fb_open = vga16fb_open, .fb_release = vga16fb_release,drivers/video/fbdev/vt8500lcdfb.c +1
-1@@ -238,7 +238,7 @@ static int vt8500lcd_blank(int blank, struct fb_info *info)return 0 ; } -static struct fb_ops vt8500lcd_ops = { +static const struct fb_ops vt8500lcd_ops = { .owner =THIS_MODULE , .fb_set_par = vt8500lcd_set_par, .fb_setcolreg = vt8500lcd_setcolreg,drivers/video/fbdev/vt8623fb.c +1
-1@@ -634,7 +634,7 @@ static int vt8623fb_pan_display(struct fb_var_screeninfo *var, struct fb_info *i/* Frame buffer operations */ -static struct fb_ops vt8623fb_ops = { +static const struct fb_ops vt8623fb_ops = { .owner =THIS_MODULE , .fb_open = vt8623fb_open, .fb_release = vt8623fb_release,drivers/video/fbdev/w100fb.c +1
-1@@ -549,7 +549,7 @@ static int w100fb_set_par(struct fb_info *info)/* * Frame buffer operations */ -static struct fb_ops w100fb_ops = { +static const struct fb_ops w100fb_ops = { .owner =THIS_MODULE , .fb_check_var = w100fb_check_var, .fb_set_par = w100fb_set_par,drivers/video/fbdev/wm8505fb.c +1
-1@@ -246,7 +246,7 @@ static int wm8505fb_blank(int blank, struct fb_info *info)return 0 ; } -static struct fb_ops wm8505fb_ops = { +static const struct fb_ops wm8505fb_ops = { .owner =THIS_MODULE , .fb_set_par = wm8505fb_set_par, .fb_setcolreg = wm8505fb_setcolreg,drivers/video/fbdev/xen-fbfront.c +1
-1@@ -328,7 +328,7 @@ static int xenfb_set_par(struct fb_info *info)return 0 ; } -static struct fb_ops xenfb_fb_ops = { +static const struct fb_ops xenfb_fb_ops = { .owner =THIS_MODULE , .fb_read = fb_sys_read, .fb_write = xenfb_write,drivers/video/fbdev/xilinxfb.c +1
-1@@ -247,7 +247,7 @@ xilinx_fb_blank(int blank_mode, struct fb_info *fbi)return 0 ;/* success */ } -static struct fb_ops xilinxfb_ops = { +static const struct fb_ops xilinxfb_ops = { .owner =THIS_MODULE , .fb_setcolreg = xilinx_fb_setcolreg, .fb_blank = xilinx_fb_blank,
Signature · 1 line
Jani Nikula, Intel Open Source Graphics Center
PATCH v3 9/12 HID: picoLCD: constify fb ops
In reply to Jani NikulaNow that the fbops member of struct fb_info is const, we can start making the ops const as well.
v2: fix typo (Christophe de Dinechin)
--- drivers/hid/hid-picolcd_fb.c | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-)
drivers/hid/hid-picolcd_fb.c +1 -2
@@ -417,8 +417,7 @@ static int picolcd_set_par(struct fb_info *info)return 0 ; } -/* Note this can't be const because of struct fb_info definition */ -static struct fb_ops picolcdfb_ops = { +static const struct fb_ops picolcdfb_ops = { .owner =THIS_MODULE , .fb_destroy = picolcd_fb_destroy, .fb_read = fb_sys_read,
Signature · 1 line
2.20.1
Jani Nikula
AppliedRe: [Intel-gfx] [PATCH v3 09/12] HID: picoLCD: constify fb ops
Quoted 10 lines · Jani Nikula
Now that the fbops member of struct
fb_infois const, we can start making the ops const as well.v2: fix typo (Christophe de Dinechin)
Cc Bruno Prémont <[email protected]>Reviewed-by Daniel Vetter <[email protected]>Acked-by Bruno Prémont <[email protected]>Signed-off-by Jani Nikula <[email protected]>
Pushed to drm-misc-next, with Jiri's ack from the other thread [1], thanks for the reviews and acks.
BR,
Jani.
[1] http://lore.kernel.org/r/[email protected]
Quoted 18 lines
--- drivers/hid/hid-picolcd_fb.c | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-)drivers/hid/hid-picolcd_fb.c +1
-2@@ -417,8 +417,7 @@ static int picolcd_set_par(struct fb_info *info)return 0 ; } -/* Note this can't be const because of struct fb_info definition */ -static struct fb_ops picolcdfb_ops = { +static const struct fb_ops picolcdfb_ops = { .owner =THIS_MODULE , .fb_destroy = picolcd_fb_destroy, .fb_read = fb_sys_read,
Signature · 1 line
Jani Nikula, Intel Open Source Graphics Center
PATCH v3 10/12 media: constify fb ops across all drivers
In reply to Jani NikulaNow that the fbops member of struct fb_info is const, we can start making the ops const as well.
Remove the redundant fbops assignments while at it.
v2:
- actually add const in vivid
- fix typo (Christophe de Dinechin)
--- drivers/media/pci/ivtv/ivtvfb.c | 3 +-- drivers/media/platform/vivid/vivid-osd.c | 3 +-- 2 files changed, 2 insertions(+), 4 deletions(-)
drivers/media/pci/ivtv/ivtvfb.c +1 -2
@@ -925,7 +925,7 @@ static int ivtvfb_blank(int blank_mode, struct fb_info *info)return 0 ; } -static struct fb_ops ivtvfb_ops = { +static const struct fb_ops ivtvfb_ops = { .owner =THIS_MODULE , .fb_write = ivtvfb_write, .fb_check_var = ivtvfb_check_var,
@@ -1049,7 +1049,6 @@ static int ivtvfb_init_vidmode(struct ivtv *itv) oi->ivtvfb_info.node =-1 ; oi->ivtvfb_info.flags =FBINFO_FLAG_DEFAULT ; - oi->ivtvfb_info.fbops = &ivtvfb_ops; oi->ivtvfb_info.par = itv; oi->ivtvfb_info.var = oi->ivtvfb_defined; oi->ivtvfb_info.fix = oi->ivtvfb_fix;
drivers/media/platform/vivid/vivid-osd.c +1 -2
@@ -244,7 +244,7 @@ static int vivid_fb_blank(int blank_mode, struct fb_info *info)return 0 ; } -static struct fb_ops vivid_fb_ops = { +static const struct fb_ops vivid_fb_ops = { .owner =THIS_MODULE , .fb_check_var = vivid_fb_check_var, .fb_set_par = vivid_fb_set_par,
@@ -311,7 +311,6 @@ static int vivid_fb_init_vidmode(struct vivid_dev *dev) dev->fb_info.node =-1 ; dev->fb_info.flags =FBINFO_FLAG_DEFAULT ; - dev->fb_info.fbops = &vivid_fb_ops; dev->fb_info.par = dev; dev->fb_info.var = dev->fb_defined; dev->fb_info.fix = dev->fb_fix;
Signature · 1 line
2.20.1
Re: [PATCH v3 10/12] media: constify fb ops across all drivers
Quoted 9 lines · Jani Nikula
Now that the fbops member of struct
fb_infois const, we can start making the ops const as well.Remove the redundant fbops assignments while at it.
v2:
- actually add const in vivid
- fix typo (Christophe de Dinechin)
Quoted 6 lines
Cc Hans Verkuil <[email protected]>Cc Andy Walls <[email protected]>Reviewed-by Daniel Vetter <[email protected]>Signed-off-by Jani Nikula <[email protected]>
Signature · 1 line
Sakari Ailus
Re: [PATCH v3 10/12] media: constify fb ops across all drivers
Quoted 10 lines · Sakari Ailus
Quoted 9 lines · Jani Nikula
Now that the fbops member of struct
fb_infois const, we can start making the ops const as well.Remove the redundant fbops assignments while at it.
v2:
- actually add const in vivid
- fix typo (Christophe de Dinechin)
Quoted 8 lines
Quoted 6 lines
Cc Hans Verkuil <[email protected]>Cc Andy Walls <[email protected]>Reviewed-by Daniel Vetter <[email protected]>Signed-off-by Jani Nikula <[email protected]>Reviewed-by Sakari Ailus <[email protected]>
Thanks for the review!
Andy, Hans, may I have your ack to merge this through drm-misc please?
BR,
Jani.
Signature · 1 line
Jani Nikula, Intel Open Source Graphics Center
Re: [PATCH v3 10/12] media: constify fb ops across all drivers
In reply to Jani NikulaQuoted 9 lines · Jani Nikula
Now that the fbops member of struct
fb_infois const, we can start making the ops const as well.Remove the redundant fbops assignments while at it.
v2:
- actually add const in vivid
- fix typo (Christophe de Dinechin)
Quoted 6 lines
Cc Hans Verkuil <[email protected]>Cc Andy Walls <[email protected]>Reviewed-by Daniel Vetter <[email protected]>Signed-off-by Jani Nikula <[email protected]>
Thanks!
Hans
Quoted 48 lines
--- drivers/media/pci/ivtv/ivtvfb.c | 3 +-- drivers/media/platform/vivid/vivid-osd.c | 3 +-- 2 files changed, 2 insertions(+), 4 deletions(-)drivers/media/pci/ivtv/ivtvfb.c +1
-2@@ -925,7 +925,7 @@ static int ivtvfb_blank(int blank_mode, struct fb_info *info)return 0 ; } -static struct fb_ops ivtvfb_ops = { +static const struct fb_ops ivtvfb_ops = { .owner =THIS_MODULE , .fb_write = ivtvfb_write, .fb_check_var = ivtvfb_check_var,@@ -1049,7 +1049,6 @@ static int ivtvfb_init_vidmode(struct ivtv *itv) oi->ivtvfb_info.node =-1 ; oi->ivtvfb_info.flags =FBINFO_FLAG_DEFAULT ; - oi->ivtvfb_info.fbops = &ivtvfb_ops; oi->ivtvfb_info.par = itv; oi->ivtvfb_info.var = oi->ivtvfb_defined; oi->ivtvfb_info.fix = oi->ivtvfb_fix;drivers/media/platform/vivid/vivid-osd.c +1
-2@@ -244,7 +244,7 @@ static int vivid_fb_blank(int blank_mode, struct fb_info *info)return 0 ; } -static struct fb_ops vivid_fb_ops = { +static const struct fb_ops vivid_fb_ops = { .owner =THIS_MODULE , .fb_check_var = vivid_fb_check_var, .fb_set_par = vivid_fb_set_par,@@ -311,7 +311,6 @@ static int vivid_fb_init_vidmode(struct vivid_dev *dev) dev->fb_info.node =-1 ; dev->fb_info.flags =FBINFO_FLAG_DEFAULT ; - dev->fb_info.fbops = &vivid_fb_ops; dev->fb_info.par = dev; dev->fb_info.var = dev->fb_defined; dev->fb_info.fix = dev->fb_fix;
Jani Nikula
AppliedRe: [PATCH v3 10/12] media: constify fb ops across all drivers
Quoted 10 lines · Hans Verkuil
Quoted 9 lines · Jani Nikula
Now that the fbops member of struct
fb_infois const, we can start making the ops const as well.Remove the redundant fbops assignments while at it.
v2:
- actually add const in vivid
- fix typo (Christophe de Dinechin)
Quoted 8 lines
Quoted 6 lines
Cc Hans Verkuil <[email protected]>Cc Andy Walls <[email protected]>Reviewed-by Daniel Vetter <[email protected]>Signed-off-by Jani Nikula <[email protected]>Acked-by Hans Verkuil <[email protected]>
Pushed to drm-misc-next, thanks for the reviews and acks.
BR,
Jani.
Quoted 54 lines
Thanks!
Hans
Quoted 48 lines
--- drivers/media/pci/ivtv/ivtvfb.c | 3 +-- drivers/media/platform/vivid/vivid-osd.c | 3 +-- 2 files changed, 2 insertions(+), 4 deletions(-)drivers/media/pci/ivtv/ivtvfb.c +1
-2@@ -925,7 +925,7 @@ static int ivtvfb_blank(int blank_mode, struct fb_info *info)return 0 ; } -static struct fb_ops ivtvfb_ops = { +static const struct fb_ops ivtvfb_ops = { .owner =THIS_MODULE , .fb_write = ivtvfb_write, .fb_check_var = ivtvfb_check_var,@@ -1049,7 +1049,6 @@ static int ivtvfb_init_vidmode(struct ivtv *itv) oi->ivtvfb_info.node =-1 ; oi->ivtvfb_info.flags =FBINFO_FLAG_DEFAULT ; - oi->ivtvfb_info.fbops = &ivtvfb_ops; oi->ivtvfb_info.par = itv; oi->ivtvfb_info.var = oi->ivtvfb_defined; oi->ivtvfb_info.fix = oi->ivtvfb_fix;drivers/media/platform/vivid/vivid-osd.c +1
-2@@ -244,7 +244,7 @@ static int vivid_fb_blank(int blank_mode, struct fb_info *info)return 0 ; } -static struct fb_ops vivid_fb_ops = { +static const struct fb_ops vivid_fb_ops = { .owner =THIS_MODULE , .fb_check_var = vivid_fb_check_var, .fb_set_par = vivid_fb_set_par,@@ -311,7 +311,6 @@ static int vivid_fb_init_vidmode(struct vivid_dev *dev) dev->fb_info.node =-1 ; dev->fb_info.flags =FBINFO_FLAG_DEFAULT ; - dev->fb_info.fbops = &vivid_fb_ops; dev->fb_info.par = dev; dev->fb_info.var = dev->fb_defined; dev->fb_info.fix = dev->fb_fix;
Signature · 1 line
Jani Nikula, Intel Open Source Graphics Center
PATCH v3 11/12 samples: vfio-mdev: constify fb ops
In reply to Jani NikulaNow that the fbops member of struct fb_info is const, we can start making the ops const as well.
v2: fix typo (Christophe de Dinechin)
--- samples/vfio-mdev/mdpy-fb.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)
samples/vfio-mdev/mdpy-fb.c +1 -1
@@ -86,7 +86,7 @@ static void mdpy_fb_destroy(struct fb_info *info)iounmap (info->screen_base); } -static struct fb_ops mdpy_fb_ops = { +static const struct fb_ops mdpy_fb_ops = { .owner =THIS_MODULE , .fb_destroy = mdpy_fb_destroy, .fb_setcolreg = mdpy_fb_setcolreg,
Signature · 1 line
2.20.1
Re: [PATCH v3 11/12] samples: vfio-mdev: constify fb ops
Quoted 9 lines · Jani Nikula
Now that the fbops member of struct
fb_infois const, we can start making the ops const as well.v2: fix typo (Christophe de Dinechin)
Cc Kirti Wankhede <[email protected]>Reviewed-by Daniel Vetter <[email protected]>Signed-off-by Jani Nikula <[email protected]>
Kirti, may I have your ack to merge this through drm-misc please?
BR,
Jani.
Quoted 17 lines
--- samples/vfio-mdev/mdpy-fb.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)samples/vfio-mdev/mdpy-fb.c +1
-1@@ -86,7 +86,7 @@ static void mdpy_fb_destroy(struct fb_info *info)iounmap (info->screen_base); } -static struct fb_ops mdpy_fb_ops = { +static const struct fb_ops mdpy_fb_ops = { .owner =THIS_MODULE , .fb_destroy = mdpy_fb_destroy, .fb_setcolreg = mdpy_fb_setcolreg,
Signature · 1 line
Jani Nikula, Intel Open Source Graphics Center
Re: [PATCH v3 11/12] samples: vfio-mdev: constify fb ops
Quoted 28 lines · Jani Nikula
Quoted 9 lines · Jani Nikula
Now that the fbops member of struct
fb_infois const, we can start making the ops const as well.v2: fix typo (Christophe de Dinechin)
Cc Kirti Wankhede <[email protected]>Reviewed-by Daniel Vetter <[email protected]>Signed-off-by Jani Nikula <[email protected]>Kirti, may I have your ack to merge this through drm-misc please?
BR,
Jani.Quoted 12 lines
--- samples/vfio-mdev/mdpy-fb.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)samples/vfio-mdev/mdpy-fb.c +0
-0@@ -86,7 +86,7 @@ static void mdpy_fb_destroy(struct fb_info *info)iounmap (info->screen_base); }
Quoted 6 lines
samples/vfio-mdev/mdpy-fb.c static void mdpy_fb_destroy(struct fb_info *info) · line 92
Quoted 5 lines
samples/vfio-mdev/mdpy-fb.c +1
-1-static struct fb_ops mdpy_fb_ops = { +static const struct fb_ops mdpy_fb_ops = { .owner =THIS_MODULE , .fb_destroy = mdpy_fb_destroy, .fb_setcolreg = mdpy_fb_setcolreg,
_______________________________________________
Intel-gfx mailing list
[email protected]
https://lists.freedesktop.org/mailman/listinfo/intel-gfx
Re: [PATCH v3 11/12] samples: vfio-mdev: constify fb ops
Quoted 29 lines · Kirti Wankhede
Quoted 28 lines · Jani Nikula
Quoted 9 lines · Jani Nikula
Now that the fbops member of struct
fb_infois const, we can start making the ops const as well.v2: fix typo (Christophe de Dinechin)
Cc Kirti Wankhede <[email protected]>Reviewed-by Daniel Vetter <[email protected]>Signed-off-by Jani Nikula <[email protected]>Kirti, may I have your ack to merge this through drm-misc please?
BR,
Jani.Quoted 12 lines
--- samples/vfio-mdev/mdpy-fb.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)samples/vfio-mdev/mdpy-fb.c +0
-0@@ -86,7 +86,7 @@ static void mdpy_fb_destroy(struct fb_info *info)iounmap (info->screen_base); }
Quoted 8 lines
Quoted 6 lines
samples/vfio-mdev/mdpy-fb.c static void mdpy_fb_destroy(struct fb_info *info) · line 92
Quoted 5 lines
samples/vfio-mdev/mdpy-fb.c +1
-1-static struct fb_ops mdpy_fb_ops = { +static const struct fb_ops mdpy_fb_ops = { .owner =THIS_MODULE , .fb_destroy = mdpy_fb_destroy, .fb_setcolreg = mdpy_fb_setcolreg,Acked-by Kirti Wankhede <[email protected]>
Thanks, pushed to drm-misc-next.
BR,
Jani.
Signature · 1 line
Jani Nikula, Intel Open Source Graphics Center
PATCH v3 12/12 auxdisplay: constify fb ops
In reply to Jani NikulaNow that the fbops member of struct fb_info is const, we can start making the ops const as well.
--- drivers/auxdisplay/cfag12864bfb.c | 2 +- drivers/auxdisplay/ht16k33.c | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-)
drivers/auxdisplay/cfag12864bfb.c +1 -1
@@ -57,7 +57,7 @@ static int cfag12864bfb_mmap(struct fb_info *info, struct vm_area_struct *vma)return vm_map_pages_zero (vma, &pages,1 ); } -static struct fb_ops cfag12864bfb_ops = { +static const struct fb_ops cfag12864bfb_ops = { .owner =THIS_MODULE , .fb_read = fb_sys_read, .fb_write = fb_sys_write,
drivers/auxdisplay/ht16k33.c +1 -1
@@ -228,7 +228,7 @@ static int ht16k33_mmap(struct fb_info *info, struct vm_area_struct *vma)return vm_map_pages_zero (vma, &pages,1 ); } -static struct fb_ops ht16k33_fb_ops = { +static const struct fb_ops ht16k33_fb_ops = { .owner =THIS_MODULE , .fb_read = fb_sys_read, .fb_write = fb_sys_write,
Signature · 1 line
2.20.1
Re: [PATCH v3 12/12] auxdisplay: constify fb ops
Quoted 9 lines · Jani Nikula
Now that the fbops member of struct
fb_infois const, we can start making the ops const as well.Cc Miguel Ojeda Sandonis <[email protected]>Cc Robin van der Gracht <[email protected]>Reviewed-by Daniel Vetter <[email protected]>Reviewed-by Miguel Ojeda <[email protected]>Signed-off-by Jani Nikula <[email protected]>
Miguel, Robin, just to err on the safe side, were you both okay with me merging this through drm-misc? Not very likely to conflict badly.
BR,
Jani.
Quoted 31 lines
--- drivers/auxdisplay/cfag12864bfb.c | 2 +- drivers/auxdisplay/ht16k33.c | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-)drivers/auxdisplay/cfag12864bfb.c +1
-1@@ -57,7 +57,7 @@ static int cfag12864bfb_mmap(struct fb_info *info, struct vm_area_struct *vma)return vm_map_pages_zero (vma, &pages,1 ); } -static struct fb_ops cfag12864bfb_ops = { +static const struct fb_ops cfag12864bfb_ops = { .owner =THIS_MODULE , .fb_read = fb_sys_read, .fb_write = fb_sys_write,drivers/auxdisplay/ht16k33.c +1
-1@@ -228,7 +228,7 @@ static int ht16k33_mmap(struct fb_info *info, struct vm_area_struct *vma)return vm_map_pages_zero (vma, &pages,1 ); } -static struct fb_ops ht16k33_fb_ops = { +static const struct fb_ops ht16k33_fb_ops = { .owner =THIS_MODULE , .fb_read = fb_sys_read, .fb_write = fb_sys_write,
Signature · 1 line
Jani Nikula, Intel Open Source Graphics Center
Re: [PATCH v3 12/12] auxdisplay: constify fb ops
Quoted 12 lines · Jani Nikula
Quoted 9 lines · Jani Nikula
Now that the fbops member of struct
fb_infois const, we can start making the ops const as well.Cc Miguel Ojeda Sandonis <[email protected]>Cc Robin van der Gracht <[email protected]>Reviewed-by Daniel Vetter <[email protected]>Reviewed-by Miguel Ojeda <[email protected]>Signed-off-by Jani Nikula <[email protected]>
Quoted 2 lines
Miguel, Robin, just to err on the safe side, were you both okay with me merging this through drm-misc? Not very likely to conflict badly.
I think that is fine, go ahead! :)
Cheers,
Miguel
Re: [PATCH v3 12/12] auxdisplay: constify fb ops
Quoted 13 lines · Miguel Ojeda
Quoted 12 lines · Jani Nikula
Quoted 9 lines · Jani Nikula
Now that the fbops member of struct
fb_infois const, we can start making the ops const as well.Cc Miguel Ojeda Sandonis <[email protected]>Cc Robin van der Gracht <[email protected]>Reviewed-by Daniel Vetter <[email protected]>Reviewed-by Miguel Ojeda <[email protected]>Signed-off-by Jani Nikula <[email protected]>
Quoted 4 lines
Quoted 2 lines
Miguel, Robin, just to err on the safe side, were you both okay with me merging this through drm-misc? Not very likely to conflict badly.
I think that is fine, go ahead! :)
Thanks, pushed to drm-misc-next!
BR,
Jani.
Signature · 1 line
Jani Nikula, Intel Open Source Graphics Center
robin
maintainerRe: [PATCH v3 12/12] auxdisplay: constify fb ops
In reply to Jani NikulaHello Jani,
Quoted 11 lines · Jani Nikula
Quoted 9 lines · Jani Nikula
Now that the fbops member of struct
fb_infois const, we can start making the ops const as well.Cc Miguel Ojeda Sandonis <[email protected]>Cc Robin van der Gracht <[email protected]>Reviewed-by Daniel Vetter <[email protected]>Reviewed-by Miguel Ojeda <[email protected]>Signed-off-by Jani Nikula <[email protected]>
Quoted 2 lines
Miguel, Robin, just to err on the safe side, were you both okay with me merging this through drm-misc? Not very likely to conflict badly.
ht16k33 driver hasn't seen much change lately, should be fine.
Robin
Quoted 3 lines · Jani Nikula
This is v3 of https://patchwork.freedesktop.org/series/70198/.
0day reported some build failures, and I needed to add patches 1-5 and 7
Should be, patches 1-4 and 7.
Quoted 179 lines
to address them. Patch 8 was amended accordingly (dropped some consts), but the other patches remain the same from v2, except the ones I merged already.
BR,
Jani.Cc Andy Walls <[email protected]>Cc Bernie Thompson <[email protected]>Cc Bruno Prémont <[email protected]>Cc Daniel Vetter <[email protected]>Cc Hans Verkuil <[email protected]>Cc Jaya Kumar <[email protected]>Cc Kirti Wankhede <[email protected]>Cc Miguel Ojeda Sandonis <[email protected]>Cc Noralf Trønnes <[email protected]>Cc Robin van der Gracht <[email protected]>Cc Steve Glendinning <[email protected]>Cc Ville Syrjälä <[email protected]>Jani Nikula (12):
video: fbdev: atyfb: modify the staticfb_opsdirectly
video: fbdev: mb862xx: modify the staticfb_opsdirectly
video: fbdev: nvidia: modify the staticfb_opsdirectly
video: fbdev: uvesafb: modify the staticfb_opsdirectly
video: fbdev: make fbops member of structfb_infoa const pointer
drm: constify fb ops across all drivers
video: fbdev: intelfb: use const pointer forfb_ops
video: constify fb ops across all drivers
HID: picoLCD: constify fb ops
media: constify fb ops across all drivers
samples: vfio-mdev: constify fb ops
auxdisplay: constify fb opsdrivers/auxdisplay/cfag12864bfb.c | 2 +- drivers/auxdisplay/ht16k33.c | 2 +- drivers/gpu/drm/amd/amdgpu/amdgpu_fb.c | 2 +- drivers/gpu/drm/armada/armada_fbdev.c | 2 +- drivers/gpu/drm/drm_fb_helper.c | 2 +- drivers/gpu/drm/exynos/exynos_drm_fbdev.c | 2 +- .../gpu/drm/hisilicon/hibmc/hibmc_drm_fbdev.c | 2 +- drivers/gpu/drm/i915/display/intel_fbdev.c | 2 +- drivers/gpu/drm/msm/msm_fbdev.c | 2 +- drivers/gpu/drm/nouveau/nouveau_fbcon.c | 4 ++-- drivers/gpu/drm/omapdrm/omap_fbdev.c | 2 +- drivers/gpu/drm/radeon/radeon_fb.c | 2 +- drivers/gpu/drm/rockchip/rockchip_drm_fbdev.c | 2 +- drivers/gpu/drm/tegra/fb.c | 2 +- drivers/gpu/drm/vmwgfx/vmwgfx_fb.c | 2 +- drivers/hid/hid-picolcd_fb.c | 3 +-- drivers/media/pci/ivtv/ivtvfb.c | 3 +-- drivers/media/platform/vivid/vivid-osd.c | 3 +-- drivers/video/fbdev/68328fb.c | 2 +- drivers/video/fbdev/acornfb.c | 2 +- drivers/video/fbdev/amba-clcd.c | 2 +- drivers/video/fbdev/amifb.c | 2 +- drivers/video/fbdev/arcfb.c | 2 +- drivers/video/fbdev/arkfb.c | 2 +- drivers/video/fbdev/asiliantfb.c | 2 +- drivers/video/fbdev/atmel_lcdfb.c | 2 +- drivers/video/fbdev/aty/aty128fb.c | 2 +- drivers/video/fbdev/aty/atyfb.h | 2 +- drivers/video/fbdev/aty/atyfb_base.c | 6 +++--- drivers/video/fbdev/aty/mach64_cursor.c | 4 ++-- drivers/video/fbdev/aty/radeon_base.c | 2 +- drivers/video/fbdev/au1100fb.c | 2 +- drivers/video/fbdev/au1200fb.c | 2 +- drivers/video/fbdev/broadsheetfb.c | 2 +- drivers/video/fbdev/bw2.c | 2 +- drivers/video/fbdev/carminefb.c | 2 +- drivers/video/fbdev/cg14.c | 2 +- drivers/video/fbdev/cg3.c | 2 +- drivers/video/fbdev/cg6.c | 2 +- drivers/video/fbdev/chipsfb.c | 2 +- drivers/video/fbdev/cirrusfb.c | 2 +- drivers/video/fbdev/clps711x-fb.c | 2 +- drivers/video/fbdev/cobalt_lcdfb.c | 2 +- drivers/video/fbdev/controlfb.c | 2 +- drivers/video/fbdev/cyber2000fb.c | 2 +- drivers/video/fbdev/da8xx-fb.c | 2 +- drivers/video/fbdev/dnfb.c | 2 +- drivers/video/fbdev/efifb.c | 2 +- drivers/video/fbdev/ep93xx-fb.c | 2 +- drivers/video/fbdev/fb-puv3.c | 2 +- drivers/video/fbdev/ffb.c | 2 +- drivers/video/fbdev/fm2fb.c | 2 +- drivers/video/fbdev/fsl-diu-fb.c | 2 +- drivers/video/fbdev/g364fb.c | 2 +- drivers/video/fbdev/gbefb.c | 2 +- drivers/video/fbdev/geode/gx1fb_core.c | 2 +- drivers/video/fbdev/geode/gxfb_core.c | 2 +- drivers/video/fbdev/geode/lxfb_core.c | 2 +- drivers/video/fbdev/goldfishfb.c | 2 +- drivers/video/fbdev/grvga.c | 2 +- drivers/video/fbdev/gxt4500.c | 2 +- drivers/video/fbdev/hecubafb.c | 2 +- drivers/video/fbdev/hgafb.c | 2 +- drivers/video/fbdev/hitfb.c | 2 +- drivers/video/fbdev/hpfb.c | 2 +- drivers/video/fbdev/hyperv_fb.c | 2 +- drivers/video/fbdev/i740fb.c | 2 +- drivers/video/fbdev/imsttfb.c | 2 +- drivers/video/fbdev/imxfb.c | 2 +- drivers/video/fbdev/intelfb/intelfb.h | 2 +- drivers/video/fbdev/intelfb/intelfbdrv.c | 2 +- drivers/video/fbdev/kyro/fbdev.c | 2 +- drivers/video/fbdev/leo.c | 2 +- drivers/video/fbdev/macfb.c | 2 +- drivers/video/fbdev/matrox/matroxfb_crtc2.c | 2 +- drivers/video/fbdev/maxinefb.c | 2 +- drivers/video/fbdev/mb862xx/mb862xxfb.h | 2 +- drivers/video/fbdev/mb862xx/mb862xxfb_accel.c | 15 +++++++------- drivers/video/fbdev/mb862xx/mb862xxfbdrv.c | 4 +++- drivers/video/fbdev/mbx/mbxfb.c | 2 +- drivers/video/fbdev/metronomefb.c | 2 +- drivers/video/fbdev/mmp/fb/mmpfb.c | 2 +- drivers/video/fbdev/mx3fb.c | 5 +++-- drivers/video/fbdev/neofb.c | 2 +- drivers/video/fbdev/nvidia/nvidia.c | 20 ++++++++++--------- drivers/video/fbdev/ocfb.c | 2 +- drivers/video/fbdev/offb.c | 2 +- .../video/fbdev/omap2/omapfb/omapfb-main.c | 2 +- drivers/video/fbdev/p9100.c | 2 +- drivers/video/fbdev/platinumfb.c | 2 +- drivers/video/fbdev/pm2fb.c | 2 +- drivers/video/fbdev/pm3fb.c | 2 +- drivers/video/fbdev/pmag-aa-fb.c | 2 +- drivers/video/fbdev/pmag-ba-fb.c | 2 +- drivers/video/fbdev/pmagb-b-fb.c | 2 +- drivers/video/fbdev/ps3fb.c | 2 +- drivers/video/fbdev/pvr2fb.c | 2 +- drivers/video/fbdev/pxa168fb.c | 2 +- drivers/video/fbdev/pxafb.c | 4 ++-- drivers/video/fbdev/q40fb.c | 2 +- drivers/video/fbdev/riva/fbdev.c | 2 +- drivers/video/fbdev/s3c-fb.c | 2 +- drivers/video/fbdev/s3c2410fb.c | 2 +- drivers/video/fbdev/s3fb.c | 2 +- drivers/video/fbdev/sa1100fb.c | 2 +- drivers/video/fbdev/savage/savagefb_driver.c | 2 +- drivers/video/fbdev/sh7760fb.c | 2 +- drivers/video/fbdev/sh_mobile_lcdcfb.c | 4 ++-- drivers/video/fbdev/simplefb.c | 2 +- drivers/video/fbdev/sis/sis_main.c | 2 +- drivers/video/fbdev/skeletonfb.c | 2 +- drivers/video/fbdev/sm712fb.c | 2 +- drivers/video/fbdev/smscufx.c | 2 +- drivers/video/fbdev/ssd1307fb.c | 2 +- drivers/video/fbdev/sstfb.c | 2 +- drivers/video/fbdev/stifb.c | 2 +- drivers/video/fbdev/sunxvr1000.c | 2 +- drivers/video/fbdev/sunxvr2500.c | 2 +- drivers/video/fbdev/sunxvr500.c | 2 +- drivers/video/fbdev/tcx.c | 2 +- drivers/video/fbdev/tdfxfb.c | 2 +- drivers/video/fbdev/tgafb.c | 2 +- drivers/video/fbdev/tmiofb.c | 2 +- drivers/video/fbdev/tridentfb.c | 2 +- drivers/video/fbdev/uvesafb.c | 4 ++-- drivers/video/fbdev/valkyriefb.c | 2 +- drivers/video/fbdev/vfb.c | 2 +- drivers/video/fbdev/vga16fb.c | 2 +- drivers/video/fbdev/vt8500lcdfb.c | 2 +- drivers/video/fbdev/vt8623fb.c | 2 +- drivers/video/fbdev/w100fb.c | 2 +- drivers/video/fbdev/wm8505fb.c | 2 +- drivers/video/fbdev/xen-fbfront.c | 2 +- drivers/video/fbdev/xilinxfb.c | 2 +- include/linux/fb.h | 2 +- samples/vfio-mdev/mdpy-fb.c | 2 +- 136 files changed, 163 insertions(+), 162 deletions(-)
Signature · 1 line
Jani Nikula, Intel Open Source Graphics Center
[Intel-gfx] ✗ Fi.CI.CHECKPATCH: warning for video, drm, etc: constify fbops in struct fb_info (rev2)
In reply to Jani Nikula== Series Details ==
== Series Details ==
Series: video, drm, etc: constify fbops in struct fb_info (rev2)
URL : https://patchwork.freedesktop.org/series/70198/
State : warning
== Summary ==
$ dim checkpatch origin/drm-tip 5109f996a5c8 video: fbdev: atyfb: modify the static fb_ops directly -:21: CHECK:AVOID_EXTERNS: extern prototypes should be avoided in .h files #21: FILE: drivers/video/fbdev/aty/atyfb.h:344: +extern int aty_init_cursor(struct fb_info *info, struct fb_ops *atyfb_ops);
total: 0 errors, 0 warnings, 1 checks, 44 lines checkedd1dd9ad23a85 video: fbdev: mb862xx: modify the static fb_ops directly -:21: CHECK:AVOID_EXTERNS: extern prototypes should be avoided in .h files #21: FILE: drivers/video/fbdev/mb862xx/mb862xxfb.h:92:
+extern void mb862xxfb_init_accel(struct fb_info *info, struct fb_ops *fbops, int xres);
total: 0 errors, 0 warnings, 1 checks, 56 lines checkedc9a3fc359d55 video: fbdev: nvidia: modify the static fb_ops directly
-:57: WARNING:SUSPECT_CODE_INDENT: suspect code indent for conditional statements (8, 12) #57: FILE: drivers/video/fbdev/nvidia/nvidia.c:1169:
if (!hwcur)
+ nvidia_fb_ops.fb_cursor = NULL;
total: 0 errors, 1 warnings, 0 checks, 43 lines checked 045da6c271da video: fbdev: uvesafb: modify the static fb_ops directly -:12: WARNING:BAD_SIGN_OFF: Duplicate signature
#12:
total: 0 errors, 1 warnings, 0 checks, 16 lines checked 89a8b3ad953d video: fbdev: make fbops member of struct fb_info a const pointer 7db4d9e5a7ae drm: constify fb ops across all drivers70ac7fa0dc3d video: fbdev: intelfb: use const pointer for fb_ops aa0f9fd709a6 video: constify fb ops across all drivers c37885d39521 HID: picoLCD: constify fb opsd5cc24c141ca media: constify fb ops across all drivers 4700338b3b91 samples: vfio-mdev: constify fb opsb4c9b961101f auxdisplay: constify fb ops
_______________________________________________
Intel-gfx mailing list
[email protected]
https://lists.freedesktop.org/mailman/listinfo/intel-gfx
Patchwork
CI[Intel-gfx] ✓ Fi.CI.BAT: success for video, drm, etc: constify fbops in struct fb_info (rev2)
In reply to Jani Nikula== Series Details ==
== Series Details ==
Series: video, drm, etc: constify fbops in struct fb_info (rev2)
URL : https://patchwork.freedesktop.org/series/70198/
State : success
== Summary ==
CI Bug Log - changes from CI_DRM_7475 -> Patchwork_15565
====================================================
Summary
-------
**SUCCESS**
No regressions found.
External URL: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15565/index.html
Possible new issues
-------------------
Here are the unknown changes that may have been introduced in Patchwork_15565:
### IGT changes ###
#### Suppressed ####
The following results come from untrusted machines, tests, or statuses. They do not affect the overall result.
* igt@i915_module_load@reload-with-fault-injection:
- {fi-kbl-7560u}: [DMESG-WARN][1] ([i915#710]) -> [INCOMPLETE][2]
[1]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7475/fi-kbl-7560u/igt@[email protected]
[2]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15565/fi-kbl-7560u/igt@[email protected]
Known issues
------------
Here are the changes found in Patchwork_15565 that come from known issues:
### IGT changes ###
#### Issues hit ####
* igt@i915_selftest@live_blt:
- fi-hsw-4770: [PASS][3] -> [DMESG-FAIL][4] ([i915#553])
[3]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7475/fi-hsw-4770/igt@i915_selftest@live_blt.html
[4]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15565/fi-hsw-4770/igt@i915_selftest@live_blt.html
* igt@kms_chamelium@hdmi-hpd-fast:
- fi-kbl-7500u: [PASS][5] -> [FAIL][6] ([fdo#111096] / [i915#323])
[5]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7475/fi-kbl-7500u/igt@[email protected]
[6]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15565/fi-kbl-7500u/igt@[email protected]
#### Possible fixes ####
* igt@gem_exec_parallel@basic:
- {fi-tgl-u}: [INCOMPLETE][7] ([i915#476]) -> [PASS][8]
[7]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7475/fi-tgl-u/igt@[email protected]
[8]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15565/fi-tgl-u/igt@[email protected]
* igt@gem_exec_suspend@basic-s3:
- fi-icl-y: [INCOMPLETE][9] ([i915#140]) -> [PASS][10]
[9]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7475/fi-icl-y/igt@[email protected]
[10]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15565/fi-icl-y/igt@[email protected]
* igt@i915_module_load@reload-no-display:
- fi-skl-lmem: [DMESG-WARN][11] ([i915#592]) -> [PASS][12]
[11]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7475/fi-skl-lmem/igt@[email protected]
[12]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15565/fi-skl-lmem/igt@[email protected]
* igt@i915_selftest@live_blt:
- fi-hsw-4770r: [DMESG-FAIL][13] ([i915#683]) -> [PASS][14]
[13]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7475/fi-hsw-4770r/igt@i915_selftest@live_blt.html
[14]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15565/fi-hsw-4770r/igt@i915_selftest@live_blt.html
* igt@i915_selftest@live_gem_contexts:
- fi-hsw-peppy: [INCOMPLETE][15] ([i915#694]) -> [PASS][16]
[15]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7475/fi-hsw-peppy/igt@i915_selftest@live_gem_contexts.html
[16]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15565/fi-hsw-peppy/igt@i915_selftest@live_gem_contexts.html
* igt@i915_selftest@live_hangcheck:
- fi-icl-u3: [INCOMPLETE][17] ([fdo#108569] / [i915#140]) -> [PASS][18]
[17]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7475/fi-icl-u3/igt@i915_selftest@live_hangcheck.html
[18]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15565/fi-icl-u3/igt@i915_selftest@live_hangcheck.html
* igt@kms_frontbuffer_tracking@basic:
- fi-icl-u3: [FAIL][19] ([i915#49]) -> [PASS][20]
[19]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7475/fi-icl-u3/igt@[email protected]
[20]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15565/fi-icl-u3/igt@[email protected]
#### Warnings ####
* igt@kms_cursor_legacy@basic-busy-flip-before-cursor-legacy:
- fi-kbl-x1275: [DMESG-WARN][21] ([i915#62] / [i915#92]) -> [DMESG-WARN][22] ([i915#62] / [i915#92] / [i915#95]) +8 similar issues
[21]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7475/fi-kbl-x1275/igt@[email protected]
[22]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15565/fi-kbl-x1275/igt@[email protected]
* igt@kms_pipe_crc_basic@suspend-read-crc-pipe-a:
- fi-kbl-x1275: [DMESG-WARN][23] ([i915#62] / [i915#92] / [i915#95]) -> [DMESG-WARN][24] ([i915#62] / [i915#92]) +4 similar issues
[23]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7475/fi-kbl-x1275/igt@[email protected]
[24]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15565/fi-kbl-x1275/igt@[email protected]
{name}: This element is suppressed. This means it is ignored when computing
the status of the difference (SUCCESS, WARNING, or FAILURE).
[fdo#108569]: https://bugs.freedesktop.org/show_bug.cgi?id=108569
[fdo#111096]: https://bugs.freedesktop.org/show_bug.cgi?id=111096
[i915#140]: https://gitlab.freedesktop.org/drm/intel/issues/140
[i915#323]: https://gitlab.freedesktop.org/drm/intel/issues/323
[i915#476]: https://gitlab.freedesktop.org/drm/intel/issues/476
[i915#49]: https://gitlab.freedesktop.org/drm/intel/issues/49
[i915#553]: https://gitlab.freedesktop.org/drm/intel/issues/553
[i915#592]: https://gitlab.freedesktop.org/drm/intel/issues/592
[i915#62]: https://gitlab.freedesktop.org/drm/intel/issues/62
[i915#683]: https://gitlab.freedesktop.org/drm/intel/issues/683
[i915#694]: https://gitlab.freedesktop.org/drm/intel/issues/694
[i915#710]: https://gitlab.freedesktop.org/drm/intel/issues/710
[i915#92]: https://gitlab.freedesktop.org/drm/intel/issues/92
[i915#95]: https://gitlab.freedesktop.org/drm/intel/issues/95
Participating hosts (51 -> 46)
------------------------------
Missing (5): fi-ilk-m540 fi-bsw-cyan fi-ctg-p8600 fi-byt-clapper fi-bdw-samus
Build changes
-------------
* CI: CI-20190529 -> None
* Linux: CI_DRM_7475 -> Patchwork_15565
CI-20190529: 20190529
CI_DRM_7475: cb30ed97a3642a5995a310564fb46a7150e7ab9e @ git://anongit.freedesktop.org/gfx-ci/linux
IGT_5323: b0f877d06a78b9c38ed246be2537a0453b6c214f @ git://anongit.freedesktop.org/xorg/app/intel-gpu-tools
Patchwork_15565: b4c9b961101f03bfd2c45a785deb5544ff0e0464 @ git://anongit.freedesktop.org/gfx-ci/linux
== Linux commits ==
b4c9b961101f auxdisplay: constify fb ops4700338b3b91 samples: vfio-mdev: constify fb opsd5cc24c141ca media: constify fb ops across all drivers c37885d39521 HID: picoLCD: constify fb opsaa0f9fd709a6 video: constify fb ops across all drivers 70ac7fa0dc3d video: fbdev: intelfb: use const pointer for fb_ops 7db4d9e5a7ae drm: constify fb ops across all drivers89a8b3ad953d video: fbdev: make fbops member of struct fb_info a const pointer 045da6c271da video: fbdev: uvesafb: modify the static fb_ops directly c9a3fc359d55 video: fbdev: nvidia: modify the static fb_ops directly d1dd9ad23a85 video: fbdev: mb862xx: modify the static fb_ops directly 5109f996a5c8 video: fbdev: atyfb: modify the static fb_ops directly
== Logs ==
For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15565/index.html
_______________________________________________
Intel-gfx mailing list
[email protected]
https://lists.freedesktop.org/mailman/listinfo/intel-gfx
Patchwork
CI[Intel-gfx] ✗ Fi.CI.IGT: failure for video, drm, etc: constify fbops in struct fb_info (rev2)
In reply to Jani Nikula== Series Details ==
== Series Details ==
Series: video, drm, etc: constify fbops in struct fb_info (rev2)
URL : https://patchwork.freedesktop.org/series/70198/
State : failure
== Summary ==
CI Bug Log - changes from CI_DRM_7475_full -> Patchwork_15565_full
====================================================
Summary
-------
**FAILURE**
Serious unknown changes coming with Patchwork_15565_full absolutely need to be verified manually.
If you think the reported changes have nothing to do with the changes introduced in Patchwork_15565_full, please notify your bug team to allow them to document this new failure mode, which will reduce false positives in CI.
Possible new issues
-------------------
Here are the unknown changes that may have been introduced in Patchwork_15565_full:
### IGT changes ###
#### Possible regressions ####
* igt@kms_draw_crc@draw-method-rgb565-render-xtiled:
- shard-skl: [PASS][1] -> [INCOMPLETE][2]
[1]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7475/shard-skl10/igt@[email protected]
[2]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15565/shard-skl9/igt@[email protected]
Known issues
------------
Here are the changes found in Patchwork_15565_full that come from known issues:
### IGT changes ###
#### Issues hit ####
* igt@gem_ctx_persistence@vcs1-hostile:
- shard-iclb: [PASS][3] -> [SKIP][4] ([fdo#109276] / [fdo#112080])
[3]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7475/shard-iclb2/igt@[email protected]
[4]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15565/shard-iclb3/igt@[email protected]
* igt@gem_exec_parallel@vcs1-fds:
- shard-iclb: [PASS][5] -> [SKIP][6] ([fdo#112080]) +2 similar issues
[5]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7475/shard-iclb1/igt@[email protected]
[6]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15565/shard-iclb5/igt@[email protected]
* igt@gem_exec_parallel@vecs0-contexts:
- shard-hsw: [PASS][7] -> [TIMEOUT][8] ([i915#676])
[7]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7475/shard-hsw5/igt@[email protected]
[8]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15565/shard-hsw2/igt@[email protected]
* igt@gem_exec_parallel@vecs0-fds:
- shard-hsw: [PASS][9] -> [FAIL][10] ([i915#676]) +1 similar issue
[9]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7475/shard-hsw1/igt@[email protected]
[10]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15565/shard-hsw1/igt@[email protected]
* igt@gem_exec_schedule@out-order-bsd1:
- shard-iclb: [PASS][11] -> [SKIP][12] ([fdo#109276]) +4 similar issues
[11]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7475/shard-iclb2/igt@[email protected]
[12]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15565/shard-iclb3/igt@[email protected]
* igt@gem_exec_schedule@preemptive-hang-bsd:
- shard-iclb: [PASS][13] -> [SKIP][14] ([fdo#112146]) +3 similar issues
[13]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7475/shard-iclb6/igt@[email protected]
[14]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15565/shard-iclb1/igt@[email protected]
* igt@gem_exec_schedule@smoketest-all:
- shard-tglb: [PASS][15] -> [INCOMPLETE][16] ([i915#463])
[15]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7475/shard-tglb3/igt@[email protected]
[16]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15565/shard-tglb6/igt@[email protected]
* igt@gem_persistent_relocs@forked-thrash-inactive:
- shard-hsw: [PASS][17] -> [INCOMPLETE][18] ([i915#530] / [i915#61])
[17]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7475/shard-hsw2/igt@[email protected]
[18]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15565/shard-hsw6/igt@[email protected]
* igt@gem_ppgtt@flink-and-close-vma-leak:
- shard-iclb: [PASS][19] -> [FAIL][20] ([i915#644])
[19]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7475/shard-iclb2/igt@[email protected]
[20]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15565/shard-iclb2/igt@[email protected]
* igt@gem_sync@basic-store-each:
- shard-tglb: [PASS][21] -> [INCOMPLETE][22] ([i915#435] / [i915#472])
[21]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7475/shard-tglb5/igt@[email protected]
[22]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15565/shard-tglb4/igt@[email protected]
* igt@gem_userptr_blits@map-fixed-invalidate-busy-gup:
- shard-snb: [PASS][23] -> [DMESG-WARN][24] ([fdo#111870])
[23]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7475/shard-snb5/igt@[email protected]
[24]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15565/shard-snb6/igt@[email protected]
* igt@i915_suspend@forcewake:
- shard-apl: [PASS][25] -> [DMESG-WARN][26] ([i915#180])
[25]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7475/shard-apl4/igt@[email protected]
[26]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15565/shard-apl1/igt@[email protected]
* igt@kms_cursor_crc@pipe-a-cursor-suspend:
- shard-tglb: [PASS][27] -> [INCOMPLETE][28] ([i915#456] / [i915#460])
[27]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7475/shard-tglb6/igt@[email protected]
[28]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15565/shard-tglb3/igt@[email protected]
* igt@kms_cursor_crc@pipe-c-cursor-128x128-offscreen:
- shard-iclb: [PASS][29] -> [DMESG-WARN][30] ([IGT#6] / [i915#435])
[29]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7475/shard-iclb2/igt@[email protected]
[30]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15565/shard-iclb3/igt@[email protected]
* igt@kms_draw_crc@draw-method-xrgb2101010-render-xtiled:
- shard-iclb: [PASS][31] -> [INCOMPLETE][32] ([i915#140])
[31]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7475/shard-iclb1/igt@[email protected]
[32]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15565/shard-iclb5/igt@[email protected]
* igt@kms_flip@2x-single-buffer-flip-vs-dpms-off-vs-modeset:
- shard-hsw: [PASS][33] -> [DMESG-WARN][34] ([i915#44])
[33]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7475/shard-hsw5/igt@[email protected]
[34]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15565/shard-hsw5/igt@[email protected]
* igt@kms_flip@flip-vs-expired-vblank-interruptible:
- shard-skl: [PASS][35] -> [FAIL][36] ([i915#79])
[35]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7475/shard-skl2/igt@[email protected]
[36]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15565/shard-skl10/igt@[email protected]
* igt@kms_flip_tiling@flip-to-y-tiled:
- shard-iclb: [PASS][37] -> [FAIL][38] ([fdo#107931] / [i915#167])
[37]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7475/shard-iclb3/igt@[email protected]
[38]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15565/shard-iclb3/igt@[email protected]
* igt@kms_frontbuffer_tracking@fbcpsr-1p-pri-indfb-multidraw:
- shard-tglb: [PASS][39] -> [FAIL][40] ([i915#49]) +1 similar issue
[39]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7475/shard-tglb4/igt@[email protected]
[40]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15565/shard-tglb2/igt@[email protected]
* igt@kms_frontbuffer_tracking@fbcpsr-1p-primscrn-cur-indfb-draw-render:
- shard-iclb: [PASS][41] -> [FAIL][42] ([i915#49]) +6 similar issues
[41]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7475/shard-iclb2/igt@kms_frontbuffer_tracking@fbcpsr-1p-primscrn-cur-indfb-draw-render.html
[42]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15565/shard-iclb2/igt@kms_frontbuffer_tracking@fbcpsr-1p-primscrn-cur-indfb-draw-render.html
* igt@kms_plane@pixel-format-pipe-a-planes-source-clamping:
- shard-kbl: [PASS][43] -> [INCOMPLETE][44] ([fdo#103665])
[43]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7475/shard-kbl6/igt@[email protected]
[44]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15565/shard-kbl2/igt@[email protected]
* igt@kms_plane_alpha_blend@pipe-c-constant-alpha-min:
- shard-skl: [PASS][45] -> [FAIL][46] ([fdo#108145])
[45]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7475/shard-skl5/igt@[email protected]
[46]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15565/shard-skl6/igt@[email protected]
* igt@kms_plane_alpha_blend@pipe-c-coverage-7efc:
- shard-skl: [PASS][47] -> [FAIL][48] ([fdo#108145] / [i915#265])
[47]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7475/shard-skl6/igt@[email protected]
[48]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15565/shard-skl7/igt@[email protected]
* igt@kms_psr@psr2_no_drrs:
- shard-iclb: [PASS][49] -> [SKIP][50] ([fdo#109441]) +2 similar issues
[49]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7475/shard-iclb2/igt@kms_psr@psr2_no_drrs.html
[50]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15565/shard-iclb1/igt@kms_psr@psr2_no_drrs.html
* igt@kms_setmode@basic:
- shard-apl: [PASS][51] -> [FAIL][52] ([i915#31])
[51]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7475/shard-apl3/igt@[email protected]
[52]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15565/shard-apl2/igt@[email protected]
* igt@kms_vblank@pipe-a-ts-continuation-suspend:
- shard-kbl: [PASS][53] -> [DMESG-WARN][54] ([i915#180]) +2 similar issues
[53]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7475/shard-kbl1/igt@[email protected]
[54]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15565/shard-kbl3/igt@[email protected]
#### Possible fixes ####
* igt@gem_busy@busy-vcs1:
- shard-iclb: [SKIP][55] ([fdo#112080]) -> [PASS][56] +8 similar issues
[55]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7475/shard-iclb6/igt@[email protected]
[56]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15565/shard-iclb2/igt@[email protected]
* igt@gem_ctx_isolation@vcs1-none:
- shard-iclb: [SKIP][57] ([fdo#109276] / [fdo#112080]) -> [PASS][58] +4 similar issues
[57]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7475/shard-iclb6/igt@[email protected]
[58]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15565/shard-iclb2/igt@[email protected]
* {igt@gem_exec_schedule@pi-userfault-bsd}:
- shard-iclb: [SKIP][59] ([i915#677]) -> [PASS][60]
[59]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7475/shard-iclb2/igt@[email protected]
[60]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15565/shard-iclb3/igt@[email protected]
* igt@gem_exec_schedule@preempt-other-chain-bsd:
- shard-iclb: [SKIP][61] ([fdo#112146]) -> [PASS][62] +7 similar issues
[61]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7475/shard-iclb2/igt@[email protected]
[62]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15565/shard-iclb3/igt@[email protected]
* igt@gem_ppgtt@flink-and-close-vma-leak:
- shard-glk: [FAIL][63] ([i915#644]) -> [PASS][64]
[63]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7475/shard-glk5/igt@[email protected]
[64]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15565/shard-glk6/igt@[email protected]
- shard-apl: [FAIL][65] ([i915#644]) -> [PASS][66]
[65]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7475/shard-apl3/igt@[email protected]
[66]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15565/shard-apl2/igt@[email protected]
* igt@gem_workarounds@suspend-resume:
- shard-skl: [INCOMPLETE][67] ([i915#69]) -> [PASS][68]
[67]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7475/shard-skl10/igt@[email protected]
[68]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15565/shard-skl9/igt@[email protected]
* igt@gem_workarounds@suspend-resume-fd:
- shard-kbl: [DMESG-WARN][69] ([i915#180]) -> [PASS][70] +4 similar issues
[69]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7475/shard-kbl3/igt@[email protected]
[70]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15565/shard-kbl6/igt@[email protected]
* igt@i915_selftest@live_blt:
- shard-hsw: [DMESG-FAIL][71] ([i915#563]) -> [PASS][72]
[71]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7475/shard-hsw5/igt@i915_selftest@live_blt.html
[72]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15565/shard-hsw2/igt@i915_selftest@live_blt.html
* igt@i915_suspend@debugfs-reader:
- shard-tglb: [INCOMPLETE][73] ([i915#456] / [i915#460]) -> [PASS][74]
[73]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7475/shard-tglb1/igt@[email protected]
[74]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15565/shard-tglb5/igt@[email protected]
* igt@kms_big_fb@x-tiled-16bpp-rotate-180:
- shard-kbl: [INCOMPLETE][75] ([fdo#103665]) -> [PASS][76]
[75]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7475/shard-kbl6/igt@[email protected]
[76]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15565/shard-kbl2/igt@[email protected]
* igt@kms_color@pipe-a-ctm-0-75:
- shard-skl: [DMESG-WARN][77] ([i915#109]) -> [PASS][78]
[77]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7475/shard-skl10/igt@[email protected]
[78]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15565/shard-skl9/igt@[email protected]
* igt@kms_cursor_crc@pipe-b-cursor-128x128-sliding:
- shard-hsw: [DMESG-WARN][79] ([IGT#6]) -> [PASS][80]
[79]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7475/shard-hsw6/igt@[email protected]
[80]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15565/shard-hsw4/igt@[email protected]
* igt@kms_cursor_crc@pipe-c-cursor-suspend:
- shard-skl: [INCOMPLETE][81] ([i915#300]) -> [PASS][82]
[81]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7475/shard-skl9/igt@[email protected]
[82]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15565/shard-skl2/igt@[email protected]
* igt@kms_fbcon_fbt@fbc-suspend:
- shard-tglb: [INCOMPLETE][83] ([i915#435] / [i915#456] / [i915#460]) -> [PASS][84]
[83]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7475/shard-tglb1/igt@[email protected]
[84]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15565/shard-tglb9/igt@[email protected]
* igt@kms_flip@flip-vs-suspend-interruptible:
- shard-apl: [DMESG-WARN][85] ([i915#180]) -> [PASS][86] +2 similar issues
[85]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7475/shard-apl6/igt@[email protected]
[86]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15565/shard-apl8/igt@[email protected]
* igt@kms_frontbuffer_tracking@fbc-1p-primscrn-spr-indfb-draw-blt:
- shard-iclb: [FAIL][87] ([i915#49]) -> [PASS][88] +3 similar issues
[87]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7475/shard-iclb2/igt@[email protected]
[88]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15565/shard-iclb1/igt@[email protected]
* igt@kms_frontbuffer_tracking@fbcpsr-1p-primscrn-cur-indfb-draw-mmap-cpu:
- shard-iclb: [INCOMPLETE][89] ([i915#123] / [i915#140]) -> [PASS][90]
[89]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7475/shard-iclb1/igt@kms_frontbuffer_tracking@fbcpsr-1p-primscrn-cur-indfb-draw-mmap-cpu.html
[90]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15565/shard-iclb1/igt@kms_frontbuffer_tracking@fbcpsr-1p-primscrn-cur-indfb-draw-mmap-cpu.html
* igt@kms_frontbuffer_tracking@fbcpsr-suspend:
- shard-tglb: [INCOMPLETE][91] ([i915#456] / [i915#460] / [i915#474]) -> [PASS][92]
[91]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7475/shard-tglb2/igt@[email protected]
[92]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15565/shard-tglb9/igt@[email protected]
* igt@kms_plane@pixel-format-pipe-b-planes-source-clamping:
- shard-skl: [INCOMPLETE][93] ([fdo#112347] / [i915#648]) -> [PASS][94]
[93]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7475/shard-skl3/igt@[email protected]
[94]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15565/shard-skl3/igt@[email protected]
* igt@kms_plane_alpha_blend@pipe-b-constant-alpha-min:
- shard-skl: [FAIL][95] ([fdo#108145]) -> [PASS][96]
[95]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7475/shard-skl2/igt@[email protected]
[96]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15565/shard-skl7/igt@[email protected]
* igt@kms_psr@psr2_primary_mmap_cpu:
- shard-iclb: [SKIP][97] ([fdo#109441]) -> [PASS][98] +2 similar issues
[97]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7475/shard-iclb4/igt@kms_psr@psr2_primary_mmap_cpu.html
[98]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15565/shard-iclb2/igt@kms_psr@psr2_primary_mmap_cpu.html
* igt@prime_vgem@fence-wait-bsd2:
- shard-iclb: [SKIP][99] ([fdo#109276]) -> [PASS][100] +19 similar issues
[99]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7475/shard-iclb3/igt@[email protected]
[100]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15565/shard-iclb1/igt@[email protected]
#### Warnings ####
* igt@gem_ctx_isolation@vcs1-nonpriv:
- shard-iclb: [SKIP][101] ([fdo#109276] / [fdo#112080]) -> [FAIL][102] ([IGT#28])
[101]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7475/shard-iclb6/igt@[email protected]
[102]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15565/shard-iclb1/igt@[email protected]
* igt@kms_plane@pixel-format-pipe-b-planes:
- shard-skl: [INCOMPLETE][103] ([fdo#112347] / [i915#648]) -> [INCOMPLETE][104] ([fdo#112391] / [i915#648])
[103]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7475/shard-skl5/igt@[email protected]
[104]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15565/shard-skl10/igt@[email protected]
{name}: This element is suppressed. This means it is ignored when computing
the status of the difference (SUCCESS, WARNING, or FAILURE).
[IGT#28]: https://gitlab.freedesktop.org/drm/igt-gpu-tools/issues/28
[IGT#6]: https://gitlab.freedesktop.org/drm/igt-gpu-tools/issues/6
[fdo#103665]: https://bugs.freedesktop.org/show_bug.cgi?id=103665
[fdo#107931]: https://bugs.freedesktop.org/show_bug.cgi?id=107931
[fdo#108145]: https://bugs.freedesktop.org/show_bug.cgi?id=108145
[fdo#109276]: https://bugs.freedesktop.org/show_bug.cgi?id=109276
[fdo#109441]: https://bugs.freedesktop.org/show_bug.cgi?id=109441
[fdo#111870]: https://bugs.freedesktop.org/show_bug.cgi?id=111870
[fdo#112080]: https://bugs.freedesktop.org/show_bug.cgi?id=112080
[fdo#112146]: https://bugs.freedesktop.org/show_bug.cgi?id=112146
[fdo#112347]: https://bugs.freedesktop.org/show_bug.cgi?id=112347
[fdo#112391]: https://bugs.freedesktop.org/show_bug.cgi?id=112391
[i915#109]: https://gitlab.freedesktop.org/drm/intel/issues/109
[i915#123]: https://gitlab.freedesktop.org/drm/intel/issues/123
[i915#140]: https://gitlab.freedesktop.org/drm/intel/issues/140
[i915#167]: https://gitlab.freedesktop.org/drm/intel/issues/167
[i915#180]: https://gitlab.freedesktop.org/drm/intel/issues/180
[i915#265]: https://gitlab.freedesktop.org/drm/intel/issues/265
[i915#300]: https://gitlab.freedesktop.org/drm/intel/issues/300
[i915#31]: https://gitlab.freedesktop.org/drm/intel/issues/31
[i915#435]: https://gitlab.freedesktop.org/drm/intel/issues/435
[i915#44]: https://gitlab.freedesktop.org/drm/intel/issues/44
[i915#456]: https://gitlab.freedesktop.org/drm/intel/issues/456
[i915#460]: https://gitlab.freedesktop.org/drm/intel/issues/460
[i915#463]: https://gitlab.freedesktop.org/drm/intel/issues/463
[i915#472]: https://gitlab.freedesktop.org/drm/intel/issues/472
[i915#474]: https://gitlab.freedesktop.org/drm/intel/issues/474
[i915#49]: https://gitlab.freedesktop.org/drm/intel/issues/49
[i915#530]: https://gitlab.freedesktop.org/drm/intel/issues/530
[i915#563]: https://gitlab.freedesktop.org/drm/intel/issues/563
[i915#61]: https://gitlab.freedesktop.org/drm/intel/issues/61
[i915#644]: https://gitlab.freedesktop.org/drm/intel/issues/644
[i915#648]: https://gitlab.freedesktop.org/drm/intel/issues/648
[i915#676]: https://gitlab.freedesktop.org/drm/intel/issues/676
[i915#677]: https://gitlab.freedesktop.org/drm/intel/issues/677
[i915#69]: https://gitlab.freedesktop.org/drm/intel/issues/69
[i915#79]: https://gitlab.freedesktop.org/drm/intel/issues/79
Participating hosts (11 -> 11)
------------------------------
No changes in participating hosts
Build changes
-------------
* CI: CI-20190529 -> None
* Linux: CI_DRM_7475 -> Patchwork_15565
CI-20190529: 20190529
CI_DRM_7475: cb30ed97a3642a5995a310564fb46a7150e7ab9e @ git://anongit.freedesktop.org/gfx-ci/linux
IGT_5323: b0f877d06a78b9c38ed246be2537a0453b6c214f @ git://anongit.freedesktop.org/xorg/app/intel-gpu-tools
Patchwork_15565: b4c9b961101f03bfd2c45a785deb5544ff0e0464 @ git://anongit.freedesktop.org/gfx-ci/linux
piglit_4509: fdc5a4ca11124ab8413c7988896eec4c97336694 @ git://anongit.freedesktop.org/piglit
== Logs ==
For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15565/index.html
_______________________________________________
Intel-gfx mailing list
[email protected]
https://lists.freedesktop.org/mailman/listinfo/intel-gfx