mirror of
https://xff.cz/git/u-boot/
synced 2025-09-01 08:42:12 +02:00
display_options: Refactor to allow obtaining the banner
Move the display options code into a separate function so that the U-Boot banner can be obtained from other code. Adjust the 'version' command to use it. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Bin Meng <bmeng.cn@gmail.com> Tested-by: Bin Meng <bmeng.cn@gmail.com> Tested-by: Stephen Warren <swarren@nvidia.com>
This commit is contained in:
@@ -13,13 +13,39 @@
|
||||
#include <linux/ctype.h>
|
||||
#include <asm/io.h>
|
||||
|
||||
int display_options (void)
|
||||
char *display_options_get_banner_priv(bool newlines, const char *build_tag,
|
||||
char *buf, int size)
|
||||
{
|
||||
#if defined(BUILD_TAG)
|
||||
printf ("\n\n%s, Build: %s\n\n", version_string, BUILD_TAG);
|
||||
#else
|
||||
printf ("\n\n%s\n\n", version_string);
|
||||
int len;
|
||||
|
||||
len = snprintf(buf, size, "%s%s", newlines ? "\n\n" : "",
|
||||
version_string);
|
||||
if (build_tag && len < size)
|
||||
len += snprintf(buf + len, size - len, ", Build: %s",
|
||||
build_tag);
|
||||
if (len > size - 3)
|
||||
len = size - 3;
|
||||
strcpy(buf + len, "\n\n");
|
||||
|
||||
return buf;
|
||||
}
|
||||
|
||||
#ifndef BUILD_TAG
|
||||
#define BUILD_TAG NULL
|
||||
#endif
|
||||
|
||||
char *display_options_get_banner(bool newlines, char *buf, int size)
|
||||
{
|
||||
return display_options_get_banner_priv(newlines, BUILD_TAG, buf, size);
|
||||
}
|
||||
|
||||
int display_options(void)
|
||||
{
|
||||
char buf[DISPLAY_OPTIONS_BANNER_LENGTH];
|
||||
|
||||
display_options_get_banner(true, buf, sizeof(buf));
|
||||
printf("%s", buf);
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
Reference in New Issue
Block a user