[PATCH v4 7/9] video: Use VIDEO_DAMAGE for VIDEO_COPY
Simon Glass
sjg at chromium.org
Sat Jan 7 01:13:35 CET 2023
Hi Alexander,
On Tue, 3 Jan 2023 at 14:50, Alexander Graf <agraf at csgraf.de> wrote:
>
> CONFIG_VIDEO_COPY implemented a range based copying mechanism: If we
range-based
> print a single character, it will always copy the full range of bytes
> from the top left corner of the character to the lower right onto the
> uncached frame buffer. This includes pretty much the full line contents
> of the printed character.
>
> Since we now have proper damage tracking, let's make use of that to reduce
> the amount of data we need to copy. With this patch applied, we will only
> copy the tiny rectangle surrounding characters when we print them,
> speeding up the video console.
>
> As a bonus, we remove a lot of code.
>
> Signed-off-by: Alexander Graf <agraf at csgraf.de>
>
> ---
>
> v2 -> v3:
>
> - Rebase
> - Make CONFIG_COPY always select VIDEO_DAMAGE
> ---
> drivers/video/Kconfig | 5 ++
> drivers/video/console_normal.c | 14 +----
> drivers/video/console_rotate.c | 37 ++-----------
> drivers/video/console_truetype.c | 17 +-----
> drivers/video/vidconsole-uclass.c | 16 ------
> drivers/video/video-uclass.c | 91 ++++++++-----------------------
> drivers/video/video_bmp.c | 7 ---
> include/video.h | 37 -------------
> include/video_console.h | 49 -----------------
> 9 files changed, 37 insertions(+), 236 deletions(-)
>
This feature needs some tests in test/dm/video.c
For sandbox, I think you will need to allow it to be enabled /
disabled at runtime, so the some tests can use it and some not?
Regards,
Simon
More information about the U-Boot
mailing list