[U-Boot] [PATCH] video: Fix splash screen alignment

Simon Glass sjg at chromium.org
Thu Feb 28 02:14:36 CET 2013


On Fri, Feb 15, 2013 at 5:35 AM, Matthias Weisser <weisserm at arcor.de> wrote:
> commit d484b52 "video: Skip bitmaps which do not fit into the screen in
> cfb_console" breaks splash screen alignment which is passed in as magic
> (BMP_ALIGN_CENTER) x/y coordinates. Moving the check after the alignment block
> fixes this.
>
> Signed-off-by: Matthias Weisser <weisserm at arcor.de>

Acked-by: Simon Glass <sjg at chromium.org>

> ---
>  drivers/video/cfb_console.c |   14 +++++++-------
>  1 file changed, 7 insertions(+), 7 deletions(-)
>
> diff --git a/drivers/video/cfb_console.c b/drivers/video/cfb_console.c
> index 26f673a..61e1058 100644
> --- a/drivers/video/cfb_console.c
> +++ b/drivers/video/cfb_console.c
> @@ -1515,13 +1515,6 @@ int video_display_bitmap(ulong bmp_image, int x, int y)
>
>         padded_line = (((width * bpp + 7) / 8) + 3) & ~0x3;
>
> -       /*
> -        * Just ignore elements which are completely beyond screen
> -        * dimensions.
> -        */
> -       if ((x >= VIDEO_VISIBLE_COLS) || (y >= VIDEO_VISIBLE_ROWS))
> -               return 0;
> -
>  #ifdef CONFIG_SPLASH_SCREEN_ALIGN
>         if (x == BMP_ALIGN_CENTER)
>                 x = max(0, (VIDEO_VISIBLE_COLS - width) / 2);
> @@ -1534,6 +1527,13 @@ int video_display_bitmap(ulong bmp_image, int x, int y)
>                 y = max(0, VIDEO_VISIBLE_ROWS - height + y + 1);
>  #endif /* CONFIG_SPLASH_SCREEN_ALIGN */
>
> +       /*
> +        * Just ignore elements which are completely beyond screen
> +        * dimensions.
> +        */
> +       if ((x >= VIDEO_VISIBLE_COLS) || (y >= VIDEO_VISIBLE_ROWS))
> +               return 0;
> +
>         if ((x + width) > VIDEO_VISIBLE_COLS)
>                 width = VIDEO_VISIBLE_COLS - x;
>         if ((y + height) > VIDEO_VISIBLE_ROWS)
> --
> 1.7.9.5
>


More information about the U-Boot mailing list