aboutsummaryrefslogtreecommitdiff
path: root/drivers/video
diff options
context:
space:
mode:
authorGravatar Thomas Zimmermann <tzimmermann@suse.de> 2023-09-27 09:26:37 +0200
committerGravatar Thomas Zimmermann <tzimmermann@suse.de> 2023-10-19 12:54:30 +0200
commit48c3734d416ec1c729cb9d81631ae5c325413e93 (patch)
tree2c7a621e8a33a32ece4f830ab8125e3d0a8e751e /drivers/video
parentfbdev/amba-clcd: Initialize fb_ops to fbdev I/O-memory helpers (diff)
downloadlinux-48c3734d416ec1c729cb9d81631ae5c325413e93.tar.gz
linux-48c3734d416ec1c729cb9d81631ae5c325413e93.tar.bz2
linux-48c3734d416ec1c729cb9d81631ae5c325413e93.zip
fbdev/amifb: 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: Thomas Zimmermann <tzimmermann@suse.de> Acked-by: Javier Martinez Canillas <javierm@redhat.com> Link: https://patchwork.freedesktop.org/patch/msgid/20230927074722.6197-5-tzimmermann@suse.de
Diffstat (limited to 'drivers/video')
-rw-r--r--drivers/video/fbdev/Kconfig1
-rw-r--r--drivers/video/fbdev/amifb.c2
2 files changed, 3 insertions, 0 deletions
diff --git a/drivers/video/fbdev/Kconfig b/drivers/video/fbdev/Kconfig
index 73c973ea59e6..8ff31da533bf 100644
--- a/drivers/video/fbdev/Kconfig
+++ b/drivers/video/fbdev/Kconfig
@@ -225,6 +225,7 @@ config FB_Q40
config FB_AMIGA
tristate "Amiga native chipset support"
depends on FB && AMIGA
+ select FB_IOMEM_FOPS
help
This is the frame buffer device driver for the builtin graphics
chipset found in Amigas.
diff --git a/drivers/video/fbdev/amifb.c b/drivers/video/fbdev/amifb.c
index 441e7a8dbe58..b18c6b4f129a 100644
--- a/drivers/video/fbdev/amifb.c
+++ b/drivers/video/fbdev/amifb.c
@@ -3488,6 +3488,7 @@ static irqreturn_t amifb_interrupt(int irq, void *dev_id)
static const struct fb_ops amifb_ops = {
.owner = THIS_MODULE,
+ __FB_DEFAULT_IOMEM_OPS_RDWR,
.fb_check_var = amifb_check_var,
.fb_set_par = amifb_set_par,
.fb_setcolreg = amifb_setcolreg,
@@ -3497,6 +3498,7 @@ static const struct fb_ops amifb_ops = {
.fb_copyarea = amifb_copyarea,
.fb_imageblit = amifb_imageblit,
.fb_ioctl = amifb_ioctl,
+ __FB_DEFAULT_IOMEM_OPS_MMAP,
};