On 01/08/2023 12:13, Thomas Zimmermann wrote: > Set struct fb_ops and with FB_DEFAULT_IO_OPS, fbdev's initializer > for I/O memory. Sets the callbacks to the cfb_ and fb_io_ functions. > Select the correct modules with Kconfig's FB_IO_HELPERS token. > > The macro and token set the currently selected values, so there is > no functional change. > > v2: > * updated to use _IOMEM_ tokens > > Signed-off-by: Thomas Zimmermann <tzimmermann@xxxxxxx> > Reviewed-by: Sam Ravnborg <sam@xxxxxxxxxxxx> > Acked-by: Helge Deller <deller@xxxxxx> > Cc: Hans Verkuil <hverkuil@xxxxxxxxx> > Cc: Mauro Carvalho Chehab <mchehab@xxxxxxxxxx> > --- > drivers/media/test-drivers/vivid/Kconfig | 4 +--- > drivers/media/test-drivers/vivid/vivid-osd.c | 4 +--- > 2 files changed, 2 insertions(+), 6 deletions(-) > > diff --git a/drivers/media/test-drivers/vivid/Kconfig b/drivers/media/test-drivers/vivid/Kconfig > index 318799d317ba..5b08a5ad291e 100644 > --- a/drivers/media/test-drivers/vivid/Kconfig > +++ b/drivers/media/test-drivers/vivid/Kconfig > @@ -3,11 +3,9 @@ config VIDEO_VIVID > tristate "Virtual Video Test Driver" > depends on VIDEO_DEV && !SPARC32 && !SPARC64 && FB > depends on HAS_DMA > + select FB_IOMEM_HELPERS > select FONT_SUPPORT > select FONT_8x16 > - select FB_CFB_FILLRECT > - select FB_CFB_COPYAREA > - select FB_CFB_IMAGEBLIT > select VIDEOBUF2_VMALLOC > select VIDEOBUF2_DMA_CONTIG > select VIDEO_V4L2_TPG > diff --git a/drivers/media/test-drivers/vivid/vivid-osd.c b/drivers/media/test-drivers/vivid/vivid-osd.c > index 051f1805a16d..5c931b94a7b5 100644 > --- a/drivers/media/test-drivers/vivid/vivid-osd.c > +++ b/drivers/media/test-drivers/vivid/vivid-osd.c > @@ -246,12 +246,10 @@ static int vivid_fb_blank(int blank_mode, struct fb_info *info) > > static const struct fb_ops vivid_fb_ops = { > .owner = THIS_MODULE, > + FB_DEFAULT_IOMEM_OPS, This macro also sets fb_read and fb_write ops here, in addition to the cfb_* ops, based on this patch: https://lore.kernel.org/all/20230729193157.15446-2-tzimmermann@xxxxxxx/#Z2e.:20230729193157.15446-2-tzimmermann::40suse.de:1include:linux:fb.h But those two ops were never set in this driver before. It's been ages since I last worked with this, so I can't tell whether that's good or bad, all I know is that it makes what appears to be a functional change. Can you explain a bit more? Am I missing something? Regards, Hans > .fb_check_var = vivid_fb_check_var, > .fb_set_par = vivid_fb_set_par, > .fb_setcolreg = vivid_fb_setcolreg, > - .fb_fillrect = cfb_fillrect, > - .fb_copyarea = cfb_copyarea, > - .fb_imageblit = cfb_imageblit, > .fb_cursor = NULL, > .fb_ioctl = vivid_fb_ioctl, > .fb_pan_display = vivid_fb_pan_display,