splash: fix splash banner output
Old splash code in cfb_console driver displayed U-Boot version string by default. Restore this behaviour for DM_VIDEO enabled configurations. Signed-off-by: Anatolij Gustschin <agust@denx.de> Reported-by: Fabio Estevam <festevam@gmail.com>
This commit is contained in:
parent
8eba739716
commit
d2a8271c88
@ -112,6 +112,42 @@ void splash_get_pos(int *x, int *y)
|
|||||||
}
|
}
|
||||||
#endif /* CONFIG_SPLASH_SCREEN_ALIGN */
|
#endif /* CONFIG_SPLASH_SCREEN_ALIGN */
|
||||||
|
|
||||||
|
#if defined(CONFIG_DM_VIDEO) && !defined(CONFIG_HIDE_LOGO_VERSION)
|
||||||
|
|
||||||
|
#ifdef CONFIG_VIDEO_LOGO
|
||||||
|
#include <bmp_logo.h>
|
||||||
|
#endif
|
||||||
|
#include <dm.h>
|
||||||
|
#include <video_console.h>
|
||||||
|
#include <video_font.h>
|
||||||
|
|
||||||
|
void splash_display_banner(void)
|
||||||
|
{
|
||||||
|
struct udevice *dev;
|
||||||
|
char buf[DISPLAY_OPTIONS_BANNER_LENGTH];
|
||||||
|
int col, row, ret;
|
||||||
|
|
||||||
|
ret = uclass_get_device(UCLASS_VIDEO_CONSOLE, 0, &dev);
|
||||||
|
if (ret)
|
||||||
|
return;
|
||||||
|
|
||||||
|
#ifdef CONFIG_VIDEO_LOGO
|
||||||
|
col = BMP_LOGO_WIDTH / VIDEO_FONT_WIDTH + 1;
|
||||||
|
row = BMP_LOGO_HEIGHT / VIDEO_FONT_HEIGHT + 1;
|
||||||
|
#else
|
||||||
|
col = 0;
|
||||||
|
row = 0;
|
||||||
|
#endif
|
||||||
|
|
||||||
|
display_options_get_banner(false, buf, sizeof(buf));
|
||||||
|
vidconsole_position_cursor(dev, col, 1);
|
||||||
|
vidconsole_put_string(dev, buf);
|
||||||
|
vidconsole_position_cursor(dev, 0, row);
|
||||||
|
}
|
||||||
|
#else
|
||||||
|
static inline void splash_display_banner(void) { }
|
||||||
|
#endif /* CONFIG_DM_VIDEO && !CONFIG_HIDE_LOGO_VERSION */
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Common function to show a splash image if env("splashimage") is set.
|
* Common function to show a splash image if env("splashimage") is set.
|
||||||
* Is used for both dm_video and lcd video stacks. For additional
|
* Is used for both dm_video and lcd video stacks. For additional
|
||||||
@ -135,6 +171,14 @@ int splash_display(void)
|
|||||||
|
|
||||||
splash_get_pos(&x, &y);
|
splash_get_pos(&x, &y);
|
||||||
|
|
||||||
return bmp_display(addr, x, y);
|
ret = bmp_display(addr, x, y);
|
||||||
|
|
||||||
|
/* Skip banner output on video console if the logo is not at 0,0 */
|
||||||
|
if (x || y)
|
||||||
|
goto end;
|
||||||
|
|
||||||
|
splash_display_banner();
|
||||||
|
end:
|
||||||
|
return ret;
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
Loading…
Reference in New Issue
Block a user