* [PATCH v2 00/47] fbdev: Use I/O helpers
@ 2023-08-01 10:13 Thomas Zimmermann
2023-08-01 10:13 ` [PATCH v2 01/47] media/vivid: Use fbdev " Thomas Zimmermann
` (46 more replies)
0 siblings, 47 replies; 51+ messages in thread
From: Thomas Zimmermann @ 2023-08-01 10:13 UTC (permalink / raw)
To: deller, javierm, sam
Cc: linux-media, linux-fbdev, dri-devel, linux-arm-kernel,
linux-geode, linux-omap, kvm, Thomas Zimmermann
Most fbdev drivers operate on I/O memory. And most of those use the
default implementations for file I/O and console drawing. Convert all
these low-hanging fruits to the fb_ops initializer macro and Kconfig
token for fbdev I/O helpers.
The fbdev I/O helpers are easily grep-able. In a later patch, they can
be left to empty values if the rsp. functionality, such as file I/O or
console, has been disabled.
There are no functional changes. The helpers set the defaults that
the drivers already use.
v2:
* updated to use _IOMEM_ tokens
Thomas Zimmermann (47):
media/vivid: Use fbdev I/O helpers
fbdev/acornfb: Use fbdev I/O helpers
fbdev/asiliantfb: Use fbdev I/O helpers
fbdev/atmel_lcdfb: Use fbdev I/O helpers
fbdev/aty128fb: Use fbdev I/O helpers
fbdev/carminefb: Use fbdev I/O helpers
fbdev/chipsfb: Use fbdev I/O helpers
fbdev/da8xx-fb: Use fbdev I/O helpers
fbdev/efifb: Use fbdev I/O helpers
fbdev/fm2fb: Use fbdev I/O helpers
fbdev/fsl-diu-fb: Use fbdev I/O helpers
fbdev/g364fb: Use fbdev I/O helpers
fbdev/geode/gx1fb: Use fbdev I/O helpers
fbdev/geode/gxfb: Use fbdev I/O helpers
fbdev/geode/lxfb: Use fbdev I/O helpers
fbdev/goldfishfb: Use fbdev I/O helpers
fbdev/grvga: Use fbdev I/O helpers
fbdev/gxt4500: Use fbdev I/O helpers
fbdev/i740fb: Use fbdev I/O helpers
fbdev/imxfb: Use fbdev I/O helpers
fbdev/kyro: Use fbdev I/O helpers
fbdev/macfb: Use fbdev I/O helpers
fbdev/maxinefb: Use fbdev I/O helpers
fbdev/mb862xxfb: Use fbdev I/O helpers
fbdev/mmpfb: Use fbdev I/O helpers
fbdev/mx3fb: Use fbdev I/O helpers
fbdev/ocfb: Use fbdev I/O helpers
fbdev/offb: Use fbdev I/O helpers
fbdev/omapfb: Use fbdev I/O helpers
fbdev/platinumfb: Use fbdev I/O helpers
fbdev/pmag-aa-fb: Use fbdev I/O helpers
fbdev/pmag-ba-fb: Use fbdev I/O helpers
fbdev/pmagb-b-fb: Use fbdev I/O helpers
fbdev/pxa168fb: Use fbdev I/O helpers
fbdev/pxafb: Use fbdev I/O helpers
fbdev/q40fb: Use fbdev I/O helpers
fbdev/s3cfb: Use fbdev I/O helpers
fbdev/sh7760fb: Use fbdev I/O helpers
fbdev/simplefb: Use fbdev I/O helpers
fbdev/sstfb: Use fbdev I/O helpers
fbdev/sunxvr1000: Use fbdev I/O helpers
fbdev/sunxvr2500: Use fbdev I/O helpers
fbdev/uvesafb: Use fbdev I/O helpers
fbdev/valkyriefb: Use fbdev I/O helpers
fbdev/vesafb: Use fbdev I/O helpers
fbdev/xilinxfb: Use fbdev I/O helpers
vfio-dev/mdpy-fb: Use fbdev I/O helpers
drivers/media/test-drivers/vivid/Kconfig | 4 +-
drivers/media/test-drivers/vivid/vivid-osd.c | 4 +-
drivers/video/fbdev/Kconfig | 160 +++++--------------
drivers/video/fbdev/acornfb.c | 4 +-
drivers/video/fbdev/asiliantfb.c | 4 +-
drivers/video/fbdev/atmel_lcdfb.c | 4 +-
drivers/video/fbdev/aty/aty128fb.c | 4 +-
drivers/video/fbdev/carminefb.c | 5 +-
drivers/video/fbdev/chipsfb.c | 4 +-
drivers/video/fbdev/da8xx-fb.c | 4 +-
drivers/video/fbdev/efifb.c | 4 +-
drivers/video/fbdev/fm2fb.c | 4 +-
drivers/video/fbdev/fsl-diu-fb.c | 4 +-
drivers/video/fbdev/g364fb.c | 4 +-
drivers/video/fbdev/geode/Kconfig | 12 +-
drivers/video/fbdev/geode/gx1fb_core.c | 5 +-
drivers/video/fbdev/geode/gxfb_core.c | 5 +-
drivers/video/fbdev/geode/lxfb_core.c | 5 +-
drivers/video/fbdev/goldfishfb.c | 4 +-
drivers/video/fbdev/grvga.c | 4 +-
drivers/video/fbdev/gxt4500.c | 4 +-
drivers/video/fbdev/i740fb.c | 4 +-
drivers/video/fbdev/imxfb.c | 4 +-
drivers/video/fbdev/kyro/fbdev.c | 4 +-
drivers/video/fbdev/macfb.c | 4 +-
drivers/video/fbdev/maxinefb.c | 4 +-
drivers/video/fbdev/mb862xx/mb862xxfbdrv.c | 4 +-
drivers/video/fbdev/mmp/fb/Kconfig | 4 +-
drivers/video/fbdev/mmp/fb/mmpfb.c | 4 +-
drivers/video/fbdev/mx3fb.c | 4 +-
drivers/video/fbdev/ocfb.c | 4 +-
drivers/video/fbdev/offb.c | 4 +-
drivers/video/fbdev/omap/Kconfig | 4 +-
drivers/video/fbdev/omap/omapfb_main.c | 4 +-
drivers/video/fbdev/platinumfb.c | 4 +-
drivers/video/fbdev/pmag-aa-fb.c | 4 +-
drivers/video/fbdev/pmag-ba-fb.c | 4 +-
drivers/video/fbdev/pmagb-b-fb.c | 4 +-
drivers/video/fbdev/pxa168fb.c | 4 +-
drivers/video/fbdev/pxafb.c | 4 +-
drivers/video/fbdev/q40fb.c | 4 +-
drivers/video/fbdev/s3c-fb.c | 4 +-
drivers/video/fbdev/sh7760fb.c | 4 +-
drivers/video/fbdev/simplefb.c | 4 +-
drivers/video/fbdev/sstfb.c | 4 +-
drivers/video/fbdev/sunxvr1000.c | 4 +-
drivers/video/fbdev/sunxvr2500.c | 4 +-
drivers/video/fbdev/uvesafb.c | 4 +-
drivers/video/fbdev/valkyriefb.c | 4 +-
drivers/video/fbdev/vesafb.c | 4 +-
drivers/video/fbdev/xilinxfb.c | 4 +-
samples/Kconfig | 4 +-
samples/vfio-mdev/mdpy-fb.c | 4 +-
53 files changed, 94 insertions(+), 286 deletions(-)
base-commit: 194cd63362db9ed2cbdd3deaa7a8752b86d95f3b
prerequisite-patch-id: 0aa359f6144c4015c140c8a6750be19099c676fb
prerequisite-patch-id: c67e5d886a47b7d0266d81100837557fda34cb24
prerequisite-patch-id: cbc453ee02fae02af22fbfdce56ab732c7a88c36
prerequisite-patch-id: 9e45f32f01ebd4d3a927038e52b91a389673b9bb
prerequisite-patch-id: b0b735b6e10a12816cea5ea15e3292c6342ed2f2
prerequisite-patch-id: 3997b2a71240d34ccf6990cf133cad39d4efc8f4
prerequisite-patch-id: d64b3896ffd91137df0c4311a8b7aa0d5fa40a11
--
2.41.0
^ permalink raw reply [flat|nested] 51+ messages in thread
* [PATCH v2 01/47] media/vivid: Use fbdev I/O helpers
2023-08-01 10:13 [PATCH v2 00/47] fbdev: Use I/O helpers Thomas Zimmermann
@ 2023-08-01 10:13 ` Thomas Zimmermann
2023-08-01 11:22 ` Hans Verkuil
2023-08-01 10:13 ` [PATCH v2 02/47] fbdev/acornfb: " Thomas Zimmermann
` (45 subsequent siblings)
46 siblings, 1 reply; 51+ messages in thread
From: Thomas Zimmermann @ 2023-08-01 10:13 UTC (permalink / raw)
To: deller, javierm, sam
Cc: linux-media, linux-fbdev, dri-devel, linux-arm-kernel,
linux-geode, linux-omap, kvm, Thomas Zimmermann, Hans Verkuil,
Mauro Carvalho Chehab
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@suse.de>
Reviewed-by: Sam Ravnborg <sam@ravnborg.org>
Acked-by: Helge Deller <deller@gmx.de>
Cc: Hans Verkuil <hverkuil@xs4all.nl>
Cc: Mauro Carvalho Chehab <mchehab@kernel.org>
---
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,
.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,
--
2.41.0
^ permalink raw reply related [flat|nested] 51+ messages in thread
* [PATCH v2 02/47] fbdev/acornfb: Use fbdev I/O helpers
2023-08-01 10:13 [PATCH v2 00/47] fbdev: Use I/O helpers Thomas Zimmermann
2023-08-01 10:13 ` [PATCH v2 01/47] media/vivid: Use fbdev " Thomas Zimmermann
@ 2023-08-01 10:13 ` Thomas Zimmermann
2023-08-01 10:13 ` [PATCH v2 03/47] fbdev/asiliantfb: " Thomas Zimmermann
` (44 subsequent siblings)
46 siblings, 0 replies; 51+ messages in thread
From: Thomas Zimmermann @ 2023-08-01 10:13 UTC (permalink / raw)
To: deller, javierm, sam
Cc: linux-media, linux-fbdev, dri-devel, linux-arm-kernel,
linux-geode, linux-omap, kvm, Thomas Zimmermann
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@suse.de>
Reviewed-by: Sam Ravnborg <sam@ravnborg.org>
Acked-by: Helge Deller <deller@gmx.de>
---
drivers/video/fbdev/Kconfig | 4 +---
drivers/video/fbdev/acornfb.c | 4 +---
2 files changed, 2 insertions(+), 6 deletions(-)
diff --git a/drivers/video/fbdev/Kconfig b/drivers/video/fbdev/Kconfig
index 5f8392b4f2a1..0863a2609e1a 100644
--- a/drivers/video/fbdev/Kconfig
+++ b/drivers/video/fbdev/Kconfig
@@ -139,9 +139,7 @@ config FB_ARMCLCD
config FB_ACORN
bool "Acorn VIDC support"
depends on (FB = y) && ARM && ARCH_ACORN
- select FB_CFB_FILLRECT
- select FB_CFB_COPYAREA
- select FB_CFB_IMAGEBLIT
+ select FB_IOMEM_HELPERS
help
This is the frame buffer device driver for the Acorn VIDC graphics
hardware found in Acorn RISC PCs and other ARM-based machines. If
diff --git a/drivers/video/fbdev/acornfb.c b/drivers/video/fbdev/acornfb.c
index 8fec21dfca09..163d2c9f951c 100644
--- a/drivers/video/fbdev/acornfb.c
+++ b/drivers/video/fbdev/acornfb.c
@@ -605,13 +605,11 @@ acornfb_pan_display(struct fb_var_screeninfo *var, struct fb_info *info)
static const struct fb_ops acornfb_ops = {
.owner = THIS_MODULE,
+ FB_IOMEM_DEFAULT_OPS,
.fb_check_var = acornfb_check_var,
.fb_set_par = acornfb_set_par,
.fb_setcolreg = acornfb_setcolreg,
.fb_pan_display = acornfb_pan_display,
- .fb_fillrect = cfb_fillrect,
- .fb_copyarea = cfb_copyarea,
- .fb_imageblit = cfb_imageblit,
};
/*
--
2.41.0
^ permalink raw reply related [flat|nested] 51+ messages in thread
* [PATCH v2 03/47] fbdev/asiliantfb: Use fbdev I/O helpers
2023-08-01 10:13 [PATCH v2 00/47] fbdev: Use I/O helpers Thomas Zimmermann
2023-08-01 10:13 ` [PATCH v2 01/47] media/vivid: Use fbdev " Thomas Zimmermann
2023-08-01 10:13 ` [PATCH v2 02/47] fbdev/acornfb: " Thomas Zimmermann
@ 2023-08-01 10:13 ` Thomas Zimmermann
2023-08-01 10:13 ` [PATCH v2 04/47] fbdev/atmel_lcdfb: " Thomas Zimmermann
` (43 subsequent siblings)
46 siblings, 0 replies; 51+ messages in thread
From: Thomas Zimmermann @ 2023-08-01 10:13 UTC (permalink / raw)
To: deller, javierm, sam
Cc: linux-media, linux-fbdev, dri-devel, linux-arm-kernel,
linux-geode, linux-omap, kvm, Thomas Zimmermann
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@suse.de>
Reviewed-by: Sam Ravnborg <sam@ravnborg.org>
Acked-by: Helge Deller <deller@gmx.de>
---
drivers/video/fbdev/Kconfig | 4 +---
drivers/video/fbdev/asiliantfb.c | 4 +---
2 files changed, 2 insertions(+), 6 deletions(-)
diff --git a/drivers/video/fbdev/Kconfig b/drivers/video/fbdev/Kconfig
index 0863a2609e1a..83baef1c8379 100644
--- a/drivers/video/fbdev/Kconfig
+++ b/drivers/video/fbdev/Kconfig
@@ -362,9 +362,7 @@ config FB_CT65550
config FB_ASILIANT
bool "Asiliant (Chips) 69000 display support"
depends on (FB = y) && PCI
- select FB_CFB_FILLRECT
- select FB_CFB_COPYAREA
- select FB_CFB_IMAGEBLIT
+ select FB_IOMEM_HELPERS
select VIDEO_NOMODESET
help
This is the frame buffer device driver for the Asiliant 69030 chipset
diff --git a/drivers/video/fbdev/asiliantfb.c b/drivers/video/fbdev/asiliantfb.c
index 29c232809d5e..bf3c116684dc 100644
--- a/drivers/video/fbdev/asiliantfb.c
+++ b/drivers/video/fbdev/asiliantfb.c
@@ -98,12 +98,10 @@ static int asiliantfb_setcolreg(u_int regno, u_int red, u_int green, u_int blue,
static const struct fb_ops asiliantfb_ops = {
.owner = THIS_MODULE,
+ FB_DEFAULT_IOMEM_OPS,
.fb_check_var = asiliantfb_check_var,
.fb_set_par = asiliantfb_set_par,
.fb_setcolreg = asiliantfb_setcolreg,
- .fb_fillrect = cfb_fillrect,
- .fb_copyarea = cfb_copyarea,
- .fb_imageblit = cfb_imageblit,
};
/* Calculate the ratios for the dot clocks without using a single long long
--
2.41.0
^ permalink raw reply related [flat|nested] 51+ messages in thread
* [PATCH v2 04/47] fbdev/atmel_lcdfb: Use fbdev I/O helpers
2023-08-01 10:13 [PATCH v2 00/47] fbdev: Use I/O helpers Thomas Zimmermann
` (2 preceding siblings ...)
2023-08-01 10:13 ` [PATCH v2 03/47] fbdev/asiliantfb: " Thomas Zimmermann
@ 2023-08-01 10:13 ` Thomas Zimmermann
2023-08-01 10:13 ` [PATCH v2 05/47] fbdev/aty128fb: " Thomas Zimmermann
` (42 subsequent siblings)
46 siblings, 0 replies; 51+ messages in thread
From: Thomas Zimmermann @ 2023-08-01 10:13 UTC (permalink / raw)
To: deller, javierm, sam
Cc: linux-media, linux-fbdev, dri-devel, linux-arm-kernel,
linux-geode, linux-omap, kvm, Thomas Zimmermann, Nicolas Ferre,
Alexandre Belloni, Claudiu Beznea
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@suse.de>
Reviewed-by: Sam Ravnborg <sam@ravnborg.org>
Acked-by: Helge Deller <deller@gmx.de>
Cc: Nicolas Ferre <nicolas.ferre@microchip.com>
Cc: Alexandre Belloni <alexandre.belloni@bootlin.com>
Cc: Claudiu Beznea <claudiu.beznea@microchip.com>
---
drivers/video/fbdev/Kconfig | 4 +---
drivers/video/fbdev/atmel_lcdfb.c | 4 +---
2 files changed, 2 insertions(+), 6 deletions(-)
diff --git a/drivers/video/fbdev/Kconfig b/drivers/video/fbdev/Kconfig
index 83baef1c8379..850d5c07587f 100644
--- a/drivers/video/fbdev/Kconfig
+++ b/drivers/video/fbdev/Kconfig
@@ -713,9 +713,7 @@ config FB_ATMEL
depends on FB && OF && HAVE_CLK && HAS_IOMEM
depends on HAVE_FB_ATMEL || COMPILE_TEST
select FB_BACKLIGHT
- select FB_CFB_FILLRECT
- select FB_CFB_COPYAREA
- select FB_CFB_IMAGEBLIT
+ select FB_IOMEM_HELPERS
select FB_MODE_HELPERS
select VIDEOMODE_HELPERS
help
diff --git a/drivers/video/fbdev/atmel_lcdfb.c b/drivers/video/fbdev/atmel_lcdfb.c
index 3021660b3e87..c75a62287ec4 100644
--- a/drivers/video/fbdev/atmel_lcdfb.c
+++ b/drivers/video/fbdev/atmel_lcdfb.c
@@ -806,14 +806,12 @@ static int atmel_lcdfb_blank(int blank_mode, struct fb_info *info)
static const struct fb_ops atmel_lcdfb_ops = {
.owner = THIS_MODULE,
+ FB_DEFAULT_IOMEM_OPS,
.fb_check_var = atmel_lcdfb_check_var,
.fb_set_par = atmel_lcdfb_set_par,
.fb_setcolreg = atmel_lcdfb_setcolreg,
.fb_blank = atmel_lcdfb_blank,
.fb_pan_display = atmel_lcdfb_pan_display,
- .fb_fillrect = cfb_fillrect,
- .fb_copyarea = cfb_copyarea,
- .fb_imageblit = cfb_imageblit,
};
static irqreturn_t atmel_lcdfb_interrupt(int irq, void *dev_id)
--
2.41.0
^ permalink raw reply related [flat|nested] 51+ messages in thread
* [PATCH v2 05/47] fbdev/aty128fb: Use fbdev I/O helpers
2023-08-01 10:13 [PATCH v2 00/47] fbdev: Use I/O helpers Thomas Zimmermann
` (3 preceding siblings ...)
2023-08-01 10:13 ` [PATCH v2 04/47] fbdev/atmel_lcdfb: " Thomas Zimmermann
@ 2023-08-01 10:13 ` Thomas Zimmermann
2023-08-01 10:13 ` [PATCH v2 06/47] fbdev/carminefb: " Thomas Zimmermann
` (41 subsequent siblings)
46 siblings, 0 replies; 51+ messages in thread
From: Thomas Zimmermann @ 2023-08-01 10:13 UTC (permalink / raw)
To: deller, javierm, sam
Cc: linux-media, linux-fbdev, dri-devel, linux-arm-kernel,
linux-geode, linux-omap, kvm, Thomas Zimmermann
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@suse.de>
Reviewed-by: Sam Ravnborg <sam@ravnborg.org>
Acked-by: Helge Deller <deller@gmx.de>
---
drivers/video/fbdev/Kconfig | 4 +---
drivers/video/fbdev/aty/aty128fb.c | 4 +---
2 files changed, 2 insertions(+), 6 deletions(-)
diff --git a/drivers/video/fbdev/Kconfig b/drivers/video/fbdev/Kconfig
index 850d5c07587f..ea24f8114ac7 100644
--- a/drivers/video/fbdev/Kconfig
+++ b/drivers/video/fbdev/Kconfig
@@ -1098,10 +1098,8 @@ config FB_RADEON_DEBUG
config FB_ATY128
tristate "ATI Rage128 display support"
depends on FB && PCI
- select FB_CFB_FILLRECT
- select FB_CFB_COPYAREA
- select FB_CFB_IMAGEBLIT
select FB_BACKLIGHT if FB_ATY128_BACKLIGHT
+ select FB_IOMEM_HELPERS
select FB_MACMODES if PPC_PMAC
select VIDEO_NOMODESET
help
diff --git a/drivers/video/fbdev/aty/aty128fb.c b/drivers/video/fbdev/aty/aty128fb.c
index b44fc78ccd4f..f4de11f19235 100644
--- a/drivers/video/fbdev/aty/aty128fb.c
+++ b/drivers/video/fbdev/aty/aty128fb.c
@@ -504,6 +504,7 @@ static void aty128_bl_set_power(struct fb_info *info, int power);
static const struct fb_ops aty128fb_ops = {
.owner = THIS_MODULE,
+ FB_DEFAULT_IOMEM_OPS,
.fb_check_var = aty128fb_check_var,
.fb_set_par = aty128fb_set_par,
.fb_setcolreg = aty128fb_setcolreg,
@@ -511,9 +512,6 @@ static const struct fb_ops aty128fb_ops = {
.fb_blank = aty128fb_blank,
.fb_ioctl = aty128fb_ioctl,
.fb_sync = aty128fb_sync,
- .fb_fillrect = cfb_fillrect,
- .fb_copyarea = cfb_copyarea,
- .fb_imageblit = cfb_imageblit,
};
/*
--
2.41.0
^ permalink raw reply related [flat|nested] 51+ messages in thread
* [PATCH v2 06/47] fbdev/carminefb: Use fbdev I/O helpers
2023-08-01 10:13 [PATCH v2 00/47] fbdev: Use I/O helpers Thomas Zimmermann
` (4 preceding siblings ...)
2023-08-01 10:13 ` [PATCH v2 05/47] fbdev/aty128fb: " Thomas Zimmermann
@ 2023-08-01 10:13 ` Thomas Zimmermann
2023-08-01 10:13 ` [PATCH v2 07/47] fbdev/chipsfb: " Thomas Zimmermann
` (40 subsequent siblings)
46 siblings, 0 replies; 51+ messages in thread
From: Thomas Zimmermann @ 2023-08-01 10:13 UTC (permalink / raw)
To: deller, javierm, sam
Cc: linux-media, linux-fbdev, dri-devel, linux-arm-kernel,
linux-geode, linux-omap, kvm, Thomas Zimmermann
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@suse.de>
Reviewed-by: Sam Ravnborg <sam@ravnborg.org>
Acked-by: Helge Deller <deller@gmx.de>
---
drivers/video/fbdev/Kconfig | 4 +---
drivers/video/fbdev/carminefb.c | 5 +----
2 files changed, 2 insertions(+), 7 deletions(-)
diff --git a/drivers/video/fbdev/Kconfig b/drivers/video/fbdev/Kconfig
index ea24f8114ac7..1fa776cacb89 100644
--- a/drivers/video/fbdev/Kconfig
+++ b/drivers/video/fbdev/Kconfig
@@ -1449,9 +1449,7 @@ config FB_PM3
config FB_CARMINE
tristate "Fujitsu carmine frame buffer support"
depends on FB && PCI
- select FB_CFB_FILLRECT
- select FB_CFB_COPYAREA
- select FB_CFB_IMAGEBLIT
+ select FB_IOMEM_HELPERS
select VIDEO_NOMODESET
help
This is the frame buffer device driver for the Fujitsu Carmine chip.
diff --git a/drivers/video/fbdev/carminefb.c b/drivers/video/fbdev/carminefb.c
index 33a03f4ae025..e56065cdba97 100644
--- a/drivers/video/fbdev/carminefb.c
+++ b/drivers/video/fbdev/carminefb.c
@@ -530,10 +530,7 @@ static int init_hardware(struct carmine_hw *hw)
static const struct fb_ops carminefb_ops = {
.owner = THIS_MODULE,
- .fb_fillrect = cfb_fillrect,
- .fb_copyarea = cfb_copyarea,
- .fb_imageblit = cfb_imageblit,
-
+ FB_DEFAULT_IOMEM_OPS,
.fb_check_var = carmine_check_var,
.fb_set_par = carmine_set_par,
.fb_setcolreg = carmine_setcolreg,
--
2.41.0
^ permalink raw reply related [flat|nested] 51+ messages in thread
* [PATCH v2 07/47] fbdev/chipsfb: Use fbdev I/O helpers
2023-08-01 10:13 [PATCH v2 00/47] fbdev: Use I/O helpers Thomas Zimmermann
` (5 preceding siblings ...)
2023-08-01 10:13 ` [PATCH v2 06/47] fbdev/carminefb: " Thomas Zimmermann
@ 2023-08-01 10:13 ` Thomas Zimmermann
2023-08-01 10:13 ` [PATCH v2 08/47] fbdev/da8xx-fb: " Thomas Zimmermann
` (39 subsequent siblings)
46 siblings, 0 replies; 51+ messages in thread
From: Thomas Zimmermann @ 2023-08-01 10:13 UTC (permalink / raw)
To: deller, javierm, sam
Cc: linux-media, linux-fbdev, dri-devel, linux-arm-kernel,
linux-geode, linux-omap, kvm, Thomas Zimmermann
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@suse.de>
Reviewed-by: Sam Ravnborg <sam@ravnborg.org>
Acked-by: Helge Deller <deller@gmx.de>
---
drivers/video/fbdev/Kconfig | 4 +---
drivers/video/fbdev/chipsfb.c | 4 +---
2 files changed, 2 insertions(+), 6 deletions(-)
diff --git a/drivers/video/fbdev/Kconfig b/drivers/video/fbdev/Kconfig
index 1fa776cacb89..e5e5a499df8b 100644
--- a/drivers/video/fbdev/Kconfig
+++ b/drivers/video/fbdev/Kconfig
@@ -351,9 +351,7 @@ config FB_VALKYRIE
config FB_CT65550
bool "Chips 65550 display support"
depends on (FB = y) && PPC32 && PCI
- select FB_CFB_FILLRECT
- select FB_CFB_COPYAREA
- select FB_CFB_IMAGEBLIT
+ select FB_IOMEM_HELPERS
select VIDEO_NOMODESET
help
This is the frame buffer device driver for the Chips & Technologies
diff --git a/drivers/video/fbdev/chipsfb.c b/drivers/video/fbdev/chipsfb.c
index d5f43454ccd7..b80711f13df8 100644
--- a/drivers/video/fbdev/chipsfb.c
+++ b/drivers/video/fbdev/chipsfb.c
@@ -82,13 +82,11 @@ static int chipsfb_blank(int blank, struct fb_info *info);
static const struct fb_ops chipsfb_ops = {
.owner = THIS_MODULE,
+ FB_DEFAULT_IOMEM_OPS,
.fb_check_var = chipsfb_check_var,
.fb_set_par = chipsfb_set_par,
.fb_setcolreg = chipsfb_setcolreg,
.fb_blank = chipsfb_blank,
- .fb_fillrect = cfb_fillrect,
- .fb_copyarea = cfb_copyarea,
- .fb_imageblit = cfb_imageblit,
};
static int chipsfb_check_var(struct fb_var_screeninfo *var,
--
2.41.0
^ permalink raw reply related [flat|nested] 51+ messages in thread
* [PATCH v2 08/47] fbdev/da8xx-fb: Use fbdev I/O helpers
2023-08-01 10:13 [PATCH v2 00/47] fbdev: Use I/O helpers Thomas Zimmermann
` (6 preceding siblings ...)
2023-08-01 10:13 ` [PATCH v2 07/47] fbdev/chipsfb: " Thomas Zimmermann
@ 2023-08-01 10:13 ` Thomas Zimmermann
2023-08-01 10:13 ` [PATCH v2 09/47] fbdev/efifb: " Thomas Zimmermann
` (38 subsequent siblings)
46 siblings, 0 replies; 51+ messages in thread
From: Thomas Zimmermann @ 2023-08-01 10:13 UTC (permalink / raw)
To: deller, javierm, sam
Cc: linux-media, linux-fbdev, dri-devel, linux-arm-kernel,
linux-geode, linux-omap, kvm, Thomas Zimmermann
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@suse.de>
Reviewed-by: Sam Ravnborg <sam@ravnborg.org>
Acked-by: Helge Deller <deller@gmx.de>
---
drivers/video/fbdev/Kconfig | 4 +---
drivers/video/fbdev/da8xx-fb.c | 4 +---
2 files changed, 2 insertions(+), 6 deletions(-)
diff --git a/drivers/video/fbdev/Kconfig b/drivers/video/fbdev/Kconfig
index e5e5a499df8b..e57588c144de 100644
--- a/drivers/video/fbdev/Kconfig
+++ b/drivers/video/fbdev/Kconfig
@@ -1837,10 +1837,8 @@ config FB_DA8XX
tristate "DA8xx/OMAP-L1xx/AM335x Framebuffer support"
depends on FB && HAVE_CLK && HAS_IOMEM
depends on ARCH_DAVINCI_DA8XX || SOC_AM33XX || COMPILE_TEST
- select FB_CFB_FILLRECT
- select FB_CFB_COPYAREA
- select FB_CFB_IMAGEBLIT
select FB_CFB_REV_PIXELS_IN_BYTE
+ select FB_IOMEM_HELPERS
select FB_MODE_HELPERS
select VIDEOMODE_HELPERS
help
diff --git a/drivers/video/fbdev/da8xx-fb.c b/drivers/video/fbdev/da8xx-fb.c
index 988dedcf6be8..4ca70a1bdd3b 100644
--- a/drivers/video/fbdev/da8xx-fb.c
+++ b/drivers/video/fbdev/da8xx-fb.c
@@ -1295,14 +1295,12 @@ static int da8xxfb_set_par(struct fb_info *info)
static const struct fb_ops da8xx_fb_ops = {
.owner = THIS_MODULE,
+ FB_DEFAULT_IOMEM_OPS,
.fb_check_var = fb_check_var,
.fb_set_par = da8xxfb_set_par,
.fb_setcolreg = fb_setcolreg,
.fb_pan_display = da8xx_pan_display,
.fb_ioctl = fb_ioctl,
- .fb_fillrect = cfb_fillrect,
- .fb_copyarea = cfb_copyarea,
- .fb_imageblit = cfb_imageblit,
.fb_blank = cfb_blank,
};
--
2.41.0
^ permalink raw reply related [flat|nested] 51+ messages in thread
* [PATCH v2 09/47] fbdev/efifb: Use fbdev I/O helpers
2023-08-01 10:13 [PATCH v2 00/47] fbdev: Use I/O helpers Thomas Zimmermann
` (7 preceding siblings ...)
2023-08-01 10:13 ` [PATCH v2 08/47] fbdev/da8xx-fb: " Thomas Zimmermann
@ 2023-08-01 10:13 ` Thomas Zimmermann
2023-08-01 10:13 ` [PATCH v2 10/47] fbdev/fm2fb: " Thomas Zimmermann
` (37 subsequent siblings)
46 siblings, 0 replies; 51+ messages in thread
From: Thomas Zimmermann @ 2023-08-01 10:13 UTC (permalink / raw)
To: deller, javierm, sam
Cc: linux-media, linux-fbdev, dri-devel, linux-arm-kernel,
linux-geode, linux-omap, kvm, Thomas Zimmermann, Peter Jones
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@suse.de>
Reviewed-by: Sam Ravnborg <sam@ravnborg.org>
Acked-by: Helge Deller <deller@gmx.de>
Cc: Peter Jones <pjones@redhat.com>
---
drivers/video/fbdev/Kconfig | 4 +---
drivers/video/fbdev/efifb.c | 4 +---
2 files changed, 2 insertions(+), 6 deletions(-)
diff --git a/drivers/video/fbdev/Kconfig b/drivers/video/fbdev/Kconfig
index e57588c144de..be7c99154d32 100644
--- a/drivers/video/fbdev/Kconfig
+++ b/drivers/video/fbdev/Kconfig
@@ -486,9 +486,7 @@ config FB_EFI
depends on (FB = y) && !IA64 && EFI
select APERTURE_HELPERS
select DRM_PANEL_ORIENTATION_QUIRKS
- select FB_CFB_FILLRECT
- select FB_CFB_COPYAREA
- select FB_CFB_IMAGEBLIT
+ select FB_IOMEM_HELPERS
select SYSFB
help
This is the EFI frame buffer device driver. If the firmware on
diff --git a/drivers/video/fbdev/efifb.c b/drivers/video/fbdev/efifb.c
index 3391c8e84210..f9b4ddd592ce 100644
--- a/drivers/video/fbdev/efifb.c
+++ b/drivers/video/fbdev/efifb.c
@@ -277,11 +277,9 @@ static void efifb_destroy(struct fb_info *info)
static const struct fb_ops efifb_ops = {
.owner = THIS_MODULE,
+ FB_DEFAULT_IOMEM_OPS,
.fb_destroy = efifb_destroy,
.fb_setcolreg = efifb_setcolreg,
- .fb_fillrect = cfb_fillrect,
- .fb_copyarea = cfb_copyarea,
- .fb_imageblit = cfb_imageblit,
};
static int efifb_setup(char *options)
--
2.41.0
^ permalink raw reply related [flat|nested] 51+ messages in thread
* [PATCH v2 10/47] fbdev/fm2fb: Use fbdev I/O helpers
2023-08-01 10:13 [PATCH v2 00/47] fbdev: Use I/O helpers Thomas Zimmermann
` (8 preceding siblings ...)
2023-08-01 10:13 ` [PATCH v2 09/47] fbdev/efifb: " Thomas Zimmermann
@ 2023-08-01 10:13 ` Thomas Zimmermann
2023-08-01 10:13 ` [PATCH v2 11/47] fbdev/fsl-diu-fb: " Thomas Zimmermann
` (36 subsequent siblings)
46 siblings, 0 replies; 51+ messages in thread
From: Thomas Zimmermann @ 2023-08-01 10:13 UTC (permalink / raw)
To: deller, javierm, sam
Cc: linux-media, linux-fbdev, dri-devel, linux-arm-kernel,
linux-geode, linux-omap, kvm, Thomas Zimmermann
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@suse.de>
Reviewed-by: Sam Ravnborg <sam@ravnborg.org>
Acked-by: Helge Deller <deller@gmx.de>
---
drivers/video/fbdev/Kconfig | 4 +---
drivers/video/fbdev/fm2fb.c | 4 +---
2 files changed, 2 insertions(+), 6 deletions(-)
diff --git a/drivers/video/fbdev/Kconfig b/drivers/video/fbdev/Kconfig
index be7c99154d32..fe62de330326 100644
--- a/drivers/video/fbdev/Kconfig
+++ b/drivers/video/fbdev/Kconfig
@@ -269,9 +269,7 @@ config FB_AMIGA_AGA
config FB_FM2
bool "Amiga FrameMaster II/Rainbow II support"
depends on (FB = y) && ZORRO
- select FB_CFB_FILLRECT
- select FB_CFB_COPYAREA
- select FB_CFB_IMAGEBLIT
+ select FB_IOMEM_HELPERS
help
This is the frame buffer device driver for the Amiga FrameMaster
card from BSC (exhibited 1992 but not shipped as a CBM product).
diff --git a/drivers/video/fbdev/fm2fb.c b/drivers/video/fbdev/fm2fb.c
index 4dcb9dd79bf8..25d2e716edf2 100644
--- a/drivers/video/fbdev/fm2fb.c
+++ b/drivers/video/fbdev/fm2fb.c
@@ -167,11 +167,9 @@ static int fm2fb_blank(int blank, struct fb_info *info);
static const struct fb_ops fm2fb_ops = {
.owner = THIS_MODULE,
+ FB_DEFAULT_IOMEM_OPS,
.fb_setcolreg = fm2fb_setcolreg,
.fb_blank = fm2fb_blank,
- .fb_fillrect = cfb_fillrect,
- .fb_copyarea = cfb_copyarea,
- .fb_imageblit = cfb_imageblit,
};
/*
--
2.41.0
^ permalink raw reply related [flat|nested] 51+ messages in thread
* [PATCH v2 11/47] fbdev/fsl-diu-fb: Use fbdev I/O helpers
2023-08-01 10:13 [PATCH v2 00/47] fbdev: Use I/O helpers Thomas Zimmermann
` (9 preceding siblings ...)
2023-08-01 10:13 ` [PATCH v2 10/47] fbdev/fm2fb: " Thomas Zimmermann
@ 2023-08-01 10:13 ` Thomas Zimmermann
2023-08-01 10:13 ` [PATCH v2 12/47] fbdev/g364fb: " Thomas Zimmermann
` (35 subsequent siblings)
46 siblings, 0 replies; 51+ messages in thread
From: Thomas Zimmermann @ 2023-08-01 10:13 UTC (permalink / raw)
To: deller, javierm, sam
Cc: linux-media, linux-fbdev, dri-devel, linux-arm-kernel,
linux-geode, linux-omap, kvm, Thomas Zimmermann, Timur Tabi
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@suse.de>
Reviewed-by: Sam Ravnborg <sam@ravnborg.org>
Acked-by: Helge Deller <deller@gmx.de>
Cc: Timur Tabi <timur@kernel.org>
---
drivers/video/fbdev/Kconfig | 4 +---
drivers/video/fbdev/fsl-diu-fb.c | 4 +---
2 files changed, 2 insertions(+), 6 deletions(-)
diff --git a/drivers/video/fbdev/Kconfig b/drivers/video/fbdev/Kconfig
index fe62de330326..d225bd2d47a9 100644
--- a/drivers/video/fbdev/Kconfig
+++ b/drivers/video/fbdev/Kconfig
@@ -1661,10 +1661,8 @@ config PXA3XX_GCU
config FB_FSL_DIU
tristate "Freescale DIU framebuffer support"
depends on FB && FSL_SOC
+ select FB_IOMEM_HELPERS
select FB_MODE_HELPERS
- select FB_CFB_FILLRECT
- select FB_CFB_COPYAREA
- select FB_CFB_IMAGEBLIT
select PPC_LIB_RHEAP
help
Framebuffer driver for the Freescale SoC DIU
diff --git a/drivers/video/fbdev/fsl-diu-fb.c b/drivers/video/fbdev/fsl-diu-fb.c
index c62b48f27ba9..7fbd9f069ac2 100644
--- a/drivers/video/fbdev/fsl-diu-fb.c
+++ b/drivers/video/fbdev/fsl-diu-fb.c
@@ -1451,13 +1451,11 @@ static int fsl_diu_release(struct fb_info *info, int user)
static const struct fb_ops fsl_diu_ops = {
.owner = THIS_MODULE,
+ FB_DEFAULT_IOMEM_OPS,
.fb_check_var = fsl_diu_check_var,
.fb_set_par = fsl_diu_set_par,
.fb_setcolreg = fsl_diu_setcolreg,
.fb_pan_display = fsl_diu_pan_display,
- .fb_fillrect = cfb_fillrect,
- .fb_copyarea = cfb_copyarea,
- .fb_imageblit = cfb_imageblit,
.fb_ioctl = fsl_diu_ioctl,
.fb_open = fsl_diu_open,
.fb_release = fsl_diu_release,
--
2.41.0
^ permalink raw reply related [flat|nested] 51+ messages in thread
* [PATCH v2 12/47] fbdev/g364fb: Use fbdev I/O helpers
2023-08-01 10:13 [PATCH v2 00/47] fbdev: Use I/O helpers Thomas Zimmermann
` (10 preceding siblings ...)
2023-08-01 10:13 ` [PATCH v2 11/47] fbdev/fsl-diu-fb: " Thomas Zimmermann
@ 2023-08-01 10:13 ` Thomas Zimmermann
2023-08-01 10:13 ` [PATCH v2 13/47] fbdev/geode/gx1fb: " Thomas Zimmermann
` (34 subsequent siblings)
46 siblings, 0 replies; 51+ messages in thread
From: Thomas Zimmermann @ 2023-08-01 10:13 UTC (permalink / raw)
To: deller, javierm, sam
Cc: linux-media, linux-fbdev, dri-devel, linux-arm-kernel,
linux-geode, linux-omap, kvm, Thomas Zimmermann
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@suse.de>
Reviewed-by: Sam Ravnborg <sam@ravnborg.org>
Acked-by: Helge Deller <deller@gmx.de>
---
drivers/video/fbdev/Kconfig | 4 +---
drivers/video/fbdev/g364fb.c | 4 +---
2 files changed, 2 insertions(+), 6 deletions(-)
diff --git a/drivers/video/fbdev/Kconfig b/drivers/video/fbdev/Kconfig
index d225bd2d47a9..39c8b28cf126 100644
--- a/drivers/video/fbdev/Kconfig
+++ b/drivers/video/fbdev/Kconfig
@@ -1577,9 +1577,7 @@ config FB_MAXINE
config FB_G364
bool "G364 frame buffer support"
depends on (FB = y) && (MIPS_MAGNUM_4000 || OLIVETTI_M700)
- select FB_CFB_FILLRECT
- select FB_CFB_COPYAREA
- select FB_CFB_IMAGEBLIT
+ select FB_IOMEM_HELPERS
help
The G364 driver is the framebuffer used in MIPS Magnum 4000 and
Olivetti M700-10 systems.
diff --git a/drivers/video/fbdev/g364fb.c b/drivers/video/fbdev/g364fb.c
index 0825cbde116e..7a1013b22fa7 100644
--- a/drivers/video/fbdev/g364fb.c
+++ b/drivers/video/fbdev/g364fb.c
@@ -112,12 +112,10 @@ static int g364fb_blank(int blank, struct fb_info *info);
static const struct fb_ops g364fb_ops = {
.owner = THIS_MODULE,
+ FB_DEFAULT_IOMEM_HELPERS,
.fb_setcolreg = g364fb_setcolreg,
.fb_pan_display = g364fb_pan_display,
.fb_blank = g364fb_blank,
- .fb_fillrect = cfb_fillrect,
- .fb_copyarea = cfb_copyarea,
- .fb_imageblit = cfb_imageblit,
};
/*
--
2.41.0
^ permalink raw reply related [flat|nested] 51+ messages in thread
* [PATCH v2 13/47] fbdev/geode/gx1fb: Use fbdev I/O helpers
2023-08-01 10:13 [PATCH v2 00/47] fbdev: Use I/O helpers Thomas Zimmermann
` (11 preceding siblings ...)
2023-08-01 10:13 ` [PATCH v2 12/47] fbdev/g364fb: " Thomas Zimmermann
@ 2023-08-01 10:13 ` Thomas Zimmermann
2023-08-01 10:13 ` [PATCH v2 14/47] fbdev/geode/gxfb: " Thomas Zimmermann
` (33 subsequent siblings)
46 siblings, 0 replies; 51+ messages in thread
From: Thomas Zimmermann @ 2023-08-01 10:13 UTC (permalink / raw)
To: deller, javierm, sam
Cc: linux-media, linux-fbdev, dri-devel, linux-arm-kernel,
linux-geode, linux-omap, kvm, Thomas Zimmermann, Andres Salomon
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@suse.de>
Reviewed-by: Sam Ravnborg <sam@ravnborg.org>
Acked-by: Helge Deller <deller@gmx.de>
Cc: Andres Salomon <dilinger@queued.net>
---
drivers/video/fbdev/geode/Kconfig | 4 +---
drivers/video/fbdev/geode/gx1fb_core.c | 5 +----
2 files changed, 2 insertions(+), 7 deletions(-)
diff --git a/drivers/video/fbdev/geode/Kconfig b/drivers/video/fbdev/geode/Kconfig
index b184085a78c2..51b1ec5319c4 100644
--- a/drivers/video/fbdev/geode/Kconfig
+++ b/drivers/video/fbdev/geode/Kconfig
@@ -45,9 +45,7 @@ config FB_GEODE_GX
config FB_GEODE_GX1
tristate "AMD Geode GX1 framebuffer support"
depends on FB && FB_GEODE
- select FB_CFB_FILLRECT
- select FB_CFB_COPYAREA
- select FB_CFB_IMAGEBLIT
+ select FB_IOMEM_HELPERS
select VIDEO_NOMODESET
help
Framebuffer driver for the display controller integrated into the
diff --git a/drivers/video/fbdev/geode/gx1fb_core.c b/drivers/video/fbdev/geode/gx1fb_core.c
index ddec35e3bbeb..a1919c1934ac 100644
--- a/drivers/video/fbdev/geode/gx1fb_core.c
+++ b/drivers/video/fbdev/geode/gx1fb_core.c
@@ -255,14 +255,11 @@ static int parse_panel_option(struct fb_info *info)
static const struct fb_ops gx1fb_ops = {
.owner = THIS_MODULE,
+ FB_DEFAULT_IOMEM_OPS,
.fb_check_var = gx1fb_check_var,
.fb_set_par = gx1fb_set_par,
.fb_setcolreg = gx1fb_setcolreg,
.fb_blank = gx1fb_blank,
- /* No HW acceleration for now. */
- .fb_fillrect = cfb_fillrect,
- .fb_copyarea = cfb_copyarea,
- .fb_imageblit = cfb_imageblit,
};
static struct fb_info *gx1fb_init_fbinfo(struct device *dev)
--
2.41.0
^ permalink raw reply related [flat|nested] 51+ messages in thread
* [PATCH v2 14/47] fbdev/geode/gxfb: Use fbdev I/O helpers
2023-08-01 10:13 [PATCH v2 00/47] fbdev: Use I/O helpers Thomas Zimmermann
` (12 preceding siblings ...)
2023-08-01 10:13 ` [PATCH v2 13/47] fbdev/geode/gx1fb: " Thomas Zimmermann
@ 2023-08-01 10:13 ` Thomas Zimmermann
2023-08-01 10:13 ` [PATCH v2 15/47] fbdev/geode/lxfb: " Thomas Zimmermann
` (32 subsequent siblings)
46 siblings, 0 replies; 51+ messages in thread
From: Thomas Zimmermann @ 2023-08-01 10:13 UTC (permalink / raw)
To: deller, javierm, sam
Cc: linux-media, linux-fbdev, dri-devel, linux-arm-kernel,
linux-geode, linux-omap, kvm, Thomas Zimmermann, Andres Salomon
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@suse.de>
Reviewed-by: Sam Ravnborg <sam@ravnborg.org>
Acked-by: Helge Deller <deller@gmx.de>
Cc: Andres Salomon <dilinger@queued.net>
---
drivers/video/fbdev/geode/Kconfig | 4 +---
drivers/video/fbdev/geode/gxfb_core.c | 5 +----
2 files changed, 2 insertions(+), 7 deletions(-)
diff --git a/drivers/video/fbdev/geode/Kconfig b/drivers/video/fbdev/geode/Kconfig
index 51b1ec5319c4..957ef0756ced 100644
--- a/drivers/video/fbdev/geode/Kconfig
+++ b/drivers/video/fbdev/geode/Kconfig
@@ -29,9 +29,7 @@ config FB_GEODE_LX
config FB_GEODE_GX
tristate "AMD Geode GX framebuffer support"
depends on FB && FB_GEODE
- select FB_CFB_FILLRECT
- select FB_CFB_COPYAREA
- select FB_CFB_IMAGEBLIT
+ select FB_IOMEM_HELPERS
select VIDEO_NOMODESET
help
Framebuffer driver for the display controller integrated into the
diff --git a/drivers/video/fbdev/geode/gxfb_core.c b/drivers/video/fbdev/geode/gxfb_core.c
index 4fb13790c528..af996634c1a9 100644
--- a/drivers/video/fbdev/geode/gxfb_core.c
+++ b/drivers/video/fbdev/geode/gxfb_core.c
@@ -268,14 +268,11 @@ static int gxfb_map_video_memory(struct fb_info *info, struct pci_dev *dev)
static const struct fb_ops gxfb_ops = {
.owner = THIS_MODULE,
+ FB_DEFAULT_IOMEM_OPS,
.fb_check_var = gxfb_check_var,
.fb_set_par = gxfb_set_par,
.fb_setcolreg = gxfb_setcolreg,
.fb_blank = gxfb_blank,
- /* No HW acceleration for now. */
- .fb_fillrect = cfb_fillrect,
- .fb_copyarea = cfb_copyarea,
- .fb_imageblit = cfb_imageblit,
};
static struct fb_info *gxfb_init_fbinfo(struct device *dev)
--
2.41.0
^ permalink raw reply related [flat|nested] 51+ messages in thread
* [PATCH v2 15/47] fbdev/geode/lxfb: Use fbdev I/O helpers
2023-08-01 10:13 [PATCH v2 00/47] fbdev: Use I/O helpers Thomas Zimmermann
` (13 preceding siblings ...)
2023-08-01 10:13 ` [PATCH v2 14/47] fbdev/geode/gxfb: " Thomas Zimmermann
@ 2023-08-01 10:13 ` Thomas Zimmermann
2023-08-01 10:13 ` [PATCH v2 16/47] fbdev/goldfishfb: " Thomas Zimmermann
` (31 subsequent siblings)
46 siblings, 0 replies; 51+ messages in thread
From: Thomas Zimmermann @ 2023-08-01 10:13 UTC (permalink / raw)
To: deller, javierm, sam
Cc: linux-media, linux-fbdev, dri-devel, linux-arm-kernel,
linux-geode, linux-omap, kvm, Thomas Zimmermann, Andres Salomon
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@suse.de>
Reviewed-by: Sam Ravnborg <sam@ravnborg.org>
Acked-by: Helge Deller <deller@gmx.de>
Cc: Andres Salomon <dilinger@queued.net>
---
drivers/video/fbdev/geode/Kconfig | 4 +---
drivers/video/fbdev/geode/lxfb_core.c | 5 +----
2 files changed, 2 insertions(+), 7 deletions(-)
diff --git a/drivers/video/fbdev/geode/Kconfig b/drivers/video/fbdev/geode/Kconfig
index 957ef0756ced..9a49916e0492 100644
--- a/drivers/video/fbdev/geode/Kconfig
+++ b/drivers/video/fbdev/geode/Kconfig
@@ -13,9 +13,7 @@ config FB_GEODE
config FB_GEODE_LX
tristate "AMD Geode LX framebuffer support"
depends on FB && FB_GEODE
- select FB_CFB_FILLRECT
- select FB_CFB_COPYAREA
- select FB_CFB_IMAGEBLIT
+ select FB_IOMEM_HELPERS
select VIDEO_NOMODESET
help
Framebuffer driver for the display controller integrated into the
diff --git a/drivers/video/fbdev/geode/lxfb_core.c b/drivers/video/fbdev/geode/lxfb_core.c
index b70b286f43e4..cad99f5b7fe8 100644
--- a/drivers/video/fbdev/geode/lxfb_core.c
+++ b/drivers/video/fbdev/geode/lxfb_core.c
@@ -392,14 +392,11 @@ static int lxfb_map_video_memory(struct fb_info *info, struct pci_dev *dev)
static const struct fb_ops lxfb_ops = {
.owner = THIS_MODULE,
+ FB_DEFAULT_IOMEM_OPS,
.fb_check_var = lxfb_check_var,
.fb_set_par = lxfb_set_par,
.fb_setcolreg = lxfb_setcolreg,
.fb_blank = lxfb_blank,
- /* No HW acceleration for now. */
- .fb_fillrect = cfb_fillrect,
- .fb_copyarea = cfb_copyarea,
- .fb_imageblit = cfb_imageblit,
};
static struct fb_info *lxfb_init_fbinfo(struct device *dev)
--
2.41.0
^ permalink raw reply related [flat|nested] 51+ messages in thread
* [PATCH v2 16/47] fbdev/goldfishfb: Use fbdev I/O helpers
2023-08-01 10:13 [PATCH v2 00/47] fbdev: Use I/O helpers Thomas Zimmermann
` (14 preceding siblings ...)
2023-08-01 10:13 ` [PATCH v2 15/47] fbdev/geode/lxfb: " Thomas Zimmermann
@ 2023-08-01 10:13 ` Thomas Zimmermann
2023-08-01 10:13 ` [PATCH v2 17/47] fbdev/grvga: " Thomas Zimmermann
` (30 subsequent siblings)
46 siblings, 0 replies; 51+ messages in thread
From: Thomas Zimmermann @ 2023-08-01 10:13 UTC (permalink / raw)
To: deller, javierm, sam
Cc: linux-media, linux-fbdev, dri-devel, linux-arm-kernel,
linux-geode, linux-omap, kvm, Thomas Zimmermann
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@suse.de>
Reviewed-by: Sam Ravnborg <sam@ravnborg.org>
Acked-by: Helge Deller <deller@gmx.de>
---
drivers/video/fbdev/Kconfig | 4 +---
drivers/video/fbdev/goldfishfb.c | 4 +---
2 files changed, 2 insertions(+), 6 deletions(-)
diff --git a/drivers/video/fbdev/Kconfig b/drivers/video/fbdev/Kconfig
index 39c8b28cf126..7c1289a0c5fc 100644
--- a/drivers/video/fbdev/Kconfig
+++ b/drivers/video/fbdev/Kconfig
@@ -1800,9 +1800,7 @@ config FB_GOLDFISH
tristate "Goldfish Framebuffer"
depends on FB
depends on GOLDFISH || COMPILE_TEST
- select FB_CFB_FILLRECT
- select FB_CFB_COPYAREA
- select FB_CFB_IMAGEBLIT
+ select FB_IOMEM_HELPERS
help
Framebuffer driver for Goldfish Virtual Platform
diff --git a/drivers/video/fbdev/goldfishfb.c b/drivers/video/fbdev/goldfishfb.c
index ef2528c3faa9..60c8a20d6fcd 100644
--- a/drivers/video/fbdev/goldfishfb.c
+++ b/drivers/video/fbdev/goldfishfb.c
@@ -162,14 +162,12 @@ static int goldfish_fb_blank(int blank, struct fb_info *info)
static const struct fb_ops goldfish_fb_ops = {
.owner = THIS_MODULE,
+ FB_DEFAULT_IOMEM_OPS,
.fb_check_var = goldfish_fb_check_var,
.fb_set_par = goldfish_fb_set_par,
.fb_setcolreg = goldfish_fb_setcolreg,
.fb_pan_display = goldfish_fb_pan_display,
.fb_blank = goldfish_fb_blank,
- .fb_fillrect = cfb_fillrect,
- .fb_copyarea = cfb_copyarea,
- .fb_imageblit = cfb_imageblit,
};
--
2.41.0
^ permalink raw reply related [flat|nested] 51+ messages in thread
* [PATCH v2 17/47] fbdev/grvga: Use fbdev I/O helpers
2023-08-01 10:13 [PATCH v2 00/47] fbdev: Use I/O helpers Thomas Zimmermann
` (15 preceding siblings ...)
2023-08-01 10:13 ` [PATCH v2 16/47] fbdev/goldfishfb: " Thomas Zimmermann
@ 2023-08-01 10:13 ` Thomas Zimmermann
2023-08-01 10:13 ` [PATCH v2 18/47] fbdev/gxt4500: " Thomas Zimmermann
` (29 subsequent siblings)
46 siblings, 0 replies; 51+ messages in thread
From: Thomas Zimmermann @ 2023-08-01 10:13 UTC (permalink / raw)
To: deller, javierm, sam
Cc: linux-media, linux-fbdev, dri-devel, linux-arm-kernel,
linux-geode, linux-omap, kvm, Thomas Zimmermann
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@suse.de>
Reviewed-by: Sam Ravnborg <sam@ravnborg.org>
Acked-by: Helge Deller <deller@gmx.de>
---
drivers/video/fbdev/Kconfig | 4 +---
drivers/video/fbdev/grvga.c | 4 +---
2 files changed, 2 insertions(+), 6 deletions(-)
diff --git a/drivers/video/fbdev/Kconfig b/drivers/video/fbdev/Kconfig
index 7c1289a0c5fc..8b20e03f188b 100644
--- a/drivers/video/fbdev/Kconfig
+++ b/drivers/video/fbdev/Kconfig
@@ -64,9 +64,7 @@ config FB_MACMODES
config FB_GRVGA
tristate "Aeroflex Gaisler framebuffer support"
depends on FB && SPARC
- select FB_CFB_FILLRECT
- select FB_CFB_COPYAREA
- select FB_CFB_IMAGEBLIT
+ select FB_IOMEM_HELPERS
help
This enables support for the SVGACTRL framebuffer in the GRLIB IP library from Aeroflex Gaisler.
diff --git a/drivers/video/fbdev/grvga.c b/drivers/video/fbdev/grvga.c
index 5fa07e40950a..6d917e06e5f3 100644
--- a/drivers/video/fbdev/grvga.c
+++ b/drivers/video/fbdev/grvga.c
@@ -252,13 +252,11 @@ static int grvga_pan_display(struct fb_var_screeninfo *var,
static const struct fb_ops grvga_ops = {
.owner = THIS_MODULE,
+ FB_DEFAULT_IOMEM_OPS,
.fb_check_var = grvga_check_var,
.fb_set_par = grvga_set_par,
.fb_setcolreg = grvga_setcolreg,
.fb_pan_display = grvga_pan_display,
- .fb_fillrect = cfb_fillrect,
- .fb_copyarea = cfb_copyarea,
- .fb_imageblit = cfb_imageblit
};
static int grvga_parse_custom(char *options,
--
2.41.0
^ permalink raw reply related [flat|nested] 51+ messages in thread
* [PATCH v2 18/47] fbdev/gxt4500: Use fbdev I/O helpers
2023-08-01 10:13 [PATCH v2 00/47] fbdev: Use I/O helpers Thomas Zimmermann
` (16 preceding siblings ...)
2023-08-01 10:13 ` [PATCH v2 17/47] fbdev/grvga: " Thomas Zimmermann
@ 2023-08-01 10:13 ` Thomas Zimmermann
2023-08-01 10:13 ` [PATCH v2 19/47] fbdev/i740fb: " Thomas Zimmermann
` (28 subsequent siblings)
46 siblings, 0 replies; 51+ messages in thread
From: Thomas Zimmermann @ 2023-08-01 10:13 UTC (permalink / raw)
To: deller, javierm, sam
Cc: linux-media, linux-fbdev, dri-devel, linux-arm-kernel,
linux-geode, linux-omap, kvm, Thomas Zimmermann
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@suse.de>
Reviewed-by: Sam Ravnborg <sam@ravnborg.org>
Acked-by: Helge Deller <deller@gmx.de>
---
drivers/video/fbdev/Kconfig | 4 +---
drivers/video/fbdev/gxt4500.c | 4 +---
2 files changed, 2 insertions(+), 6 deletions(-)
diff --git a/drivers/video/fbdev/Kconfig b/drivers/video/fbdev/Kconfig
index 8b20e03f188b..ee29f323c2b4 100644
--- a/drivers/video/fbdev/Kconfig
+++ b/drivers/video/fbdev/Kconfig
@@ -1752,9 +1752,7 @@ config FB_UDL
config FB_IBM_GXT4500
tristate "Framebuffer support for IBM GXT4000P/4500P/6000P/6500P adaptors"
depends on FB
- select FB_CFB_FILLRECT
- select FB_CFB_COPYAREA
- select FB_CFB_IMAGEBLIT
+ select FB_IOMEM_HELPERS
select VIDEO_NOMODESET
help
Say Y here to enable support for the IBM GXT4000P/6000P and
diff --git a/drivers/video/fbdev/gxt4500.c b/drivers/video/fbdev/gxt4500.c
index 8d0976578ddf..15a82c6b609e 100644
--- a/drivers/video/fbdev/gxt4500.c
+++ b/drivers/video/fbdev/gxt4500.c
@@ -602,14 +602,12 @@ static const struct fb_fix_screeninfo gxt4500_fix = {
static const struct fb_ops gxt4500_ops = {
.owner = THIS_MODULE,
+ FB_DEFAULT_IOMEM_OPS,
.fb_check_var = gxt4500_check_var,
.fb_set_par = gxt4500_set_par,
.fb_setcolreg = gxt4500_setcolreg,
.fb_pan_display = gxt4500_pan_display,
.fb_blank = gxt4500_blank,
- .fb_fillrect = cfb_fillrect,
- .fb_copyarea = cfb_copyarea,
- .fb_imageblit = cfb_imageblit,
};
/* PCI functions */
--
2.41.0
^ permalink raw reply related [flat|nested] 51+ messages in thread
* [PATCH v2 19/47] fbdev/i740fb: Use fbdev I/O helpers
2023-08-01 10:13 [PATCH v2 00/47] fbdev: Use I/O helpers Thomas Zimmermann
` (17 preceding siblings ...)
2023-08-01 10:13 ` [PATCH v2 18/47] fbdev/gxt4500: " Thomas Zimmermann
@ 2023-08-01 10:13 ` Thomas Zimmermann
2023-08-01 10:13 ` [PATCH v2 20/47] fbdev/imxfb: " Thomas Zimmermann
` (27 subsequent siblings)
46 siblings, 0 replies; 51+ messages in thread
From: Thomas Zimmermann @ 2023-08-01 10:13 UTC (permalink / raw)
To: deller, javierm, sam
Cc: linux-media, linux-fbdev, dri-devel, linux-arm-kernel,
linux-geode, linux-omap, kvm, Thomas Zimmermann
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@suse.de>
Reviewed-by: Sam Ravnborg <sam@ravnborg.org>
Acked-by: Helge Deller <deller@gmx.de>
---
drivers/video/fbdev/Kconfig | 4 +---
drivers/video/fbdev/i740fb.c | 4 +---
2 files changed, 2 insertions(+), 6 deletions(-)
diff --git a/drivers/video/fbdev/Kconfig b/drivers/video/fbdev/Kconfig
index ee29f323c2b4..1594c34180e3 100644
--- a/drivers/video/fbdev/Kconfig
+++ b/drivers/video/fbdev/Kconfig
@@ -809,10 +809,8 @@ config FB_RIVA_BACKLIGHT
config FB_I740
tristate "Intel740 support"
depends on FB && PCI
+ select FB_IOMEM_HELPERS
select FB_MODE_HELPERS
- select FB_CFB_FILLRECT
- select FB_CFB_COPYAREA
- select FB_CFB_IMAGEBLIT
select VGASTATE
select VIDEO_NOMODESET
select FB_DDC
diff --git a/drivers/video/fbdev/i740fb.c b/drivers/video/fbdev/i740fb.c
index 3f5becfe9fd5..1897e65ab703 100644
--- a/drivers/video/fbdev/i740fb.c
+++ b/drivers/video/fbdev/i740fb.c
@@ -994,14 +994,12 @@ static const struct fb_ops i740fb_ops = {
.owner = THIS_MODULE,
.fb_open = i740fb_open,
.fb_release = i740fb_release,
+ FB_DEFAULT_IOMEM_OPS,
.fb_check_var = i740fb_check_var,
.fb_set_par = i740fb_set_par,
.fb_setcolreg = i740fb_setcolreg,
.fb_blank = i740fb_blank,
.fb_pan_display = i740fb_pan_display,
- .fb_fillrect = cfb_fillrect,
- .fb_copyarea = cfb_copyarea,
- .fb_imageblit = cfb_imageblit,
};
/* ------------------------------------------------------------------------- */
--
2.41.0
^ permalink raw reply related [flat|nested] 51+ messages in thread
* [PATCH v2 20/47] fbdev/imxfb: Use fbdev I/O helpers
2023-08-01 10:13 [PATCH v2 00/47] fbdev: Use I/O helpers Thomas Zimmermann
` (18 preceding siblings ...)
2023-08-01 10:13 ` [PATCH v2 19/47] fbdev/i740fb: " Thomas Zimmermann
@ 2023-08-01 10:13 ` Thomas Zimmermann
2023-08-01 10:13 ` [PATCH v2 21/47] fbdev/kyro: " Thomas Zimmermann
` (26 subsequent siblings)
46 siblings, 0 replies; 51+ messages in thread
From: Thomas Zimmermann @ 2023-08-01 10:13 UTC (permalink / raw)
To: deller, javierm, sam
Cc: linux-media, linux-fbdev, dri-devel, linux-arm-kernel,
linux-geode, linux-omap, kvm, Thomas Zimmermann, Sascha Hauer,
Pengutronix Kernel Team, Shawn Guo, Fabio Estevam, NXP Linux Team
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@suse.de>
Reviewed-by: Sam Ravnborg <sam@ravnborg.org>
Acked-by: Helge Deller <deller@gmx.de>
Cc: Sascha Hauer <s.hauer@pengutronix.de>
Cc: Pengutronix Kernel Team <kernel@pengutronix.de>
Cc: Shawn Guo <shawnguo@kernel.org>
Cc: Fabio Estevam <festevam@gmail.com>
Cc: NXP Linux Team <linux-imx@nxp.com>
---
drivers/video/fbdev/Kconfig | 4 +---
drivers/video/fbdev/imxfb.c | 4 +---
2 files changed, 2 insertions(+), 6 deletions(-)
diff --git a/drivers/video/fbdev/Kconfig b/drivers/video/fbdev/Kconfig
index 1594c34180e3..6c032a1e7ab6 100644
--- a/drivers/video/fbdev/Kconfig
+++ b/drivers/video/fbdev/Kconfig
@@ -175,9 +175,7 @@ config FB_IMX
depends on FB && HAVE_CLK && HAS_IOMEM
depends on ARCH_MXC || COMPILE_TEST
select LCD_CLASS_DEVICE
- select FB_CFB_FILLRECT
- select FB_CFB_COPYAREA
- select FB_CFB_IMAGEBLIT
+ select FB_IOMEM_HELPERS
select FB_MODE_HELPERS
select VIDEOMODE_HELPERS
diff --git a/drivers/video/fbdev/imxfb.c b/drivers/video/fbdev/imxfb.c
index 78bae5f1e8b9..84201c9608d3 100644
--- a/drivers/video/fbdev/imxfb.c
+++ b/drivers/video/fbdev/imxfb.c
@@ -580,12 +580,10 @@ static int imxfb_blank(int blank, struct fb_info *info)
static const struct fb_ops imxfb_ops = {
.owner = THIS_MODULE,
+ FB_DEFAULT_IOMEM_OPS,
.fb_check_var = imxfb_check_var,
.fb_set_par = imxfb_set_par,
.fb_setcolreg = imxfb_setcolreg,
- .fb_fillrect = cfb_fillrect,
- .fb_copyarea = cfb_copyarea,
- .fb_imageblit = cfb_imageblit,
.fb_blank = imxfb_blank,
};
--
2.41.0
^ permalink raw reply related [flat|nested] 51+ messages in thread
* [PATCH v2 21/47] fbdev/kyro: Use fbdev I/O helpers
2023-08-01 10:13 [PATCH v2 00/47] fbdev: Use I/O helpers Thomas Zimmermann
` (19 preceding siblings ...)
2023-08-01 10:13 ` [PATCH v2 20/47] fbdev/imxfb: " Thomas Zimmermann
@ 2023-08-01 10:13 ` Thomas Zimmermann
2023-08-01 10:13 ` [PATCH v2 22/47] fbdev/macfb: " Thomas Zimmermann
` (25 subsequent siblings)
46 siblings, 0 replies; 51+ messages in thread
From: Thomas Zimmermann @ 2023-08-01 10:13 UTC (permalink / raw)
To: deller, javierm, sam
Cc: linux-media, linux-fbdev, dri-devel, linux-arm-kernel,
linux-geode, linux-omap, kvm, Thomas Zimmermann
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@suse.de>
Reviewed-by: Sam Ravnborg <sam@ravnborg.org>
Acked-by: Helge Deller <deller@gmx.de>
---
drivers/video/fbdev/Kconfig | 4 +---
drivers/video/fbdev/kyro/fbdev.c | 4 +---
2 files changed, 2 insertions(+), 6 deletions(-)
diff --git a/drivers/video/fbdev/Kconfig b/drivers/video/fbdev/Kconfig
index 6c032a1e7ab6..231450ef449f 100644
--- a/drivers/video/fbdev/Kconfig
+++ b/drivers/video/fbdev/Kconfig
@@ -1306,9 +1306,7 @@ config FB_NEOMAGIC
config FB_KYRO
tristate "IMG Kyro support"
depends on FB && PCI
- select FB_CFB_FILLRECT
- select FB_CFB_COPYAREA
- select FB_CFB_IMAGEBLIT
+ select FB_IOMEM_HELPERS
select VIDEO_NOMODESET
help
Say Y here if you have a STG4000 / Kyro / PowerVR 3 based
diff --git a/drivers/video/fbdev/kyro/fbdev.c b/drivers/video/fbdev/kyro/fbdev.c
index 1109326ca3c4..af6c0581d3e2 100644
--- a/drivers/video/fbdev/kyro/fbdev.c
+++ b/drivers/video/fbdev/kyro/fbdev.c
@@ -661,13 +661,11 @@ static struct pci_driver kyrofb_pci_driver = {
static const struct fb_ops kyrofb_ops = {
.owner = THIS_MODULE,
+ FB_DEFAULT_IOMEM_OPS,
.fb_check_var = kyrofb_check_var,
.fb_set_par = kyrofb_set_par,
.fb_setcolreg = kyrofb_setcolreg,
.fb_ioctl = kyrofb_ioctl,
- .fb_fillrect = cfb_fillrect,
- .fb_copyarea = cfb_copyarea,
- .fb_imageblit = cfb_imageblit,
};
static int kyrofb_probe(struct pci_dev *pdev, const struct pci_device_id *ent)
--
2.41.0
^ permalink raw reply related [flat|nested] 51+ messages in thread
* [PATCH v2 22/47] fbdev/macfb: Use fbdev I/O helpers
2023-08-01 10:13 [PATCH v2 00/47] fbdev: Use I/O helpers Thomas Zimmermann
` (20 preceding siblings ...)
2023-08-01 10:13 ` [PATCH v2 21/47] fbdev/kyro: " Thomas Zimmermann
@ 2023-08-01 10:13 ` Thomas Zimmermann
2023-08-01 10:13 ` [PATCH v2 23/47] fbdev/maxinefb: " Thomas Zimmermann
` (24 subsequent siblings)
46 siblings, 0 replies; 51+ messages in thread
From: Thomas Zimmermann @ 2023-08-01 10:13 UTC (permalink / raw)
To: deller, javierm, sam
Cc: linux-media, linux-fbdev, dri-devel, linux-arm-kernel,
linux-geode, linux-omap, kvm, Thomas Zimmermann
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@suse.de>
Reviewed-by: Sam Ravnborg <sam@ravnborg.org>
Acked-by: Helge Deller <deller@gmx.de>
---
drivers/video/fbdev/Kconfig | 4 +---
drivers/video/fbdev/macfb.c | 4 +---
2 files changed, 2 insertions(+), 6 deletions(-)
diff --git a/drivers/video/fbdev/Kconfig b/drivers/video/fbdev/Kconfig
index 231450ef449f..c7ee242985ed 100644
--- a/drivers/video/fbdev/Kconfig
+++ b/drivers/video/fbdev/Kconfig
@@ -407,9 +407,7 @@ config FB_STI
config FB_MAC
bool "Generic Macintosh display support"
depends on (FB = y) && MAC
- select FB_CFB_FILLRECT
- select FB_CFB_COPYAREA
- select FB_CFB_IMAGEBLIT
+ select FB_IOMEM_HELPERS
select FB_MACMODES
config FB_HP300
diff --git a/drivers/video/fbdev/macfb.c b/drivers/video/fbdev/macfb.c
index 5ca208d992cc..887fffdccd24 100644
--- a/drivers/video/fbdev/macfb.c
+++ b/drivers/video/fbdev/macfb.c
@@ -498,10 +498,8 @@ static int macfb_setcolreg(unsigned regno, unsigned red, unsigned green,
static const struct fb_ops macfb_ops = {
.owner = THIS_MODULE,
+ FB_DEFAULT_IOMEM_OPS,
.fb_setcolreg = macfb_setcolreg,
- .fb_fillrect = cfb_fillrect,
- .fb_copyarea = cfb_copyarea,
- .fb_imageblit = cfb_imageblit,
};
static void __init macfb_setup(char *options)
--
2.41.0
^ permalink raw reply related [flat|nested] 51+ messages in thread
* [PATCH v2 23/47] fbdev/maxinefb: Use fbdev I/O helpers
2023-08-01 10:13 [PATCH v2 00/47] fbdev: Use I/O helpers Thomas Zimmermann
` (21 preceding siblings ...)
2023-08-01 10:13 ` [PATCH v2 22/47] fbdev/macfb: " Thomas Zimmermann
@ 2023-08-01 10:13 ` Thomas Zimmermann
2023-08-01 10:13 ` [PATCH v2 24/47] fbdev/mb862xxfb: " Thomas Zimmermann
` (23 subsequent siblings)
46 siblings, 0 replies; 51+ messages in thread
From: Thomas Zimmermann @ 2023-08-01 10:13 UTC (permalink / raw)
To: deller, javierm, sam
Cc: linux-media, linux-fbdev, dri-devel, linux-arm-kernel,
linux-geode, linux-omap, kvm, Thomas Zimmermann
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@suse.de>
Reviewed-by: Sam Ravnborg <sam@ravnborg.org>
Acked-by: Helge Deller <deller@gmx.de>
---
drivers/video/fbdev/Kconfig | 4 +---
drivers/video/fbdev/maxinefb.c | 4 +---
2 files changed, 2 insertions(+), 6 deletions(-)
diff --git a/drivers/video/fbdev/Kconfig b/drivers/video/fbdev/Kconfig
index c7ee242985ed..f958290c83e5 100644
--- a/drivers/video/fbdev/Kconfig
+++ b/drivers/video/fbdev/Kconfig
@@ -1556,9 +1556,7 @@ config FB_PMAGB_B
config FB_MAXINE
bool "Maxine (Personal DECstation) onboard framebuffer support"
depends on (FB = y) && MACH_DECSTATION
- select FB_CFB_FILLRECT
- select FB_CFB_COPYAREA
- select FB_CFB_IMAGEBLIT
+ select FB_IOMEM_HELPERS
help
Support for the onboard framebuffer (1024x768x8) in the Personal
DECstation series (Personal DECstation 5000/20, /25, /33, /50,
diff --git a/drivers/video/fbdev/maxinefb.c b/drivers/video/fbdev/maxinefb.c
index 0ac1873b2acb..52528eb4dfb4 100644
--- a/drivers/video/fbdev/maxinefb.c
+++ b/drivers/video/fbdev/maxinefb.c
@@ -107,10 +107,8 @@ static int maxinefb_setcolreg(unsigned regno, unsigned red, unsigned green,
static const struct fb_ops maxinefb_ops = {
.owner = THIS_MODULE,
+ FB_DEFAULT_IOMEM_OPS,
.fb_setcolreg = maxinefb_setcolreg,
- .fb_fillrect = cfb_fillrect,
- .fb_copyarea = cfb_copyarea,
- .fb_imageblit = cfb_imageblit,
};
int __init maxinefb_init(void)
--
2.41.0
^ permalink raw reply related [flat|nested] 51+ messages in thread
* [PATCH v2 24/47] fbdev/mb862xxfb: Use fbdev I/O helpers
2023-08-01 10:13 [PATCH v2 00/47] fbdev: Use I/O helpers Thomas Zimmermann
` (22 preceding siblings ...)
2023-08-01 10:13 ` [PATCH v2 23/47] fbdev/maxinefb: " Thomas Zimmermann
@ 2023-08-01 10:13 ` Thomas Zimmermann
2023-08-01 10:13 ` [PATCH v2 25/47] fbdev/mmpfb: " Thomas Zimmermann
` (22 subsequent siblings)
46 siblings, 0 replies; 51+ messages in thread
From: Thomas Zimmermann @ 2023-08-01 10:13 UTC (permalink / raw)
To: deller, javierm, sam
Cc: linux-media, linux-fbdev, dri-devel, linux-arm-kernel,
linux-geode, linux-omap, kvm, Thomas Zimmermann
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@suse.de>
Reviewed-by: Sam Ravnborg <sam@ravnborg.org>
Acked-by: Helge Deller <deller@gmx.de>
---
drivers/video/fbdev/Kconfig | 4 +---
drivers/video/fbdev/mb862xx/mb862xxfbdrv.c | 4 +---
2 files changed, 2 insertions(+), 6 deletions(-)
diff --git a/drivers/video/fbdev/Kconfig b/drivers/video/fbdev/Kconfig
index f958290c83e5..557911ed4f86 100644
--- a/drivers/video/fbdev/Kconfig
+++ b/drivers/video/fbdev/Kconfig
@@ -1869,9 +1869,7 @@ config FB_MB862XX
tristate "Fujitsu MB862xx GDC support"
depends on FB
depends on PCI || (OF && PPC)
- select FB_CFB_FILLRECT
- select FB_CFB_COPYAREA
- select FB_CFB_IMAGEBLIT
+ select FB_IOMEM_HELPERS
select VIDEO_NOMODESET
help
Frame buffer driver for Fujitsu Carmine/Coral-P(A)/Lime controllers.
diff --git a/drivers/video/fbdev/mb862xx/mb862xxfbdrv.c b/drivers/video/fbdev/mb862xx/mb862xxfbdrv.c
index 42e909776be2..7c402e9fd7a9 100644
--- a/drivers/video/fbdev/mb862xx/mb862xxfbdrv.c
+++ b/drivers/video/fbdev/mb862xx/mb862xxfbdrv.c
@@ -407,14 +407,12 @@ static int mb862xxfb_ioctl(struct fb_info *fbi, unsigned int cmd,
/* framebuffer ops */
static struct fb_ops mb862xxfb_ops = {
.owner = THIS_MODULE,
+ FB_DEFAULT_IOMEM_OPS,
.fb_check_var = mb862xxfb_check_var,
.fb_set_par = mb862xxfb_set_par,
.fb_setcolreg = mb862xxfb_setcolreg,
.fb_blank = mb862xxfb_blank,
.fb_pan_display = mb862xxfb_pan,
- .fb_fillrect = cfb_fillrect,
- .fb_copyarea = cfb_copyarea,
- .fb_imageblit = cfb_imageblit,
.fb_ioctl = mb862xxfb_ioctl,
};
--
2.41.0
^ permalink raw reply related [flat|nested] 51+ messages in thread
* [PATCH v2 25/47] fbdev/mmpfb: Use fbdev I/O helpers
2023-08-01 10:13 [PATCH v2 00/47] fbdev: Use I/O helpers Thomas Zimmermann
` (23 preceding siblings ...)
2023-08-01 10:13 ` [PATCH v2 24/47] fbdev/mb862xxfb: " Thomas Zimmermann
@ 2023-08-01 10:13 ` Thomas Zimmermann
2023-08-01 10:13 ` [PATCH v2 26/47] fbdev/mx3fb: " Thomas Zimmermann
` (21 subsequent siblings)
46 siblings, 0 replies; 51+ messages in thread
From: Thomas Zimmermann @ 2023-08-01 10:13 UTC (permalink / raw)
To: deller, javierm, sam
Cc: linux-media, linux-fbdev, dri-devel, linux-arm-kernel,
linux-geode, linux-omap, kvm, Thomas Zimmermann
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@suse.de>
Reviewed-by: Sam Ravnborg <sam@ravnborg.org>
Acked-by: Helge Deller <deller@gmx.de>
---
drivers/video/fbdev/mmp/fb/Kconfig | 4 +---
drivers/video/fbdev/mmp/fb/mmpfb.c | 4 +---
2 files changed, 2 insertions(+), 6 deletions(-)
diff --git a/drivers/video/fbdev/mmp/fb/Kconfig b/drivers/video/fbdev/mmp/fb/Kconfig
index 0ec2e3fb9e17..b13882b34e79 100644
--- a/drivers/video/fbdev/mmp/fb/Kconfig
+++ b/drivers/video/fbdev/mmp/fb/Kconfig
@@ -2,9 +2,7 @@
config MMP_FB
tristate "fb driver for Marvell MMP Display Subsystem"
depends on FB
- select FB_CFB_FILLRECT
- select FB_CFB_COPYAREA
- select FB_CFB_IMAGEBLIT
+ select FB_IOMEM_HELPERS
default y
help
fb driver for Marvell MMP Display Subsystem
diff --git a/drivers/video/fbdev/mmp/fb/mmpfb.c b/drivers/video/fbdev/mmp/fb/mmpfb.c
index ac9db01f29f2..42a87474bcea 100644
--- a/drivers/video/fbdev/mmp/fb/mmpfb.c
+++ b/drivers/video/fbdev/mmp/fb/mmpfb.c
@@ -454,14 +454,12 @@ static int mmpfb_blank(int blank, struct fb_info *info)
static const struct fb_ops mmpfb_ops = {
.owner = THIS_MODULE,
+ FB_DEFAULT_IOMEM_OPS,
.fb_blank = mmpfb_blank,
.fb_check_var = mmpfb_check_var,
.fb_set_par = mmpfb_set_par,
.fb_setcolreg = mmpfb_setcolreg,
.fb_pan_display = mmpfb_pan_display,
- .fb_fillrect = cfb_fillrect,
- .fb_copyarea = cfb_copyarea,
- .fb_imageblit = cfb_imageblit,
};
static int modes_setup(struct mmpfb_info *fbi)
--
2.41.0
^ permalink raw reply related [flat|nested] 51+ messages in thread
* [PATCH v2 26/47] fbdev/mx3fb: Use fbdev I/O helpers
2023-08-01 10:13 [PATCH v2 00/47] fbdev: Use I/O helpers Thomas Zimmermann
` (24 preceding siblings ...)
2023-08-01 10:13 ` [PATCH v2 25/47] fbdev/mmpfb: " Thomas Zimmermann
@ 2023-08-01 10:13 ` Thomas Zimmermann
2023-08-01 10:13 ` [PATCH v2 27/47] fbdev/ocfb: " Thomas Zimmermann
` (20 subsequent siblings)
46 siblings, 0 replies; 51+ messages in thread
From: Thomas Zimmermann @ 2023-08-01 10:13 UTC (permalink / raw)
To: deller, javierm, sam
Cc: linux-media, linux-fbdev, dri-devel, linux-arm-kernel,
linux-geode, linux-omap, kvm, Thomas Zimmermann
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@suse.de>
Reviewed-by: Sam Ravnborg <sam@ravnborg.org>
Acked-by: Helge Deller <deller@gmx.de>
---
drivers/video/fbdev/Kconfig | 4 +---
drivers/video/fbdev/mx3fb.c | 4 +---
2 files changed, 2 insertions(+), 6 deletions(-)
diff --git a/drivers/video/fbdev/Kconfig b/drivers/video/fbdev/Kconfig
index 557911ed4f86..74ec729cd5ef 100644
--- a/drivers/video/fbdev/Kconfig
+++ b/drivers/video/fbdev/Kconfig
@@ -1927,9 +1927,7 @@ config FB_MX3
tristate "MX3 Framebuffer support"
depends on FB && MX3_IPU
select BACKLIGHT_CLASS_DEVICE
- select FB_CFB_FILLRECT
- select FB_CFB_COPYAREA
- select FB_CFB_IMAGEBLIT
+ select FB_IOMEM_HELPERS
default y
help
This is a framebuffer device for the i.MX31 LCD Controller. So
diff --git a/drivers/video/fbdev/mx3fb.c b/drivers/video/fbdev/mx3fb.c
index 3a053005d2b9..e6bafaba3460 100644
--- a/drivers/video/fbdev/mx3fb.c
+++ b/drivers/video/fbdev/mx3fb.c
@@ -1247,13 +1247,11 @@ static int mx3fb_pan_display(struct fb_var_screeninfo *var,
*/
static const struct fb_ops mx3fb_ops = {
.owner = THIS_MODULE,
+ FB_DEFAULT_IOMEM_OPS,
.fb_set_par = mx3fb_set_par,
.fb_check_var = mx3fb_check_var,
.fb_setcolreg = mx3fb_setcolreg,
.fb_pan_display = mx3fb_pan_display,
- .fb_fillrect = cfb_fillrect,
- .fb_copyarea = cfb_copyarea,
- .fb_imageblit = cfb_imageblit,
.fb_blank = mx3fb_blank,
};
--
2.41.0
^ permalink raw reply related [flat|nested] 51+ messages in thread
* [PATCH v2 27/47] fbdev/ocfb: Use fbdev I/O helpers
2023-08-01 10:13 [PATCH v2 00/47] fbdev: Use I/O helpers Thomas Zimmermann
` (25 preceding siblings ...)
2023-08-01 10:13 ` [PATCH v2 26/47] fbdev/mx3fb: " Thomas Zimmermann
@ 2023-08-01 10:13 ` Thomas Zimmermann
2023-08-01 10:13 ` [PATCH v2 28/47] fbdev/offb: " Thomas Zimmermann
` (19 subsequent siblings)
46 siblings, 0 replies; 51+ messages in thread
From: Thomas Zimmermann @ 2023-08-01 10:13 UTC (permalink / raw)
To: deller, javierm, sam
Cc: linux-media, linux-fbdev, dri-devel, linux-arm-kernel,
linux-geode, linux-omap, kvm, Thomas Zimmermann
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@suse.de>
Reviewed-by: Sam Ravnborg <sam@ravnborg.org>
Acked-by: Helge Deller <deller@gmx.de>
---
drivers/video/fbdev/Kconfig | 4 +---
drivers/video/fbdev/ocfb.c | 4 +---
2 files changed, 2 insertions(+), 6 deletions(-)
diff --git a/drivers/video/fbdev/Kconfig b/drivers/video/fbdev/Kconfig
index 74ec729cd5ef..b358cb5f87eb 100644
--- a/drivers/video/fbdev/Kconfig
+++ b/drivers/video/fbdev/Kconfig
@@ -672,9 +672,7 @@ config FB_PVR2
config FB_OPENCORES
tristate "OpenCores VGA/LCD core 2.0 framebuffer support"
depends on FB && HAS_DMA
- select FB_CFB_FILLRECT
- select FB_CFB_COPYAREA
- select FB_CFB_IMAGEBLIT
+ select FB_IOMEM_HELPERS
help
This enables support for the OpenCores VGA/LCD core.
diff --git a/drivers/video/fbdev/ocfb.c b/drivers/video/fbdev/ocfb.c
index 7ebe794583e1..7dc305c67af8 100644
--- a/drivers/video/fbdev/ocfb.c
+++ b/drivers/video/fbdev/ocfb.c
@@ -287,10 +287,8 @@ static int ocfb_init_var(struct ocfb_dev *fbdev)
static const struct fb_ops ocfb_ops = {
.owner = THIS_MODULE,
+ FB_DEFAULT_IOMEM_OPS,
.fb_setcolreg = ocfb_setcolreg,
- .fb_fillrect = cfb_fillrect,
- .fb_copyarea = cfb_copyarea,
- .fb_imageblit = cfb_imageblit,
};
static int ocfb_probe(struct platform_device *pdev)
--
2.41.0
^ permalink raw reply related [flat|nested] 51+ messages in thread
* [PATCH v2 28/47] fbdev/offb: Use fbdev I/O helpers
2023-08-01 10:13 [PATCH v2 00/47] fbdev: Use I/O helpers Thomas Zimmermann
` (26 preceding siblings ...)
2023-08-01 10:13 ` [PATCH v2 27/47] fbdev/ocfb: " Thomas Zimmermann
@ 2023-08-01 10:13 ` Thomas Zimmermann
2023-08-01 10:13 ` [PATCH v2 29/47] fbdev/omapfb: " Thomas Zimmermann
` (18 subsequent siblings)
46 siblings, 0 replies; 51+ messages in thread
From: Thomas Zimmermann @ 2023-08-01 10:13 UTC (permalink / raw)
To: deller, javierm, sam
Cc: linux-media, linux-fbdev, dri-devel, linux-arm-kernel,
linux-geode, linux-omap, kvm, Thomas Zimmermann
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@suse.de>
Reviewed-by: Sam Ravnborg <sam@ravnborg.org>
Acked-by: Helge Deller <deller@gmx.de>
---
drivers/video/fbdev/Kconfig | 4 +---
drivers/video/fbdev/offb.c | 4 +---
2 files changed, 2 insertions(+), 6 deletions(-)
diff --git a/drivers/video/fbdev/Kconfig b/drivers/video/fbdev/Kconfig
index b358cb5f87eb..a792364419ce 100644
--- a/drivers/video/fbdev/Kconfig
+++ b/drivers/video/fbdev/Kconfig
@@ -301,9 +301,7 @@ config FB_OF
depends on FB && PPC && (!PPC_PSERIES || PCI)
depends on !DRM_OFDRM
select APERTURE_HELPERS
- select FB_CFB_FILLRECT
- select FB_CFB_COPYAREA
- select FB_CFB_IMAGEBLIT
+ select FB_IOMEM_HELPERS
select FB_MACMODES
help
Say Y if you want support with Open Firmware for your graphics
diff --git a/drivers/video/fbdev/offb.c b/drivers/video/fbdev/offb.c
index 17f8238262be..dcb1b81d35db 100644
--- a/drivers/video/fbdev/offb.c
+++ b/drivers/video/fbdev/offb.c
@@ -293,13 +293,11 @@ static void offb_destroy(struct fb_info *info)
static const struct fb_ops offb_ops = {
.owner = THIS_MODULE,
+ FB_DEFAULT_IOMEM_OPS,
.fb_destroy = offb_destroy,
.fb_setcolreg = offb_setcolreg,
.fb_set_par = offb_set_par,
.fb_blank = offb_blank,
- .fb_fillrect = cfb_fillrect,
- .fb_copyarea = cfb_copyarea,
- .fb_imageblit = cfb_imageblit,
};
static void __iomem *offb_map_reg(struct device_node *np, int index,
--
2.41.0
^ permalink raw reply related [flat|nested] 51+ messages in thread
* [PATCH v2 29/47] fbdev/omapfb: Use fbdev I/O helpers
2023-08-01 10:13 [PATCH v2 00/47] fbdev: Use I/O helpers Thomas Zimmermann
` (27 preceding siblings ...)
2023-08-01 10:13 ` [PATCH v2 28/47] fbdev/offb: " Thomas Zimmermann
@ 2023-08-01 10:13 ` Thomas Zimmermann
2023-08-01 10:13 ` [PATCH v2 30/47] fbdev/platinumfb: " Thomas Zimmermann
` (17 subsequent siblings)
46 siblings, 0 replies; 51+ messages in thread
From: Thomas Zimmermann @ 2023-08-01 10:13 UTC (permalink / raw)
To: deller, javierm, sam
Cc: linux-media, linux-fbdev, dri-devel, linux-arm-kernel,
linux-geode, linux-omap, kvm, Thomas Zimmermann
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@suse.de>
Reviewed-by: Sam Ravnborg <sam@ravnborg.org>
Acked-by: Helge Deller <deller@gmx.de>
---
drivers/video/fbdev/omap/Kconfig | 4 +---
drivers/video/fbdev/omap/omapfb_main.c | 4 +---
2 files changed, 2 insertions(+), 6 deletions(-)
diff --git a/drivers/video/fbdev/omap/Kconfig b/drivers/video/fbdev/omap/Kconfig
index a6548283451f..f01278238d50 100644
--- a/drivers/video/fbdev/omap/Kconfig
+++ b/drivers/video/fbdev/omap/Kconfig
@@ -3,9 +3,7 @@ config FB_OMAP
tristate "OMAP frame buffer support"
depends on FB
depends on ARCH_OMAP1 || (ARM && COMPILE_TEST)
- select FB_CFB_FILLRECT
- select FB_CFB_COPYAREA
- select FB_CFB_IMAGEBLIT
+ select FB_IOMEM_HELPERS
help
Frame buffer driver for OMAP based boards.
diff --git a/drivers/video/fbdev/omap/omapfb_main.c b/drivers/video/fbdev/omap/omapfb_main.c
index 783bbe026207..f28cb90947a3 100644
--- a/drivers/video/fbdev/omap/omapfb_main.c
+++ b/drivers/video/fbdev/omap/omapfb_main.c
@@ -1216,13 +1216,11 @@ static int omapfb_mmap(struct fb_info *info, struct vm_area_struct *vma)
*/
static struct fb_ops omapfb_ops = {
.owner = THIS_MODULE,
+ FB_DEFAULT_IOMEM_OPS,
.fb_open = omapfb_open,
.fb_release = omapfb_release,
.fb_setcolreg = omapfb_setcolreg,
.fb_setcmap = omapfb_setcmap,
- .fb_fillrect = cfb_fillrect,
- .fb_copyarea = cfb_copyarea,
- .fb_imageblit = cfb_imageblit,
.fb_blank = omapfb_blank,
.fb_ioctl = omapfb_ioctl,
.fb_check_var = omapfb_check_var,
--
2.41.0
^ permalink raw reply related [flat|nested] 51+ messages in thread
* [PATCH v2 30/47] fbdev/platinumfb: Use fbdev I/O helpers
2023-08-01 10:13 [PATCH v2 00/47] fbdev: Use I/O helpers Thomas Zimmermann
` (28 preceding siblings ...)
2023-08-01 10:13 ` [PATCH v2 29/47] fbdev/omapfb: " Thomas Zimmermann
@ 2023-08-01 10:13 ` Thomas Zimmermann
2023-08-01 10:13 ` [PATCH v2 31/47] fbdev/pmag-aa-fb: " Thomas Zimmermann
` (16 subsequent siblings)
46 siblings, 0 replies; 51+ messages in thread
From: Thomas Zimmermann @ 2023-08-01 10:13 UTC (permalink / raw)
To: deller, javierm, sam
Cc: linux-media, linux-fbdev, dri-devel, linux-arm-kernel,
linux-geode, linux-omap, kvm, Thomas Zimmermann
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@suse.de>
Reviewed-by: Sam Ravnborg <sam@ravnborg.org>
Acked-by: Helge Deller <deller@gmx.de>
---
drivers/video/fbdev/Kconfig | 4 +---
drivers/video/fbdev/platinumfb.c | 4 +---
2 files changed, 2 insertions(+), 6 deletions(-)
diff --git a/drivers/video/fbdev/Kconfig b/drivers/video/fbdev/Kconfig
index a792364419ce..3e249e5188e9 100644
--- a/drivers/video/fbdev/Kconfig
+++ b/drivers/video/fbdev/Kconfig
@@ -321,9 +321,7 @@ config FB_CONTROL
config FB_PLATINUM
bool "Apple \"platinum\" display support"
depends on (FB = y) && PPC_PMAC && PPC32
- select FB_CFB_FILLRECT
- select FB_CFB_COPYAREA
- select FB_CFB_IMAGEBLIT
+ select FB_IOMEM_HELPERS
select FB_MACMODES
help
This driver supports a frame buffer for the "platinum" graphics
diff --git a/drivers/video/fbdev/platinumfb.c b/drivers/video/fbdev/platinumfb.c
index b1fd86fe3f65..cb6fcc64c8e2 100644
--- a/drivers/video/fbdev/platinumfb.c
+++ b/drivers/video/fbdev/platinumfb.c
@@ -98,13 +98,11 @@ static int platinum_var_to_par(struct fb_var_screeninfo *var,
static const struct fb_ops platinumfb_ops = {
.owner = THIS_MODULE,
+ FB_DEFAULT_IOMEM_OPS,
.fb_check_var = platinumfb_check_var,
.fb_set_par = platinumfb_set_par,
.fb_setcolreg = platinumfb_setcolreg,
.fb_blank = platinumfb_blank,
- .fb_fillrect = cfb_fillrect,
- .fb_copyarea = cfb_copyarea,
- .fb_imageblit = cfb_imageblit,
};
/*
--
2.41.0
^ permalink raw reply related [flat|nested] 51+ messages in thread
* [PATCH v2 31/47] fbdev/pmag-aa-fb: Use fbdev I/O helpers
2023-08-01 10:13 [PATCH v2 00/47] fbdev: Use I/O helpers Thomas Zimmermann
` (29 preceding siblings ...)
2023-08-01 10:13 ` [PATCH v2 30/47] fbdev/platinumfb: " Thomas Zimmermann
@ 2023-08-01 10:13 ` Thomas Zimmermann
2023-08-01 10:13 ` [PATCH v2 32/47] fbdev/pmag-ba-fb: " Thomas Zimmermann
` (15 subsequent siblings)
46 siblings, 0 replies; 51+ messages in thread
From: Thomas Zimmermann @ 2023-08-01 10:13 UTC (permalink / raw)
To: deller, javierm, sam
Cc: linux-media, linux-fbdev, dri-devel, linux-arm-kernel,
linux-geode, linux-omap, kvm, Thomas Zimmermann
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@suse.de>
Reviewed-by: Sam Ravnborg <sam@ravnborg.org>
Acked-by: Helge Deller <deller@gmx.de>
---
drivers/video/fbdev/Kconfig | 4 +---
drivers/video/fbdev/pmag-aa-fb.c | 4 +---
2 files changed, 2 insertions(+), 6 deletions(-)
diff --git a/drivers/video/fbdev/Kconfig b/drivers/video/fbdev/Kconfig
index 3e249e5188e9..0f416d384d03 100644
--- a/drivers/video/fbdev/Kconfig
+++ b/drivers/video/fbdev/Kconfig
@@ -1519,9 +1519,7 @@ config FB_HIT
config FB_PMAG_AA
tristate "PMAG-AA TURBOchannel framebuffer support"
depends on FB && TC
- select FB_CFB_FILLRECT
- select FB_CFB_COPYAREA
- select FB_CFB_IMAGEBLIT
+ select FB_IOMEM_HELPERS
help
Support for the PMAG-AA TURBOchannel framebuffer card (1280x1024x1)
used mainly in the MIPS-based DECstation series.
diff --git a/drivers/video/fbdev/pmag-aa-fb.c b/drivers/video/fbdev/pmag-aa-fb.c
index 7ee20db9ceb8..acfc8c70c410 100644
--- a/drivers/video/fbdev/pmag-aa-fb.c
+++ b/drivers/video/fbdev/pmag-aa-fb.c
@@ -149,10 +149,8 @@ static int aafb_blank(int blank, struct fb_info *info)
static const struct fb_ops aafb_ops = {
.owner = THIS_MODULE,
+ FB_DEFAULT_IOMEM_OPS,
.fb_blank = aafb_blank,
- .fb_fillrect = cfb_fillrect,
- .fb_copyarea = cfb_copyarea,
- .fb_imageblit = cfb_imageblit,
.fb_cursor = aafb_cursor,
};
--
2.41.0
^ permalink raw reply related [flat|nested] 51+ messages in thread
* [PATCH v2 32/47] fbdev/pmag-ba-fb: Use fbdev I/O helpers
2023-08-01 10:13 [PATCH v2 00/47] fbdev: Use I/O helpers Thomas Zimmermann
` (30 preceding siblings ...)
2023-08-01 10:13 ` [PATCH v2 31/47] fbdev/pmag-aa-fb: " Thomas Zimmermann
@ 2023-08-01 10:13 ` Thomas Zimmermann
2023-08-01 10:13 ` [PATCH v2 33/47] fbdev/pmagb-b-fb: " Thomas Zimmermann
` (14 subsequent siblings)
46 siblings, 0 replies; 51+ messages in thread
From: Thomas Zimmermann @ 2023-08-01 10:13 UTC (permalink / raw)
To: deller, javierm, sam
Cc: linux-media, linux-fbdev, dri-devel, linux-arm-kernel,
linux-geode, linux-omap, kvm, Thomas Zimmermann
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@suse.de>
Reviewed-by: Sam Ravnborg <sam@ravnborg.org>
Acked-by: Helge Deller <deller@gmx.de>
---
drivers/video/fbdev/Kconfig | 4 +---
drivers/video/fbdev/pmag-ba-fb.c | 4 +---
2 files changed, 2 insertions(+), 6 deletions(-)
diff --git a/drivers/video/fbdev/Kconfig b/drivers/video/fbdev/Kconfig
index 0f416d384d03..f2b8b88d9b69 100644
--- a/drivers/video/fbdev/Kconfig
+++ b/drivers/video/fbdev/Kconfig
@@ -1527,9 +1527,7 @@ config FB_PMAG_AA
config FB_PMAG_BA
tristate "PMAG-BA TURBOchannel framebuffer support"
depends on FB && TC
- select FB_CFB_FILLRECT
- select FB_CFB_COPYAREA
- select FB_CFB_IMAGEBLIT
+ select FB_IOMEM_HELPERS
help
Support for the PMAG-BA TURBOchannel framebuffer card (1024x864x8)
used mainly in the MIPS-based DECstation series.
diff --git a/drivers/video/fbdev/pmag-ba-fb.c b/drivers/video/fbdev/pmag-ba-fb.c
index 20a1815279f7..1e010520b335 100644
--- a/drivers/video/fbdev/pmag-ba-fb.c
+++ b/drivers/video/fbdev/pmag-ba-fb.c
@@ -119,10 +119,8 @@ static int pmagbafb_setcolreg(unsigned int regno, unsigned int red,
static const struct fb_ops pmagbafb_ops = {
.owner = THIS_MODULE,
+ FB_DEFAULT_IOMEM_OPS,
.fb_setcolreg = pmagbafb_setcolreg,
- .fb_fillrect = cfb_fillrect,
- .fb_copyarea = cfb_copyarea,
- .fb_imageblit = cfb_imageblit,
};
--
2.41.0
^ permalink raw reply related [flat|nested] 51+ messages in thread
* [PATCH v2 33/47] fbdev/pmagb-b-fb: Use fbdev I/O helpers
2023-08-01 10:13 [PATCH v2 00/47] fbdev: Use I/O helpers Thomas Zimmermann
` (31 preceding siblings ...)
2023-08-01 10:13 ` [PATCH v2 32/47] fbdev/pmag-ba-fb: " Thomas Zimmermann
@ 2023-08-01 10:13 ` Thomas Zimmermann
2023-08-01 10:13 ` [PATCH v2 34/47] fbdev/pxa168fb: " Thomas Zimmermann
` (13 subsequent siblings)
46 siblings, 0 replies; 51+ messages in thread
From: Thomas Zimmermann @ 2023-08-01 10:13 UTC (permalink / raw)
To: deller, javierm, sam
Cc: linux-media, linux-fbdev, dri-devel, linux-arm-kernel,
linux-geode, linux-omap, kvm, Thomas Zimmermann
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
* fix driver name in commit message
Signed-off-by: Thomas Zimmermann <tzimmermann@suse.de>
Reviewed-by: Sam Ravnborg <sam@ravnborg.org>
Acked-by: Helge Deller <deller@gmx.de>
---
drivers/video/fbdev/Kconfig | 4 +---
drivers/video/fbdev/pmagb-b-fb.c | 4 +---
2 files changed, 2 insertions(+), 6 deletions(-)
diff --git a/drivers/video/fbdev/Kconfig b/drivers/video/fbdev/Kconfig
index f2b8b88d9b69..eeaf82880bb3 100644
--- a/drivers/video/fbdev/Kconfig
+++ b/drivers/video/fbdev/Kconfig
@@ -1535,9 +1535,7 @@ config FB_PMAG_BA
config FB_PMAGB_B
tristate "PMAGB-B TURBOchannel framebuffer support"
depends on FB && TC
- select FB_CFB_FILLRECT
- select FB_CFB_COPYAREA
- select FB_CFB_IMAGEBLIT
+ select FB_IOMEM_HELPERS
help
Support for the PMAGB-B TURBOchannel framebuffer card used mainly
in the MIPS-based DECstation series. The card is currently only
diff --git a/drivers/video/fbdev/pmagb-b-fb.c b/drivers/video/fbdev/pmagb-b-fb.c
index 4ab4d6c7a975..6432492467d1 100644
--- a/drivers/video/fbdev/pmagb-b-fb.c
+++ b/drivers/video/fbdev/pmagb-b-fb.c
@@ -123,10 +123,8 @@ static int pmagbbfb_setcolreg(unsigned int regno, unsigned int red,
static const struct fb_ops pmagbbfb_ops = {
.owner = THIS_MODULE,
+ FB_DEFAULT_IOMEM_OPS,
.fb_setcolreg = pmagbbfb_setcolreg,
- .fb_fillrect = cfb_fillrect,
- .fb_copyarea = cfb_copyarea,
- .fb_imageblit = cfb_imageblit,
};
--
2.41.0
^ permalink raw reply related [flat|nested] 51+ messages in thread
* [PATCH v2 34/47] fbdev/pxa168fb: Use fbdev I/O helpers
2023-08-01 10:13 [PATCH v2 00/47] fbdev: Use I/O helpers Thomas Zimmermann
` (32 preceding siblings ...)
2023-08-01 10:13 ` [PATCH v2 33/47] fbdev/pmagb-b-fb: " Thomas Zimmermann
@ 2023-08-01 10:13 ` Thomas Zimmermann
2023-08-01 10:13 ` [PATCH v2 35/47] fbdev/pxafb: " Thomas Zimmermann
` (12 subsequent siblings)
46 siblings, 0 replies; 51+ messages in thread
From: Thomas Zimmermann @ 2023-08-01 10:13 UTC (permalink / raw)
To: deller, javierm, sam
Cc: linux-media, linux-fbdev, dri-devel, linux-arm-kernel,
linux-geode, linux-omap, kvm, Thomas Zimmermann
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@suse.de>
Reviewed-by: Sam Ravnborg <sam@ravnborg.org>
Acked-by: Helge Deller <deller@gmx.de>
---
drivers/video/fbdev/Kconfig | 4 +---
drivers/video/fbdev/pxa168fb.c | 4 +---
2 files changed, 2 insertions(+), 6 deletions(-)
diff --git a/drivers/video/fbdev/Kconfig b/drivers/video/fbdev/Kconfig
index eeaf82880bb3..329b57c173ad 100644
--- a/drivers/video/fbdev/Kconfig
+++ b/drivers/video/fbdev/Kconfig
@@ -1572,9 +1572,7 @@ config FB_PXA168
tristate "PXA168/910 LCD framebuffer support"
depends on FB && HAVE_CLK && HAS_IOMEM
depends on CPU_PXA168 || CPU_PXA910 || COMPILE_TEST
- select FB_CFB_FILLRECT
- select FB_CFB_COPYAREA
- select FB_CFB_IMAGEBLIT
+ select FB_IOMEM_HELPERS
help
Frame buffer driver for the built-in LCD controller in the Marvell
MMP processor.
diff --git a/drivers/video/fbdev/pxa168fb.c b/drivers/video/fbdev/pxa168fb.c
index 790aa231a593..adee34386580 100644
--- a/drivers/video/fbdev/pxa168fb.c
+++ b/drivers/video/fbdev/pxa168fb.c
@@ -543,14 +543,12 @@ static irqreturn_t pxa168fb_handle_irq(int irq, void *dev_id)
static const struct fb_ops pxa168fb_ops = {
.owner = THIS_MODULE,
+ FB_DEFAULT_IOMEM_OPS,
.fb_check_var = pxa168fb_check_var,
.fb_set_par = pxa168fb_set_par,
.fb_setcolreg = pxa168fb_setcolreg,
.fb_blank = pxa168fb_blank,
.fb_pan_display = pxa168fb_pan_display,
- .fb_fillrect = cfb_fillrect,
- .fb_copyarea = cfb_copyarea,
- .fb_imageblit = cfb_imageblit,
};
static void pxa168fb_init_mode(struct fb_info *info,
--
2.41.0
^ permalink raw reply related [flat|nested] 51+ messages in thread
* [PATCH v2 35/47] fbdev/pxafb: Use fbdev I/O helpers
2023-08-01 10:13 [PATCH v2 00/47] fbdev: Use I/O helpers Thomas Zimmermann
` (33 preceding siblings ...)
2023-08-01 10:13 ` [PATCH v2 34/47] fbdev/pxa168fb: " Thomas Zimmermann
@ 2023-08-01 10:13 ` Thomas Zimmermann
2023-08-01 10:13 ` [PATCH v2 36/47] fbdev/q40fb: " Thomas Zimmermann
` (11 subsequent siblings)
46 siblings, 0 replies; 51+ messages in thread
From: Thomas Zimmermann @ 2023-08-01 10:13 UTC (permalink / raw)
To: deller, javierm, sam
Cc: linux-media, linux-fbdev, dri-devel, linux-arm-kernel,
linux-geode, linux-omap, kvm, Thomas Zimmermann
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@suse.de>
Reviewed-by: Sam Ravnborg <sam@ravnborg.org>
Acked-by: Helge Deller <deller@gmx.de>
---
drivers/video/fbdev/Kconfig | 4 +---
drivers/video/fbdev/pxafb.c | 4 +---
2 files changed, 2 insertions(+), 6 deletions(-)
diff --git a/drivers/video/fbdev/Kconfig b/drivers/video/fbdev/Kconfig
index 329b57c173ad..ccc6ee95e61b 100644
--- a/drivers/video/fbdev/Kconfig
+++ b/drivers/video/fbdev/Kconfig
@@ -1580,9 +1580,7 @@ config FB_PXA168
config FB_PXA
tristate "PXA LCD framebuffer support"
depends on FB && ARCH_PXA
- select FB_CFB_FILLRECT
- select FB_CFB_COPYAREA
- select FB_CFB_IMAGEBLIT
+ select FB_IOMEM_HELPERS
select VIDEOMODE_HELPERS if OF
select FB_MODE_HELPERS if OF
help
diff --git a/drivers/video/fbdev/pxafb.c b/drivers/video/fbdev/pxafb.c
index beffb0602a2c..fa943612c4e2 100644
--- a/drivers/video/fbdev/pxafb.c
+++ b/drivers/video/fbdev/pxafb.c
@@ -599,13 +599,11 @@ static int pxafb_blank(int blank, struct fb_info *info)
static const struct fb_ops pxafb_ops = {
.owner = THIS_MODULE,
+ FB_DEFAULT_IOMEM_OPS,
.fb_check_var = pxafb_check_var,
.fb_set_par = pxafb_set_par,
.fb_pan_display = pxafb_pan_display,
.fb_setcolreg = pxafb_setcolreg,
- .fb_fillrect = cfb_fillrect,
- .fb_copyarea = cfb_copyarea,
- .fb_imageblit = cfb_imageblit,
.fb_blank = pxafb_blank,
};
--
2.41.0
^ permalink raw reply related [flat|nested] 51+ messages in thread
* [PATCH v2 36/47] fbdev/q40fb: Use fbdev I/O helpers
2023-08-01 10:13 [PATCH v2 00/47] fbdev: Use I/O helpers Thomas Zimmermann
` (34 preceding siblings ...)
2023-08-01 10:13 ` [PATCH v2 35/47] fbdev/pxafb: " Thomas Zimmermann
@ 2023-08-01 10:13 ` Thomas Zimmermann
2023-08-01 10:13 ` [PATCH v2 37/47] fbdev/s3cfb: " Thomas Zimmermann
` (10 subsequent siblings)
46 siblings, 0 replies; 51+ messages in thread
From: Thomas Zimmermann @ 2023-08-01 10:13 UTC (permalink / raw)
To: deller, javierm, sam
Cc: linux-media, linux-fbdev, dri-devel, linux-arm-kernel,
linux-geode, linux-omap, kvm, Thomas Zimmermann
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@suse.de>
Reviewed-by: Sam Ravnborg <sam@ravnborg.org>
Acked-by: Helge Deller <deller@gmx.de>
---
drivers/video/fbdev/Kconfig | 4 +---
drivers/video/fbdev/q40fb.c | 4 +---
2 files changed, 2 insertions(+), 6 deletions(-)
diff --git a/drivers/video/fbdev/Kconfig b/drivers/video/fbdev/Kconfig
index ccc6ee95e61b..4986586c63b0 100644
--- a/drivers/video/fbdev/Kconfig
+++ b/drivers/video/fbdev/Kconfig
@@ -222,9 +222,7 @@ config FB_Q40
bool
depends on (FB = y) && Q40
default y
- select FB_CFB_FILLRECT
- select FB_CFB_COPYAREA
- select FB_CFB_IMAGEBLIT
+ select FB_IOMEM_HELPERS
config FB_AMIGA
tristate "Amiga native chipset support"
diff --git a/drivers/video/fbdev/q40fb.c b/drivers/video/fbdev/q40fb.c
index b180f0f6940e..1ff8fa176124 100644
--- a/drivers/video/fbdev/q40fb.c
+++ b/drivers/video/fbdev/q40fb.c
@@ -76,10 +76,8 @@ static int q40fb_setcolreg(unsigned regno, unsigned red, unsigned green,
static const struct fb_ops q40fb_ops = {
.owner = THIS_MODULE,
+ FB_DEFAULT_IOMEM_OPS,
.fb_setcolreg = q40fb_setcolreg,
- .fb_fillrect = cfb_fillrect,
- .fb_copyarea = cfb_copyarea,
- .fb_imageblit = cfb_imageblit,
};
static int q40fb_probe(struct platform_device *dev)
--
2.41.0
^ permalink raw reply related [flat|nested] 51+ messages in thread
* [PATCH v2 37/47] fbdev/s3cfb: Use fbdev I/O helpers
2023-08-01 10:13 [PATCH v2 00/47] fbdev: Use I/O helpers Thomas Zimmermann
` (35 preceding siblings ...)
2023-08-01 10:13 ` [PATCH v2 36/47] fbdev/q40fb: " Thomas Zimmermann
@ 2023-08-01 10:13 ` Thomas Zimmermann
2023-08-01 10:13 ` [PATCH v2 38/47] fbdev/sh7760fb: " Thomas Zimmermann
` (9 subsequent siblings)
46 siblings, 0 replies; 51+ messages in thread
From: Thomas Zimmermann @ 2023-08-01 10:13 UTC (permalink / raw)
To: deller, javierm, sam
Cc: linux-media, linux-fbdev, dri-devel, linux-arm-kernel,
linux-geode, linux-omap, kvm, Thomas Zimmermann, Jingoo Han
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@suse.de>
Reviewed-by: Sam Ravnborg <sam@ravnborg.org>
Acked-by: Helge Deller <deller@gmx.de>
Cc: Jingoo Han <jingoohan1@gmail.com>
---
drivers/video/fbdev/Kconfig | 4 +---
drivers/video/fbdev/s3c-fb.c | 4 +---
2 files changed, 2 insertions(+), 6 deletions(-)
diff --git a/drivers/video/fbdev/Kconfig b/drivers/video/fbdev/Kconfig
index 4986586c63b0..71766639c542 100644
--- a/drivers/video/fbdev/Kconfig
+++ b/drivers/video/fbdev/Kconfig
@@ -1653,9 +1653,7 @@ config FB_S3C
tristate "Samsung S3C framebuffer support"
depends on FB && HAVE_CLK && HAS_IOMEM
depends on ARCH_S3C64XX || COMPILE_TEST
- select FB_CFB_FILLRECT
- select FB_CFB_COPYAREA
- select FB_CFB_IMAGEBLIT
+ select FB_IOMEM_HELPERS
help
Frame buffer driver for the built-in FB controller in the Samsung
SoC line such as the S3C6400 and S3C6410.
diff --git a/drivers/video/fbdev/s3c-fb.c b/drivers/video/fbdev/s3c-fb.c
index c50b92c06c5d..2b85aad6a304 100644
--- a/drivers/video/fbdev/s3c-fb.c
+++ b/drivers/video/fbdev/s3c-fb.c
@@ -1038,13 +1038,11 @@ static int s3c_fb_ioctl(struct fb_info *info, unsigned int cmd,
static const struct fb_ops s3c_fb_ops = {
.owner = THIS_MODULE,
+ FB_DEFAULT_IOMEM_OPS,
.fb_check_var = s3c_fb_check_var,
.fb_set_par = s3c_fb_set_par,
.fb_blank = s3c_fb_blank,
.fb_setcolreg = s3c_fb_setcolreg,
- .fb_fillrect = cfb_fillrect,
- .fb_copyarea = cfb_copyarea,
- .fb_imageblit = cfb_imageblit,
.fb_pan_display = s3c_fb_pan_display,
.fb_ioctl = s3c_fb_ioctl,
};
--
2.41.0
^ permalink raw reply related [flat|nested] 51+ messages in thread
* [PATCH v2 38/47] fbdev/sh7760fb: Use fbdev I/O helpers
2023-08-01 10:13 [PATCH v2 00/47] fbdev: Use I/O helpers Thomas Zimmermann
` (36 preceding siblings ...)
2023-08-01 10:13 ` [PATCH v2 37/47] fbdev/s3cfb: " Thomas Zimmermann
@ 2023-08-01 10:13 ` Thomas Zimmermann
2023-08-01 10:13 ` [PATCH v2 39/47] fbdev/simplefb: " Thomas Zimmermann
` (8 subsequent siblings)
46 siblings, 0 replies; 51+ messages in thread
From: Thomas Zimmermann @ 2023-08-01 10:13 UTC (permalink / raw)
To: deller, javierm, sam
Cc: linux-media, linux-fbdev, dri-devel, linux-arm-kernel,
linux-geode, linux-omap, kvm, Thomas Zimmermann
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@suse.de>
Reviewed-by: Sam Ravnborg <sam@ravnborg.org>
Acked-by: Helge Deller <deller@gmx.de>
---
drivers/video/fbdev/Kconfig | 4 +---
drivers/video/fbdev/sh7760fb.c | 4 +---
2 files changed, 2 insertions(+), 6 deletions(-)
diff --git a/drivers/video/fbdev/Kconfig b/drivers/video/fbdev/Kconfig
index 71766639c542..cea3e00badcd 100644
--- a/drivers/video/fbdev/Kconfig
+++ b/drivers/video/fbdev/Kconfig
@@ -1778,9 +1778,7 @@ config FB_SH7760
bool "SH7760/SH7763/SH7720/SH7721 LCDC support"
depends on FB && (CPU_SUBTYPE_SH7760 || CPU_SUBTYPE_SH7763 \
|| CPU_SUBTYPE_SH7720 || CPU_SUBTYPE_SH7721)
- select FB_CFB_FILLRECT
- select FB_CFB_COPYAREA
- select FB_CFB_IMAGEBLIT
+ select FB_IOMEM_HELPERS
help
Support for the SH7760/SH7763/SH7720/SH7721 integrated
(D)STN/TFT LCD Controller.
diff --git a/drivers/video/fbdev/sh7760fb.c b/drivers/video/fbdev/sh7760fb.c
index db898112f9a5..08a4943dc541 100644
--- a/drivers/video/fbdev/sh7760fb.c
+++ b/drivers/video/fbdev/sh7760fb.c
@@ -345,13 +345,11 @@ static int sh7760fb_set_par(struct fb_info *info)
static const struct fb_ops sh7760fb_ops = {
.owner = THIS_MODULE,
+ FB_DEFAULT_IOMEM_OPS,
.fb_blank = sh7760fb_blank,
.fb_check_var = sh7760fb_check_var,
.fb_setcolreg = sh7760_setcolreg,
.fb_set_par = sh7760fb_set_par,
- .fb_fillrect = cfb_fillrect,
- .fb_copyarea = cfb_copyarea,
- .fb_imageblit = cfb_imageblit,
};
static void sh7760fb_free_mem(struct fb_info *info)
--
2.41.0
^ permalink raw reply related [flat|nested] 51+ messages in thread
* [PATCH v2 39/47] fbdev/simplefb: Use fbdev I/O helpers
2023-08-01 10:13 [PATCH v2 00/47] fbdev: Use I/O helpers Thomas Zimmermann
` (37 preceding siblings ...)
2023-08-01 10:13 ` [PATCH v2 38/47] fbdev/sh7760fb: " Thomas Zimmermann
@ 2023-08-01 10:13 ` Thomas Zimmermann
2023-08-01 10:13 ` [PATCH v2 40/47] fbdev/sstfb: " Thomas Zimmermann
` (7 subsequent siblings)
46 siblings, 0 replies; 51+ messages in thread
From: Thomas Zimmermann @ 2023-08-01 10:13 UTC (permalink / raw)
To: deller, javierm, sam
Cc: linux-media, linux-fbdev, dri-devel, linux-arm-kernel,
linux-geode, linux-omap, kvm, Thomas Zimmermann, Hans de Goede
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@suse.de>
Reviewed-by: Sam Ravnborg <sam@ravnborg.org>
Acked-by: Helge Deller <deller@gmx.de>
Cc: Hans de Goede <hdegoede@redhat.com>
---
drivers/video/fbdev/Kconfig | 4 +---
drivers/video/fbdev/simplefb.c | 4 +---
2 files changed, 2 insertions(+), 6 deletions(-)
diff --git a/drivers/video/fbdev/Kconfig b/drivers/video/fbdev/Kconfig
index cea3e00badcd..9b11a394bd82 100644
--- a/drivers/video/fbdev/Kconfig
+++ b/drivers/video/fbdev/Kconfig
@@ -1939,9 +1939,7 @@ config FB_SIMPLE
depends on FB
depends on !DRM_SIMPLEDRM
select APERTURE_HELPERS
- select FB_CFB_FILLRECT
- select FB_CFB_COPYAREA
- select FB_CFB_IMAGEBLIT
+ select FB_IOMEM_HELPERS
help
Say Y if you want support for a simple frame-buffer.
diff --git a/drivers/video/fbdev/simplefb.c b/drivers/video/fbdev/simplefb.c
index 461e50c8dd1b..62f99f6fccd3 100644
--- a/drivers/video/fbdev/simplefb.c
+++ b/drivers/video/fbdev/simplefb.c
@@ -109,11 +109,9 @@ static void simplefb_destroy(struct fb_info *info)
static const struct fb_ops simplefb_ops = {
.owner = THIS_MODULE,
+ FB_DEFAULT_IOMEM_OPS,
.fb_destroy = simplefb_destroy,
.fb_setcolreg = simplefb_setcolreg,
- .fb_fillrect = cfb_fillrect,
- .fb_copyarea = cfb_copyarea,
- .fb_imageblit = cfb_imageblit,
};
static struct simplefb_format simplefb_formats[] = SIMPLEFB_FORMATS;
--
2.41.0
^ permalink raw reply related [flat|nested] 51+ messages in thread
* [PATCH v2 40/47] fbdev/sstfb: Use fbdev I/O helpers
2023-08-01 10:13 [PATCH v2 00/47] fbdev: Use I/O helpers Thomas Zimmermann
` (38 preceding siblings ...)
2023-08-01 10:13 ` [PATCH v2 39/47] fbdev/simplefb: " Thomas Zimmermann
@ 2023-08-01 10:13 ` Thomas Zimmermann
2023-08-01 10:13 ` [PATCH v2 41/47] fbdev/sunxvr1000: " Thomas Zimmermann
` (6 subsequent siblings)
46 siblings, 0 replies; 51+ messages in thread
From: Thomas Zimmermann @ 2023-08-01 10:13 UTC (permalink / raw)
To: deller, javierm, sam
Cc: linux-media, linux-fbdev, dri-devel, linux-arm-kernel,
linux-geode, linux-omap, kvm, Thomas Zimmermann
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@suse.de>
Reviewed-by: Sam Ravnborg <sam@ravnborg.org>
Acked-by: Helge Deller <deller@gmx.de>
---
drivers/video/fbdev/Kconfig | 4 +---
drivers/video/fbdev/sstfb.c | 4 +---
2 files changed, 2 insertions(+), 6 deletions(-)
diff --git a/drivers/video/fbdev/Kconfig b/drivers/video/fbdev/Kconfig
index 9b11a394bd82..ba02a31977d4 100644
--- a/drivers/video/fbdev/Kconfig
+++ b/drivers/video/fbdev/Kconfig
@@ -1340,9 +1340,7 @@ config FB_VOODOO1
tristate "3Dfx Voodoo Graphics (sst1) support"
depends on FB && PCI
depends on FB_DEVICE
- select FB_CFB_FILLRECT
- select FB_CFB_COPYAREA
- select FB_CFB_IMAGEBLIT
+ select FB_IOMEM_HELPERS
select VIDEO_NOMODESET
help
Say Y here if you have a 3Dfx Voodoo Graphics (Voodoo1/sst1) or
diff --git a/drivers/video/fbdev/sstfb.c b/drivers/video/fbdev/sstfb.c
index 8d2b1d60dd2e..f8ae54ca0cc3 100644
--- a/drivers/video/fbdev/sstfb.c
+++ b/drivers/video/fbdev/sstfb.c
@@ -1310,12 +1310,10 @@ static int sstfb_setup(char *options)
static const struct fb_ops sstfb_ops = {
.owner = THIS_MODULE,
+ FB_DEFAULT_IOMEM_OPS,
.fb_check_var = sstfb_check_var,
.fb_set_par = sstfb_set_par,
.fb_setcolreg = sstfb_setcolreg,
- .fb_fillrect = cfb_fillrect, /* sstfb_fillrect */
- .fb_copyarea = cfb_copyarea, /* sstfb_copyarea */
- .fb_imageblit = cfb_imageblit,
.fb_ioctl = sstfb_ioctl,
};
--
2.41.0
^ permalink raw reply related [flat|nested] 51+ messages in thread
* [PATCH v2 41/47] fbdev/sunxvr1000: Use fbdev I/O helpers
2023-08-01 10:13 [PATCH v2 00/47] fbdev: Use I/O helpers Thomas Zimmermann
` (39 preceding siblings ...)
2023-08-01 10:13 ` [PATCH v2 40/47] fbdev/sstfb: " Thomas Zimmermann
@ 2023-08-01 10:13 ` Thomas Zimmermann
2023-08-01 10:13 ` [PATCH v2 42/47] fbdev/sunxvr2500: " Thomas Zimmermann
` (5 subsequent siblings)
46 siblings, 0 replies; 51+ messages in thread
From: Thomas Zimmermann @ 2023-08-01 10:13 UTC (permalink / raw)
To: deller, javierm, sam
Cc: linux-media, linux-fbdev, dri-devel, linux-arm-kernel,
linux-geode, linux-omap, kvm, Thomas Zimmermann
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@suse.de>
Reviewed-by: Sam Ravnborg <sam@ravnborg.org>
Acked-by: Helge Deller <deller@gmx.de>
---
drivers/video/fbdev/Kconfig | 4 +---
drivers/video/fbdev/sunxvr1000.c | 4 +---
2 files changed, 2 insertions(+), 6 deletions(-)
diff --git a/drivers/video/fbdev/Kconfig b/drivers/video/fbdev/Kconfig
index ba02a31977d4..01f67b21df06 100644
--- a/drivers/video/fbdev/Kconfig
+++ b/drivers/video/fbdev/Kconfig
@@ -631,9 +631,7 @@ config FB_XVR2500
config FB_XVR1000
bool "Sun XVR-1000 support"
depends on (FB = y) && SPARC64
- select FB_CFB_FILLRECT
- select FB_CFB_COPYAREA
- select FB_CFB_IMAGEBLIT
+ select FB_IOMEM_HELPERS
help
This is the framebuffer device for the Sun XVR-1000 and similar
graphics cards. The driver only works on sparc64 systems where
diff --git a/drivers/video/fbdev/sunxvr1000.c b/drivers/video/fbdev/sunxvr1000.c
index 5746a305fe40..a93b06614187 100644
--- a/drivers/video/fbdev/sunxvr1000.c
+++ b/drivers/video/fbdev/sunxvr1000.c
@@ -62,10 +62,8 @@ static int gfb_setcolreg(unsigned regno,
static const struct fb_ops gfb_ops = {
.owner = THIS_MODULE,
+ FB_DEFAULT_IOMEM_OPS,
.fb_setcolreg = gfb_setcolreg,
- .fb_fillrect = cfb_fillrect,
- .fb_copyarea = cfb_copyarea,
- .fb_imageblit = cfb_imageblit,
};
static int gfb_set_fbinfo(struct gfb_info *gp)
--
2.41.0
^ permalink raw reply related [flat|nested] 51+ messages in thread
* [PATCH v2 42/47] fbdev/sunxvr2500: Use fbdev I/O helpers
2023-08-01 10:13 [PATCH v2 00/47] fbdev: Use I/O helpers Thomas Zimmermann
` (40 preceding siblings ...)
2023-08-01 10:13 ` [PATCH v2 41/47] fbdev/sunxvr1000: " Thomas Zimmermann
@ 2023-08-01 10:13 ` Thomas Zimmermann
2023-08-01 10:13 ` [PATCH v2 43/47] fbdev/uvesafb: " Thomas Zimmermann
` (4 subsequent siblings)
46 siblings, 0 replies; 51+ messages in thread
From: Thomas Zimmermann @ 2023-08-01 10:13 UTC (permalink / raw)
To: deller, javierm, sam
Cc: linux-media, linux-fbdev, dri-devel, linux-arm-kernel,
linux-geode, linux-omap, kvm, Thomas Zimmermann
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@suse.de>
Reviewed-by: Sam Ravnborg <sam@ravnborg.org>
Acked-by: Helge Deller <deller@gmx.de>
---
drivers/video/fbdev/Kconfig | 4 +---
drivers/video/fbdev/sunxvr2500.c | 4 +---
2 files changed, 2 insertions(+), 6 deletions(-)
diff --git a/drivers/video/fbdev/Kconfig b/drivers/video/fbdev/Kconfig
index 01f67b21df06..f5ce8d6d1247 100644
--- a/drivers/video/fbdev/Kconfig
+++ b/drivers/video/fbdev/Kconfig
@@ -617,9 +617,7 @@ config FB_XVR500
config FB_XVR2500
bool "Sun XVR-2500 3DLABS Wildcat support"
depends on (FB = y) && PCI && SPARC64
- select FB_CFB_FILLRECT
- select FB_CFB_COPYAREA
- select FB_CFB_IMAGEBLIT
+ select FB_IOMEM_HELPERS
select VIDEO_NOMODESET
help
This is the framebuffer device for the Sun XVR-2500 and similar
diff --git a/drivers/video/fbdev/sunxvr2500.c b/drivers/video/fbdev/sunxvr2500.c
index 07ebf6941708..42426d09b935 100644
--- a/drivers/video/fbdev/sunxvr2500.c
+++ b/drivers/video/fbdev/sunxvr2500.c
@@ -66,10 +66,8 @@ static int s3d_setcolreg(unsigned regno,
static const struct fb_ops s3d_ops = {
.owner = THIS_MODULE,
+ FB_DEFAULT_IOMEM_OPS,
.fb_setcolreg = s3d_setcolreg,
- .fb_fillrect = cfb_fillrect,
- .fb_copyarea = cfb_copyarea,
- .fb_imageblit = cfb_imageblit,
};
static int s3d_set_fbinfo(struct s3d_info *sp)
--
2.41.0
^ permalink raw reply related [flat|nested] 51+ messages in thread
* [PATCH v2 43/47] fbdev/uvesafb: Use fbdev I/O helpers
2023-08-01 10:13 [PATCH v2 00/47] fbdev: Use I/O helpers Thomas Zimmermann
` (41 preceding siblings ...)
2023-08-01 10:13 ` [PATCH v2 42/47] fbdev/sunxvr2500: " Thomas Zimmermann
@ 2023-08-01 10:13 ` Thomas Zimmermann
2023-08-01 10:13 ` [PATCH v2 44/47] fbdev/valkyriefb: " Thomas Zimmermann
` (3 subsequent siblings)
46 siblings, 0 replies; 51+ messages in thread
From: Thomas Zimmermann @ 2023-08-01 10:13 UTC (permalink / raw)
To: deller, javierm, sam
Cc: linux-media, linux-fbdev, dri-devel, linux-arm-kernel,
linux-geode, linux-omap, kvm, Thomas Zimmermann,
Michal Januszewski
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@suse.de>
Reviewed-by: Sam Ravnborg <sam@ravnborg.org>
Acked-by: Helge Deller <deller@gmx.de>
Cc: Michal Januszewski <spock@gentoo.org>
---
drivers/video/fbdev/Kconfig | 4 +---
drivers/video/fbdev/uvesafb.c | 4 +---
2 files changed, 2 insertions(+), 6 deletions(-)
diff --git a/drivers/video/fbdev/Kconfig b/drivers/video/fbdev/Kconfig
index f5ce8d6d1247..e6ca54347272 100644
--- a/drivers/video/fbdev/Kconfig
+++ b/drivers/video/fbdev/Kconfig
@@ -438,9 +438,7 @@ config FB_UVESA
tristate "Userspace VESA VGA graphics support"
depends on FB && CONNECTOR
depends on !UML
- select FB_CFB_FILLRECT
- select FB_CFB_COPYAREA
- select FB_CFB_IMAGEBLIT
+ select FB_IOMEM_HELPERS
select FB_MODE_HELPERS
help
This is the frame buffer driver for generic VBE 2.0 compliant
diff --git a/drivers/video/fbdev/uvesafb.c b/drivers/video/fbdev/uvesafb.c
index df2574d4ff30..a1a67830fbbc 100644
--- a/drivers/video/fbdev/uvesafb.c
+++ b/drivers/video/fbdev/uvesafb.c
@@ -1416,13 +1416,11 @@ static struct fb_ops uvesafb_ops = {
.owner = THIS_MODULE,
.fb_open = uvesafb_open,
.fb_release = uvesafb_release,
+ FB_DEFAULT_IOMEM_OPS,
.fb_setcolreg = uvesafb_setcolreg,
.fb_setcmap = uvesafb_setcmap,
.fb_pan_display = uvesafb_pan_display,
.fb_blank = uvesafb_blank,
- .fb_fillrect = cfb_fillrect,
- .fb_copyarea = cfb_copyarea,
- .fb_imageblit = cfb_imageblit,
.fb_check_var = uvesafb_check_var,
.fb_set_par = uvesafb_set_par,
};
--
2.41.0
^ permalink raw reply related [flat|nested] 51+ messages in thread
* [PATCH v2 44/47] fbdev/valkyriefb: Use fbdev I/O helpers
2023-08-01 10:13 [PATCH v2 00/47] fbdev: Use I/O helpers Thomas Zimmermann
` (42 preceding siblings ...)
2023-08-01 10:13 ` [PATCH v2 43/47] fbdev/uvesafb: " Thomas Zimmermann
@ 2023-08-01 10:13 ` Thomas Zimmermann
2023-08-01 10:13 ` [PATCH v2 45/47] fbdev/vesafb: " Thomas Zimmermann
` (2 subsequent siblings)
46 siblings, 0 replies; 51+ messages in thread
From: Thomas Zimmermann @ 2023-08-01 10:13 UTC (permalink / raw)
To: deller, javierm, sam
Cc: linux-media, linux-fbdev, dri-devel, linux-arm-kernel,
linux-geode, linux-omap, kvm, Thomas Zimmermann
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@suse.de>
Reviewed-by: Sam Ravnborg <sam@ravnborg.org>
Acked-by: Helge Deller <deller@gmx.de>
---
drivers/video/fbdev/Kconfig | 4 +---
drivers/video/fbdev/valkyriefb.c | 4 +---
2 files changed, 2 insertions(+), 6 deletions(-)
diff --git a/drivers/video/fbdev/Kconfig b/drivers/video/fbdev/Kconfig
index e6ca54347272..b8395ff04f98 100644
--- a/drivers/video/fbdev/Kconfig
+++ b/drivers/video/fbdev/Kconfig
@@ -328,9 +328,7 @@ config FB_PLATINUM
config FB_VALKYRIE
bool "Apple \"valkyrie\" display support"
depends on (FB = y) && (MAC || (PPC_PMAC && PPC32))
- select FB_CFB_FILLRECT
- select FB_CFB_COPYAREA
- select FB_CFB_IMAGEBLIT
+ select FB_IOMEM_HELPERS
select FB_MACMODES
help
This driver supports a frame buffer for the "valkyrie" graphics
diff --git a/drivers/video/fbdev/valkyriefb.c b/drivers/video/fbdev/valkyriefb.c
index fd4488777032..91d070ef6989 100644
--- a/drivers/video/fbdev/valkyriefb.c
+++ b/drivers/video/fbdev/valkyriefb.c
@@ -110,13 +110,11 @@ static void valkyrie_init_fix(struct fb_fix_screeninfo *fix, struct fb_info_valk
static const struct fb_ops valkyriefb_ops = {
.owner = THIS_MODULE,
+ FB_DEFAULT_IOMEM_OPS,
.fb_check_var = valkyriefb_check_var,
.fb_set_par = valkyriefb_set_par,
.fb_setcolreg = valkyriefb_setcolreg,
.fb_blank = valkyriefb_blank,
- .fb_fillrect = cfb_fillrect,
- .fb_copyarea = cfb_copyarea,
- .fb_imageblit = cfb_imageblit,
};
/* Sets the video mode according to info->var */
--
2.41.0
^ permalink raw reply related [flat|nested] 51+ messages in thread
* [PATCH v2 45/47] fbdev/vesafb: Use fbdev I/O helpers
2023-08-01 10:13 [PATCH v2 00/47] fbdev: Use I/O helpers Thomas Zimmermann
` (43 preceding siblings ...)
2023-08-01 10:13 ` [PATCH v2 44/47] fbdev/valkyriefb: " Thomas Zimmermann
@ 2023-08-01 10:13 ` Thomas Zimmermann
2023-08-01 10:13 ` [PATCH v2 46/47] fbdev/xilinxfb: " Thomas Zimmermann
2023-08-01 10:13 ` [PATCH v2 47/47] vfio-dev/mdpy-fb: " Thomas Zimmermann
46 siblings, 0 replies; 51+ messages in thread
From: Thomas Zimmermann @ 2023-08-01 10:13 UTC (permalink / raw)
To: deller, javierm, sam
Cc: linux-media, linux-fbdev, dri-devel, linux-arm-kernel,
linux-geode, linux-omap, kvm, Thomas Zimmermann
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@suse.de>
Reviewed-by: Sam Ravnborg <sam@ravnborg.org>
Acked-by: Helge Deller <deller@gmx.de>
---
drivers/video/fbdev/Kconfig | 4 +---
drivers/video/fbdev/vesafb.c | 4 +---
2 files changed, 2 insertions(+), 6 deletions(-)
diff --git a/drivers/video/fbdev/Kconfig b/drivers/video/fbdev/Kconfig
index b8395ff04f98..29e59979b2bd 100644
--- a/drivers/video/fbdev/Kconfig
+++ b/drivers/video/fbdev/Kconfig
@@ -453,9 +453,7 @@ config FB_VESA
bool "VESA VGA graphics support"
depends on (FB = y) && X86
select APERTURE_HELPERS
- select FB_CFB_FILLRECT
- select FB_CFB_COPYAREA
- select FB_CFB_IMAGEBLIT
+ select FB_IOMEM_HELPERS
select SYSFB
help
This is the frame buffer device driver for generic VESA 2.0
diff --git a/drivers/video/fbdev/vesafb.c b/drivers/video/fbdev/vesafb.c
index 422a1c53decd..c0edceea0a79 100644
--- a/drivers/video/fbdev/vesafb.c
+++ b/drivers/video/fbdev/vesafb.c
@@ -201,12 +201,10 @@ static void vesafb_destroy(struct fb_info *info)
static struct fb_ops vesafb_ops = {
.owner = THIS_MODULE,
+ FB_DEFAULT_IOMEM_OPS,
.fb_destroy = vesafb_destroy,
.fb_setcolreg = vesafb_setcolreg,
.fb_pan_display = vesafb_pan_display,
- .fb_fillrect = cfb_fillrect,
- .fb_copyarea = cfb_copyarea,
- .fb_imageblit = cfb_imageblit,
};
static int vesafb_setup(char *options)
--
2.41.0
^ permalink raw reply related [flat|nested] 51+ messages in thread
* [PATCH v2 46/47] fbdev/xilinxfb: Use fbdev I/O helpers
2023-08-01 10:13 [PATCH v2 00/47] fbdev: Use I/O helpers Thomas Zimmermann
` (44 preceding siblings ...)
2023-08-01 10:13 ` [PATCH v2 45/47] fbdev/vesafb: " Thomas Zimmermann
@ 2023-08-01 10:13 ` Thomas Zimmermann
2023-08-01 10:13 ` [PATCH v2 47/47] vfio-dev/mdpy-fb: " Thomas Zimmermann
46 siblings, 0 replies; 51+ messages in thread
From: Thomas Zimmermann @ 2023-08-01 10:13 UTC (permalink / raw)
To: deller, javierm, sam
Cc: linux-media, linux-fbdev, dri-devel, linux-arm-kernel,
linux-geode, linux-omap, kvm, Thomas Zimmermann, Michal Simek
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@suse.de>
Reviewed-by: Sam Ravnborg <sam@ravnborg.org>
Acked-by: Helge Deller <deller@gmx.de>
Cc: Michal Simek <michal.simek@amd.com>
---
drivers/video/fbdev/Kconfig | 4 +---
drivers/video/fbdev/xilinxfb.c | 4 +---
2 files changed, 2 insertions(+), 6 deletions(-)
diff --git a/drivers/video/fbdev/Kconfig b/drivers/video/fbdev/Kconfig
index 29e59979b2bd..5d93ecc01f6a 100644
--- a/drivers/video/fbdev/Kconfig
+++ b/drivers/video/fbdev/Kconfig
@@ -1742,9 +1742,7 @@ config FB_PS3_DEFAULT_SIZE_M
config FB_XILINX
tristate "Xilinx frame buffer support"
depends on FB && (MICROBLAZE || ARCH_ZYNQ || ARCH_ZYNQMP)
- select FB_CFB_FILLRECT
- select FB_CFB_COPYAREA
- select FB_CFB_IMAGEBLIT
+ select FB_IOMEM_HELPERS
help
Include support for the Xilinx ML300/ML403 reference design
framebuffer. ML300 carries a 640*480 LCD display on the board,
diff --git a/drivers/video/fbdev/xilinxfb.c b/drivers/video/fbdev/xilinxfb.c
index ee6c65902694..33d20910cb41 100644
--- a/drivers/video/fbdev/xilinxfb.c
+++ b/drivers/video/fbdev/xilinxfb.c
@@ -250,11 +250,9 @@ xilinx_fb_blank(int blank_mode, struct fb_info *fbi)
static const struct fb_ops xilinxfb_ops = {
.owner = THIS_MODULE,
+ FB_DEFAULT_IOMEM_OPS,
.fb_setcolreg = xilinx_fb_setcolreg,
.fb_blank = xilinx_fb_blank,
- .fb_fillrect = cfb_fillrect,
- .fb_copyarea = cfb_copyarea,
- .fb_imageblit = cfb_imageblit,
};
/* ---------------------------------------------------------------------
--
2.41.0
^ permalink raw reply related [flat|nested] 51+ messages in thread
* [PATCH v2 47/47] vfio-dev/mdpy-fb: Use fbdev I/O helpers
2023-08-01 10:13 [PATCH v2 00/47] fbdev: Use I/O helpers Thomas Zimmermann
` (45 preceding siblings ...)
2023-08-01 10:13 ` [PATCH v2 46/47] fbdev/xilinxfb: " Thomas Zimmermann
@ 2023-08-01 10:13 ` Thomas Zimmermann
46 siblings, 0 replies; 51+ messages in thread
From: Thomas Zimmermann @ 2023-08-01 10:13 UTC (permalink / raw)
To: deller, javierm, sam
Cc: linux-media, linux-fbdev, dri-devel, linux-arm-kernel,
linux-geode, linux-omap, kvm, Thomas Zimmermann, Kirti Wankhede
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@suse.de>
Reviewed-by: Sam Ravnborg <sam@ravnborg.org>
Acked-by: Helge Deller <deller@gmx.de>
Cc: Kirti Wankhede <kwankhede@nvidia.com>
---
samples/Kconfig | 4 +---
samples/vfio-mdev/mdpy-fb.c | 4 +---
2 files changed, 2 insertions(+), 6 deletions(-)
diff --git a/samples/Kconfig b/samples/Kconfig
index bf49ed0d7362..b0ddf5f36738 100644
--- a/samples/Kconfig
+++ b/samples/Kconfig
@@ -210,9 +210,7 @@ config SAMPLE_VFIO_MDEV_MDPY
config SAMPLE_VFIO_MDEV_MDPY_FB
tristate "Build VFIO mdpy example guest fbdev driver"
depends on FB
- select FB_CFB_FILLRECT
- select FB_CFB_COPYAREA
- select FB_CFB_IMAGEBLIT
+ select FB_IOMEM_HELPERS
help
Guest fbdev driver for the virtual display sample driver.
diff --git a/samples/vfio-mdev/mdpy-fb.c b/samples/vfio-mdev/mdpy-fb.c
index cda477b28685..4598bc28acd9 100644
--- a/samples/vfio-mdev/mdpy-fb.c
+++ b/samples/vfio-mdev/mdpy-fb.c
@@ -88,11 +88,9 @@ static void mdpy_fb_destroy(struct fb_info *info)
static const struct fb_ops mdpy_fb_ops = {
.owner = THIS_MODULE,
+ FB_DEFAULT_IOMEM_OPS,
.fb_destroy = mdpy_fb_destroy,
.fb_setcolreg = mdpy_fb_setcolreg,
- .fb_fillrect = cfb_fillrect,
- .fb_copyarea = cfb_copyarea,
- .fb_imageblit = cfb_imageblit,
};
static int mdpy_fb_probe(struct pci_dev *pdev,
--
2.41.0
^ permalink raw reply related [flat|nested] 51+ messages in thread
* Re: [PATCH v2 01/47] media/vivid: Use fbdev I/O helpers
2023-08-01 10:13 ` [PATCH v2 01/47] media/vivid: Use fbdev " Thomas Zimmermann
@ 2023-08-01 11:22 ` Hans Verkuil
2023-08-01 16:54 ` Thomas Zimmermann
0 siblings, 1 reply; 51+ messages in thread
From: Hans Verkuil @ 2023-08-01 11:22 UTC (permalink / raw)
To: Thomas Zimmermann, deller, javierm, sam
Cc: linux-media, linux-fbdev, dri-devel, linux-arm-kernel,
linux-geode, linux-omap, kvm, Mauro Carvalho Chehab
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@suse.de>
> Reviewed-by: Sam Ravnborg <sam@ravnborg.org>
> Acked-by: Helge Deller <deller@gmx.de>
> Cc: Hans Verkuil <hverkuil@xs4all.nl>
> Cc: Mauro Carvalho Chehab <mchehab@kernel.org>
> ---
> 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@suse.de/#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,
^ permalink raw reply [flat|nested] 51+ messages in thread
* Re: [PATCH v2 01/47] media/vivid: Use fbdev I/O helpers
2023-08-01 11:22 ` Hans Verkuil
@ 2023-08-01 16:54 ` Thomas Zimmermann
2023-08-02 7:34 ` Hans Verkuil
0 siblings, 1 reply; 51+ messages in thread
From: Thomas Zimmermann @ 2023-08-01 16:54 UTC (permalink / raw)
To: Hans Verkuil, deller, javierm, sam
Cc: linux-media, linux-fbdev, dri-devel, linux-arm-kernel,
linux-geode, linux-omap, kvm, Mauro Carvalho Chehab
[-- Attachment #1.1: Type: text/plain, Size: 3664 bytes --]
Hi
Am 01.08.23 um 13:22 schrieb Hans Verkuil:
> 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@suse.de>
>> Reviewed-by: Sam Ravnborg <sam@ravnborg.org>
>> Acked-by: Helge Deller <deller@gmx.de>
>> Cc: Hans Verkuil <hverkuil@xs4all.nl>
>> Cc: Mauro Carvalho Chehab <mchehab@kernel.org>
>> ---
>> 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@suse.de/#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?
That change is intentional and welcome. If no fb_read/fb_write pointers
are given fbdev uses them as their default. See
https://elixir.bootlin.com/linux/v6.5-rc1/source/drivers/video/fbdev/core/fbmem.c#L773
and below. Once all drivers set these pointers explicitly, we can drop
the default and make the helpers optional and modular. For the drivers
in this patchset there's no functional change.
Best regards
Thomas
>
> 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,
>
--
Thomas Zimmermann
Graphics Driver Developer
SUSE Software Solutions Germany GmbH
Frankenstrasse 146, 90461 Nuernberg, Germany
GF: Ivo Totev, Andrew Myers, Andrew McDonald, Boudien Moerman
HRB 36809 (AG Nuernberg)
[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 840 bytes --]
^ permalink raw reply [flat|nested] 51+ messages in thread
* Re: [PATCH v2 01/47] media/vivid: Use fbdev I/O helpers
2023-08-01 16:54 ` Thomas Zimmermann
@ 2023-08-02 7:34 ` Hans Verkuil
0 siblings, 0 replies; 51+ messages in thread
From: Hans Verkuil @ 2023-08-02 7:34 UTC (permalink / raw)
To: Thomas Zimmermann, deller, javierm, sam
Cc: linux-media, linux-fbdev, dri-devel, linux-arm-kernel,
linux-geode, linux-omap, kvm, Mauro Carvalho Chehab
On 01/08/2023 18:54, Thomas Zimmermann wrote:
> Hi
>
> Am 01.08.23 um 13:22 schrieb Hans Verkuil:
>> 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@suse.de>
>>> Reviewed-by: Sam Ravnborg <sam@ravnborg.org>
>>> Acked-by: Helge Deller <deller@gmx.de>
>>> Cc: Hans Verkuil <hverkuil@xs4all.nl>
>>> Cc: Mauro Carvalho Chehab <mchehab@kernel.org>
>>> ---
>>> 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@suse.de/#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?
>
> That change is intentional and welcome. If no fb_read/fb_write pointers are given fbdev uses them as their default. See
>
>
> https://elixir.bootlin.com/linux/v6.5-rc1/source/drivers/video/fbdev/core/fbmem.c#L773
>
> and below. Once all drivers set these pointers explicitly, we can drop the default and make the helpers optional and modular. For the drivers in this patchset there's no functional change.
Ah, that explains it!
I wonder if it wouldn't be a good idea to include that information in the commit log.
In any case, for this patch:
Reviewed-by: Hans Verkuil <hverkuil-cisco@xs4all.nl>
Regards,
Hans
>
> Best regards
> Thomas
>
>>
>> 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,
>>
>
^ permalink raw reply [flat|nested] 51+ messages in thread
end of thread, other threads:[~2023-08-02 7:35 UTC | newest]
Thread overview: 51+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2023-08-01 10:13 [PATCH v2 00/47] fbdev: Use I/O helpers Thomas Zimmermann
2023-08-01 10:13 ` [PATCH v2 01/47] media/vivid: Use fbdev " Thomas Zimmermann
2023-08-01 11:22 ` Hans Verkuil
2023-08-01 16:54 ` Thomas Zimmermann
2023-08-02 7:34 ` Hans Verkuil
2023-08-01 10:13 ` [PATCH v2 02/47] fbdev/acornfb: " Thomas Zimmermann
2023-08-01 10:13 ` [PATCH v2 03/47] fbdev/asiliantfb: " Thomas Zimmermann
2023-08-01 10:13 ` [PATCH v2 04/47] fbdev/atmel_lcdfb: " Thomas Zimmermann
2023-08-01 10:13 ` [PATCH v2 05/47] fbdev/aty128fb: " Thomas Zimmermann
2023-08-01 10:13 ` [PATCH v2 06/47] fbdev/carminefb: " Thomas Zimmermann
2023-08-01 10:13 ` [PATCH v2 07/47] fbdev/chipsfb: " Thomas Zimmermann
2023-08-01 10:13 ` [PATCH v2 08/47] fbdev/da8xx-fb: " Thomas Zimmermann
2023-08-01 10:13 ` [PATCH v2 09/47] fbdev/efifb: " Thomas Zimmermann
2023-08-01 10:13 ` [PATCH v2 10/47] fbdev/fm2fb: " Thomas Zimmermann
2023-08-01 10:13 ` [PATCH v2 11/47] fbdev/fsl-diu-fb: " Thomas Zimmermann
2023-08-01 10:13 ` [PATCH v2 12/47] fbdev/g364fb: " Thomas Zimmermann
2023-08-01 10:13 ` [PATCH v2 13/47] fbdev/geode/gx1fb: " Thomas Zimmermann
2023-08-01 10:13 ` [PATCH v2 14/47] fbdev/geode/gxfb: " Thomas Zimmermann
2023-08-01 10:13 ` [PATCH v2 15/47] fbdev/geode/lxfb: " Thomas Zimmermann
2023-08-01 10:13 ` [PATCH v2 16/47] fbdev/goldfishfb: " Thomas Zimmermann
2023-08-01 10:13 ` [PATCH v2 17/47] fbdev/grvga: " Thomas Zimmermann
2023-08-01 10:13 ` [PATCH v2 18/47] fbdev/gxt4500: " Thomas Zimmermann
2023-08-01 10:13 ` [PATCH v2 19/47] fbdev/i740fb: " Thomas Zimmermann
2023-08-01 10:13 ` [PATCH v2 20/47] fbdev/imxfb: " Thomas Zimmermann
2023-08-01 10:13 ` [PATCH v2 21/47] fbdev/kyro: " Thomas Zimmermann
2023-08-01 10:13 ` [PATCH v2 22/47] fbdev/macfb: " Thomas Zimmermann
2023-08-01 10:13 ` [PATCH v2 23/47] fbdev/maxinefb: " Thomas Zimmermann
2023-08-01 10:13 ` [PATCH v2 24/47] fbdev/mb862xxfb: " Thomas Zimmermann
2023-08-01 10:13 ` [PATCH v2 25/47] fbdev/mmpfb: " Thomas Zimmermann
2023-08-01 10:13 ` [PATCH v2 26/47] fbdev/mx3fb: " Thomas Zimmermann
2023-08-01 10:13 ` [PATCH v2 27/47] fbdev/ocfb: " Thomas Zimmermann
2023-08-01 10:13 ` [PATCH v2 28/47] fbdev/offb: " Thomas Zimmermann
2023-08-01 10:13 ` [PATCH v2 29/47] fbdev/omapfb: " Thomas Zimmermann
2023-08-01 10:13 ` [PATCH v2 30/47] fbdev/platinumfb: " Thomas Zimmermann
2023-08-01 10:13 ` [PATCH v2 31/47] fbdev/pmag-aa-fb: " Thomas Zimmermann
2023-08-01 10:13 ` [PATCH v2 32/47] fbdev/pmag-ba-fb: " Thomas Zimmermann
2023-08-01 10:13 ` [PATCH v2 33/47] fbdev/pmagb-b-fb: " Thomas Zimmermann
2023-08-01 10:13 ` [PATCH v2 34/47] fbdev/pxa168fb: " Thomas Zimmermann
2023-08-01 10:13 ` [PATCH v2 35/47] fbdev/pxafb: " Thomas Zimmermann
2023-08-01 10:13 ` [PATCH v2 36/47] fbdev/q40fb: " Thomas Zimmermann
2023-08-01 10:13 ` [PATCH v2 37/47] fbdev/s3cfb: " Thomas Zimmermann
2023-08-01 10:13 ` [PATCH v2 38/47] fbdev/sh7760fb: " Thomas Zimmermann
2023-08-01 10:13 ` [PATCH v2 39/47] fbdev/simplefb: " Thomas Zimmermann
2023-08-01 10:13 ` [PATCH v2 40/47] fbdev/sstfb: " Thomas Zimmermann
2023-08-01 10:13 ` [PATCH v2 41/47] fbdev/sunxvr1000: " Thomas Zimmermann
2023-08-01 10:13 ` [PATCH v2 42/47] fbdev/sunxvr2500: " Thomas Zimmermann
2023-08-01 10:13 ` [PATCH v2 43/47] fbdev/uvesafb: " Thomas Zimmermann
2023-08-01 10:13 ` [PATCH v2 44/47] fbdev/valkyriefb: " Thomas Zimmermann
2023-08-01 10:13 ` [PATCH v2 45/47] fbdev/vesafb: " Thomas Zimmermann
2023-08-01 10:13 ` [PATCH v2 46/47] fbdev/xilinxfb: " Thomas Zimmermann
2023-08-01 10:13 ` [PATCH v2 47/47] vfio-dev/mdpy-fb: " Thomas Zimmermann
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).