[U-Boot] [PATCH v2 1/3] display_options: Refactor to allow obtaining the banner
Bin Meng
bmeng.cn at gmail.com
Mon Jun 12 15:13:12 UTC 2017
On Sun, Jun 11, 2017 at 1:59 AM, Simon Glass <sjg at 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 at 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 at 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
More information about the U-Boot
mailing list