1*923fc48dSSimon Glass /* 2*923fc48dSSimon Glass * Copyright (c) 2017 Google, Inc 3*923fc48dSSimon Glass * Written by Simon Glass <sjg@chromium.org> 4*923fc48dSSimon Glass * 5*923fc48dSSimon Glass * SPDX-License-Identifier: GPL-2.0+ 6*923fc48dSSimon Glass */ 7*923fc48dSSimon Glass 8*923fc48dSSimon Glass #include <common.h> 9*923fc48dSSimon Glass #include <command.h> 10*923fc48dSSimon Glass #include <dm.h> 11*923fc48dSSimon Glass #include <log.h> 12*923fc48dSSimon Glass 13*923fc48dSSimon Glass static int do_log_level(cmd_tbl_t *cmdtp, int flag, int argc, 14*923fc48dSSimon Glass char * const argv[]) 15*923fc48dSSimon Glass { 16*923fc48dSSimon Glass if (argc > 1) 17*923fc48dSSimon Glass gd->default_log_level = simple_strtol(argv[1], NULL, 10); 18*923fc48dSSimon Glass else 19*923fc48dSSimon Glass printf("Default log level: %d\n", gd->default_log_level); 20*923fc48dSSimon Glass 21*923fc48dSSimon Glass return 0; 22*923fc48dSSimon Glass } 23*923fc48dSSimon Glass 24*923fc48dSSimon Glass static cmd_tbl_t log_sub[] = { 25*923fc48dSSimon Glass U_BOOT_CMD_MKENT(level, CONFIG_SYS_MAXARGS, 1, do_log_level, "", ""), 26*923fc48dSSimon Glass }; 27*923fc48dSSimon Glass 28*923fc48dSSimon Glass static int do_log(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[]) 29*923fc48dSSimon Glass { 30*923fc48dSSimon Glass cmd_tbl_t *cp; 31*923fc48dSSimon Glass 32*923fc48dSSimon Glass if (argc < 2) 33*923fc48dSSimon Glass return CMD_RET_USAGE; 34*923fc48dSSimon Glass 35*923fc48dSSimon Glass /* drop initial "log" arg */ 36*923fc48dSSimon Glass argc--; 37*923fc48dSSimon Glass argv++; 38*923fc48dSSimon Glass 39*923fc48dSSimon Glass cp = find_cmd_tbl(argv[0], log_sub, ARRAY_SIZE(log_sub)); 40*923fc48dSSimon Glass if (cp) 41*923fc48dSSimon Glass return cp->cmd(cmdtp, flag, argc, argv); 42*923fc48dSSimon Glass 43*923fc48dSSimon Glass return CMD_RET_USAGE; 44*923fc48dSSimon Glass } 45*923fc48dSSimon Glass 46*923fc48dSSimon Glass #ifdef CONFIG_SYS_LONGHELP 47*923fc48dSSimon Glass static char log_help_text[] = 48*923fc48dSSimon Glass "level - get/set log level\n" 49*923fc48dSSimon Glass ; 50*923fc48dSSimon Glass #endif 51*923fc48dSSimon Glass 52*923fc48dSSimon Glass U_BOOT_CMD( 53*923fc48dSSimon Glass log, CONFIG_SYS_MAXARGS, 1, do_log, 54*923fc48dSSimon Glass "log system", log_help_text 55*923fc48dSSimon Glass ); 56