diff options
author | Michal Simek <michal.simek@xilinx.com> | 2013-11-21 13:39:02 -0800 |
---|---|---|
committer | Michal Simek <michal.simek@xilinx.com> | 2014-02-04 16:32:20 +0100 |
commit | 08d0d6f32ecf75a6c5dede5fc9ee84b84d8b90e7 (patch) | |
tree | be8d95641cf786e62b8ca9c69469d582ddcad249 /common/cmd_clk.c | |
parent | 07e2822d158940a0e8ba45b6ab0344ffa1011a07 (diff) |
common: Add new clk command
Command provides just dump subcommand for showing clock
frequencies in a soc.
Signed-off-by: Michal Simek <michal.simek@xilinx.com>
Acked-by: Stefano Babic <sbabic@denx.de>
Diffstat (limited to 'common/cmd_clk.c')
-rw-r--r-- | common/cmd_clk.c | 51 |
1 files changed, 51 insertions, 0 deletions
diff --git a/common/cmd_clk.c b/common/cmd_clk.c new file mode 100644 index 00000000000..6d3d46a1844 --- /dev/null +++ b/common/cmd_clk.c @@ -0,0 +1,51 @@ +/* + * Copyright (C) 2013 Xilinx, Inc. + * + * SPDX-License-Identifier: GPL-2.0+ + */ +#include <common.h> +#include <command.h> +#include <clk.h> + +int __weak soc_clk_dump(void) +{ + puts("Not implemented\n"); + return 1; +} + +static int do_clk_dump(cmd_tbl_t *cmdtp, int flag, int argc, + char *const argv[]) +{ + return soc_clk_dump(); +} + +static cmd_tbl_t cmd_clk_sub[] = { + U_BOOT_CMD_MKENT(dump, 1, 1, do_clk_dump, "", ""), +}; + +static int do_clk(cmd_tbl_t *cmdtp, int flag, int argc, + char *const argv[]) +{ + cmd_tbl_t *c; + + if (argc < 2) + return CMD_RET_USAGE; + + /* Strip off leading 'clk' command argument */ + argc--; + argv++; + + c = find_cmd_tbl(argv[0], &cmd_clk_sub[0], ARRAY_SIZE(cmd_clk_sub)); + + if (c) + return c->cmd(cmdtp, flag, argc, argv); + else + return CMD_RET_USAGE; +} + +#ifdef CONFIG_SYS_LONGHELP +static char clk_help_text[] = + "dump - Print clock frequencies"; +#endif + +U_BOOT_CMD(clk, 2, 1, do_clk, "CLK sub-system", clk_help_text); |