Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

fbdev/efifb: Use fbdev I/O helpers

Set struct fb_ops and with FB_DEFAULT_IOMEM_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_IOMEM_HELPERS token.

The macro and token set the currently selected values, so there is
no functional change.

v3:
* use _IOMEM_ in commit message
v2:
* updated to use _IOMEM_ tokens

Signed-off-by: Thomas Zimmermann <tzimmermann@suse.de>
Reviewed-by: Sam Ravnborg <sam@ravnborg.org>
Acked-by: Helge Deller <deller@gmx.de>
Cc: Peter Jones <pjones@redhat.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20230803184034.6456-10-tzimmermann@suse.de

+2 -6
+1 -3
drivers/video/fbdev/Kconfig
··· 486 486 depends on (FB = y) && !IA64 && EFI 487 487 select APERTURE_HELPERS 488 488 select DRM_PANEL_ORIENTATION_QUIRKS 489 - select FB_CFB_FILLRECT 490 - select FB_CFB_COPYAREA 491 - select FB_CFB_IMAGEBLIT 489 + select FB_IOMEM_HELPERS 492 490 select SYSFB 493 491 help 494 492 This is the EFI frame buffer device driver. If the firmware on
+1 -3
drivers/video/fbdev/efifb.c
··· 277 277 278 278 static const struct fb_ops efifb_ops = { 279 279 .owner = THIS_MODULE, 280 + FB_DEFAULT_IOMEM_OPS, 280 281 .fb_destroy = efifb_destroy, 281 282 .fb_setcolreg = efifb_setcolreg, 282 - .fb_fillrect = cfb_fillrect, 283 - .fb_copyarea = cfb_copyarea, 284 - .fb_imageblit = cfb_imageblit, 285 283 }; 286 284 287 285 static int efifb_setup(char *options)