Commit e7011bf8 authored by Thomas Zimmermann's avatar Thomas Zimmermann

fbdev/gbefb: Initialize fb_ops to fbdev I/O-memory helpers

Initialize the instance of struct fb_ops with fbdev initializer
macros for framebuffers in I/O address space. Set the read/write,
draw and mmap callbacks to the correct implementation and avoid
implicit defaults. Also select the necessary I/O helpers in Kconfig.

Fbdev drivers sometimes rely on the callbacks being NULL for a
default implementation to be invoked; hence requiring the I/O
helpers to be built in any case. Setting all callbacks in all
drivers explicitly will allow to make the I/O helpers optional.
This benefits systems that do not use these functions.

No functional changes.
Signed-off-by: default avatarThomas Zimmermann <tzimmermann@suse.de>
Acked-by: default avatarJavier Martinez Canillas <javierm@redhat.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20230927074722.6197-16-tzimmermann@suse.de
parent 244c2b55
...@@ -498,9 +498,7 @@ config FB_GBE ...@@ -498,9 +498,7 @@ config FB_GBE
bool "SGI Graphics Backend frame buffer support" bool "SGI Graphics Backend frame buffer support"
depends on (FB = y) && HAS_IOMEM depends on (FB = y) && HAS_IOMEM
depends on SGI_IP32 || COMPILE_TEST depends on SGI_IP32 || COMPILE_TEST
select FB_CFB_FILLRECT select FB_IOMEM_HELPERS
select FB_CFB_COPYAREA
select FB_CFB_IMAGEBLIT
help help
This is the frame buffer device driver for SGI Graphics Backend. This is the frame buffer device driver for SGI Graphics Backend.
This chip is used in SGI O2 and Visual Workstation 320/540. This chip is used in SGI O2 and Visual Workstation 320/540.
......
...@@ -1044,14 +1044,13 @@ static int gbefb_mmap(struct fb_info *info, ...@@ -1044,14 +1044,13 @@ static int gbefb_mmap(struct fb_info *info,
static const struct fb_ops gbefb_ops = { static const struct fb_ops gbefb_ops = {
.owner = THIS_MODULE, .owner = THIS_MODULE,
__FB_DEFAULT_IOMEM_OPS_RDWR,
.fb_check_var = gbefb_check_var, .fb_check_var = gbefb_check_var,
.fb_set_par = gbefb_set_par, .fb_set_par = gbefb_set_par,
.fb_setcolreg = gbefb_setcolreg, .fb_setcolreg = gbefb_setcolreg,
.fb_mmap = gbefb_mmap,
.fb_blank = gbefb_blank, .fb_blank = gbefb_blank,
.fb_fillrect = cfb_fillrect, __FB_DEFAULT_IOMEM_OPS_DRAW,
.fb_copyarea = cfb_copyarea, .fb_mmap = gbefb_mmap,
.fb_imageblit = cfb_imageblit,
}; };
/* /*
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment