mbox series

[v4,0/3] Fix regression introduced by disabling accelerated scrolling in fbcon

Message ID 20220202135531.92183-1-deller@gmx.de (mailing list archive)
Headers show
Series Fix regression introduced by disabling accelerated scrolling in fbcon | expand

Message

Helge Deller Feb. 2, 2022, 1:55 p.m. UTC
This series reverts two patches which disabled scrolling acceleration in
fbcon/fbdev. Those patches introduced a regression for fbdev-supported graphic
cards because of the performance penalty by doing screen scrolling by software
instead of using existing 2D hardware acceleration.

The third patch introduces a new config option
CONFIG_FRAMEBUFFER_CONSOLE_LEGACY_ACCELERATION, which -if enabled- switches
fbcon to utilize the bitblt and fillrect hardware acceleration in the
framebuffer console. If disabled, such acceleration will not be used, even if
it is supported by the graphics hardware driver.

This series is being discussed on linux-fbdev and dri-devel mailing lists.

Updates in v3:
- respin with fixes to build rotation code

Updates in v4:
- changed the Kconfig option and Kconfig help text

Helge Deller (3):
  Revert "fbdev: Garbage collect fbdev scrolling acceleration, part 1
    (from TODO list)"
  Revert "fbcon: Disable accelerated scrolling"
  fbcon: Add option to enable legacy hardware acceleration

 Documentation/gpu/todo.rst              |  24 -
 drivers/video/console/Kconfig           |  20 +
 drivers/video/fbdev/core/bitblit.c      |  16 +
 drivers/video/fbdev/core/fbcon.c        | 557 +++++++++++++++++++++++-
 drivers/video/fbdev/core/fbcon.h        |  72 +++
 drivers/video/fbdev/core/fbcon_ccw.c    |  28 +-
 drivers/video/fbdev/core/fbcon_cw.c     |  28 +-
 drivers/video/fbdev/core/fbcon_rotate.h |   9 +
 drivers/video/fbdev/core/fbcon_ud.c     |  37 +-
 drivers/video/fbdev/core/tileblit.c     |  16 +
 drivers/video/fbdev/skeletonfb.c        |  12 +-
 include/linux/fb.h                      |   2 +-
 12 files changed, 753 insertions(+), 68 deletions(-)

Comments

Daniel Vetter Feb. 2, 2022, 3 p.m. UTC | #1
On Wed, Feb 02, 2022 at 02:55:28PM +0100, Helge Deller wrote:
> This series reverts two patches which disabled scrolling acceleration in
> fbcon/fbdev. Those patches introduced a regression for fbdev-supported graphic
> cards because of the performance penalty by doing screen scrolling by software
> instead of using existing 2D hardware acceleration.
> 
> The third patch introduces a new config option
> CONFIG_FRAMEBUFFER_CONSOLE_LEGACY_ACCELERATION, which -if enabled- switches
> fbcon to utilize the bitblt and fillrect hardware acceleration in the
> framebuffer console. If disabled, such acceleration will not be used, even if
> it is supported by the graphics hardware driver.
> 
> This series is being discussed on linux-fbdev and dri-devel mailing lists.
> 
> Updates in v3:
> - respin with fixes to build rotation code
> 
> Updates in v4:
> - changed the Kconfig option and Kconfig help text
> 
> Helge Deller (3):
>   Revert "fbdev: Garbage collect fbdev scrolling acceleration, part 1
>     (from TODO list)"
>   Revert "fbcon: Disable accelerated scrolling"
>   fbcon: Add option to enable legacy hardware acceleration

Applied to drm-misc-fixes, thanks for the patches.

Cheers, Daniel

> 
>  Documentation/gpu/todo.rst              |  24 -
>  drivers/video/console/Kconfig           |  20 +
>  drivers/video/fbdev/core/bitblit.c      |  16 +
>  drivers/video/fbdev/core/fbcon.c        | 557 +++++++++++++++++++++++-
>  drivers/video/fbdev/core/fbcon.h        |  72 +++
>  drivers/video/fbdev/core/fbcon_ccw.c    |  28 +-
>  drivers/video/fbdev/core/fbcon_cw.c     |  28 +-
>  drivers/video/fbdev/core/fbcon_rotate.h |   9 +
>  drivers/video/fbdev/core/fbcon_ud.c     |  37 +-
>  drivers/video/fbdev/core/tileblit.c     |  16 +
>  drivers/video/fbdev/skeletonfb.c        |  12 +-
>  include/linux/fb.h                      |   2 +-
>  12 files changed, 753 insertions(+), 68 deletions(-)
> 
> -- 
> 2.34.1
>