Re: [PATCH RESEND 00/13] fbdev: core: Deduplicate cfb/sys drawing fbops

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 2/7/25 05:18, Zsolt Kajtar wrote:
In 68648ed1f58d98b8e8d994022e5e25331fbfe42a the drawing routines were
duplicated to have separate I/O and system memory versions.

Later the pixel reversing in 779121e9f17525769c04a00475fd85600c8c04eb
was only added to the I/O version and not to system.

That's unfortunate as reversing is not something only applicable for
I/O memory and I happen to need both I/O and system version now.

One option is to bring the system version up to date, but from the
maintenance perspective it's better to not have two versions in the
first place.

The drawing routines (based on the cfb version) were moved to header
files. These are now included in both cfb and sys modules. The memory
access and other minor differences were handled with a few macros.

The last patch adds a separate config option for the system version.

Zsolt Kajtar (13):
   fbdev: core: Copy cfbcopyarea to fb_copyarea
   fbdev: core: Make fb_copyarea generic
   fbdev: core: Use generic copyarea for as cfb_copyarea
   fbdev: core: Use generic copyarea for as sys_copyarea
   fbdev: core: Copy cfbfillrect to fb_fillrect
   fbdev: core: Make fb_fillrect generic
   fbdev: core: Use generic fillrect for as cfb_fillrect
   fbdev: core: Use generic fillrect for as sys_fillrect
   fbdev: core: Copy cfbimgblt to fb_imageblit
   fbdev: core: Make fb_imageblit generic
   fbdev: core: Use generic imageblit for as cfb_imageblit
   fbdev: core: Use generic imageblit for as sys_imageblit
   fbdev: core: Split CFB and SYS pixel reversing configuration

  drivers/video/fbdev/core/Kconfig        |  10 +-
  drivers/video/fbdev/core/cfbcopyarea.c  | 427 +-----------------------
  drivers/video/fbdev/core/cfbfillrect.c  | 363 +-------------------
  drivers/video/fbdev/core/cfbimgblt.c    | 358 +-------------------
  drivers/video/fbdev/core/fb_copyarea.h  | 421 +++++++++++++++++++++++
  drivers/video/fbdev/core/fb_draw.h      |   6 +-
  drivers/video/fbdev/core/fb_fillrect.h  | 359 ++++++++++++++++++++
  drivers/video/fbdev/core/fb_imageblit.h | 356 ++++++++++++++++++++
  drivers/video/fbdev/core/syscopyarea.c  | 358 +-------------------
  drivers/video/fbdev/core/sysfillrect.c  | 315 +----------------
  drivers/video/fbdev/core/sysimgblt.c    | 326 +-----------------
  11 files changed, 1208 insertions(+), 2091 deletions(-)
  create mode 100644 drivers/video/fbdev/core/fb_copyarea.h
  create mode 100644 drivers/video/fbdev/core/fb_fillrect.h
  create mode 100644 drivers/video/fbdev/core/fb_imageblit.h

It's a bigger change.
I've applied the series to the fbdev for-next git tree to give
it some compile- and runtime testing.

Helge




[Index of Archives]     [Linux DRI Users]     [Linux Intel Graphics]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [XFree86]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [XFree86]
  Powered by Linux