
On Sun, Jun 11, 2017 at 1:59 AM, Simon Glass sjg@chromium.org wrote:
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
Changes in v2:
- Update the code to be more testable
- Avoid a warning on spring, etc.
cmd/version.c | 4 +++- include/display_options.h | 19 +++++++++++++++++++ lib/display_options.c | 36 +++++++++++++++++++++++++++++++----- 3 files changed, 53 insertions(+), 6 deletions(-)
Reviewed-by: Bin Meng bmeng.cn@gmail.com
One nits below.
diff --git a/cmd/version.c b/cmd/version.c index 1be0667f09..15aab5dc18 100644 --- a/cmd/version.c +++ b/cmd/version.c @@ -17,7 +17,9 @@ const char __weak version_string[] = U_BOOT_VERSION_STRING;
static int do_version(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[]) {
printf("\n%s\n", version_string);
char buf[DISPLAY_OPTIONS_BANNER_LENGTH];
printf(display_options_get_banner(false, buf, sizeof(buf)));
#ifdef CC_VERSION_STRING puts(CC_VERSION_STRING "\n"); #endif diff --git a/include/display_options.h b/include/display_options.h index ac44c459b3..ad707a344c 100644 --- a/include/display_options.h +++ b/include/display_options.h @@ -56,4 +56,23 @@ int print_buffer(ulong addr, const void *data, uint width, uint count, */ int display_options(void);
+/* Suggested length of the buffer to pass to display_options_get_banner() */ +#define DISPLAY_OPTIONS_BANNER_LENGTH 200
+/**
- display_options_get_banner() - Get the U-Boot banner as a string
- This returns the U-Boot banner string
- @newlines: true to include two newlines at the start
- @buf: place to put string
- @size: Size of buf (string is truncated to fit)
- @return buf
- */
+char *display_options_get_banner(bool newlines, char *buf, int size);
+/** This function is used for testing only */
nits: should be /*
[snip]
Regards, Bin