[U-Boot] [PATCH v3 09/14] log: Add a 'log level' command

Lukasz Majewski lukma at denx.de
Tue Nov 21 09:58:03 UTC 2017


On Mon, 20 Nov 2017 15:33:30 -0700
Simon Glass <sjg at chromium.org> wrote:

> Add a command for adjusting the log level.
> 

Reviewed-by: Lukasz Majewski <lukma at denx.de>

> Signed-off-by: Simon Glass <sjg at chromium.org>
> Reviewed-by: Bin Meng <bmeng.cn at gmail.com>
> ---
> 
> Changes in v3: None
> Changes in v2: None
> 
>  cmd/Kconfig  |  7 +++++++
>  cmd/Makefile |  1 +
>  cmd/log.c    | 55
> +++++++++++++++++++++++++++++++++++++++++++++++++++++++ 3 files
> changed, 63 insertions(+) create mode 100644 cmd/log.c
> 
> diff --git a/cmd/Kconfig b/cmd/Kconfig
> index 5a6afab99b7..b745a7e977a 100644
> --- a/cmd/Kconfig
> +++ b/cmd/Kconfig
> @@ -1502,6 +1502,13 @@ config CMD_KGDB
>  	  single-stepping, inspecting variables, etc. This is
> supported only on PowerPC at present.
>  
> +config CMD_LOG
> +	bool "log - Generation, control and access to logging"
> +	help
> +	  This provides access to logging features. It allows the
> output of
> +	  log data to be controlled to a limited extent (setting up
> the default
> +	  maximum log level for emitting of records).
> +
>  config CMD_TRACE
>  	bool "trace - Support tracing of function calls and timing"
>  	help
> diff --git a/cmd/Makefile b/cmd/Makefile
> index f9eb76090d6..00e38696daa 100644
> --- a/cmd/Makefile
> +++ b/cmd/Makefile
> @@ -76,6 +76,7 @@ obj-$(CONFIG_LED_STATUS_CMD) += legacy_led.o
>  obj-$(CONFIG_CMD_LED) += led.o
>  obj-$(CONFIG_CMD_LICENSE) += license.o
>  obj-y += load.o
> +obj-$(CONFIG_CMD_LOG) += log.o
>  obj-$(CONFIG_ID_EEPROM) += mac.o
>  obj-$(CONFIG_CMD_MD5SUM) += md5sum.o
>  obj-$(CONFIG_CMD_MEMORY) += mem.o
> diff --git a/cmd/log.c b/cmd/log.c
> new file mode 100644
> index 00000000000..44e04ab16a8
> --- /dev/null
> +++ b/cmd/log.c
> @@ -0,0 +1,55 @@
> +/*
> + * Copyright (c) 2017 Google, Inc
> + * Written by Simon Glass <sjg at chromium.org>
> + *
> + * SPDX-License-Identifier:     GPL-2.0+
> + */
> +
> +#include <common.h>
> +#include <command.h>
> +#include <dm.h>
> +#include <log.h>
> +
> +static int do_log_level(cmd_tbl_t *cmdtp, int flag, int argc,
> +			char * const argv[])
> +{
> +	if (argc > 1)
> +		gd->default_log_level = simple_strtol(argv[1], NULL,
> 10);
> +	else
> +		printf("Default log level: %d\n",
> gd->default_log_level); +
> +	return 0;
> +}
> +
> +static cmd_tbl_t log_sub[] = {
> +	U_BOOT_CMD_MKENT(level, CONFIG_SYS_MAXARGS, 1, do_log_level,
> "", ""), +};
> +
> +static int do_log(cmd_tbl_t *cmdtp, int flag, int argc, char * const
> argv[]) +{
> +	cmd_tbl_t *cp;
> +
> +	if (argc < 2)
> +		return CMD_RET_USAGE;
> +
> +	/* drop initial "log" arg */
> +	argc--;
> +	argv++;
> +
> +	cp = find_cmd_tbl(argv[0], log_sub, ARRAY_SIZE(log_sub));
> +	if (cp)
> +		return cp->cmd(cmdtp, flag, argc, argv);
> +
> +	return CMD_RET_USAGE;
> +}
> +
> +#ifdef CONFIG_SYS_LONGHELP
> +static char log_help_text[] =
> +	"level - get/set log level\n"
> +	;
> +#endif
> +
> +U_BOOT_CMD(
> +	log, CONFIG_SYS_MAXARGS, 1, do_log,
> +	"log system", log_help_text
> +);



Best regards,

Lukasz Majewski

--

DENX Software Engineering GmbH,      Managing Director: Wolfgang Denk
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
Phone: (+49)-8142-66989-10 Fax: (+49)-8142-66989-80 Email: wd at denx.de
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 488 bytes
Desc: OpenPGP digital signature
URL: <http://lists.denx.de/pipermail/u-boot/attachments/20171121/2dd759f5/attachment.sig>


More information about the U-Boot mailing list