diff options
Diffstat (limited to 'common/cmd_cpu.c')
-rw-r--r-- | common/cmd_cpu.c | 114 |
1 files changed, 0 insertions, 114 deletions
diff --git a/common/cmd_cpu.c b/common/cmd_cpu.c deleted file mode 100644 index b4af64f54f9..00000000000 --- a/common/cmd_cpu.c +++ /dev/null @@ -1,114 +0,0 @@ -/* - * Copyright (c) 2015 Google, Inc - * Written by Simon Glass <sjg@chromium.org> - * - * SPDX-License-Identifier: GPL-2.0+ - */ - -#include <common.h> -#include <command.h> -#include <cpu.h> -#include <dm.h> -#include <errno.h> - -static const char *cpu_feature_name[CPU_FEAT_COUNT] = { - "L1 cache", - "MMU", -}; - -static int print_cpu_list(bool detail) -{ - struct udevice *dev; - struct uclass *uc; - char buf[100]; - int ret; - - ret = uclass_get(UCLASS_CPU, &uc); - if (ret) { - printf("Cannot find CPU uclass\n"); - return ret; - } - uclass_foreach_dev(dev, uc) { - struct cpu_platdata *plat = dev_get_parent_platdata(dev); - struct cpu_info info; - bool first; - int i; - - ret = cpu_get_desc(dev, buf, sizeof(buf)); - printf("%3d: %-10s %s\n", dev->seq, dev->name, - ret ? "<no description>" : buf); - if (!detail) - continue; - ret = cpu_get_info(dev, &info); - if (ret) { - printf("\t(no detail available"); - if (ret != -ENOSYS) - printf(": err=%d\n", ret); - printf(")\n"); - continue; - } - printf("\tID = %d, freq = ", plat->cpu_id); - print_freq(info.cpu_freq, ""); - first = true; - for (i = 0; i < CPU_FEAT_COUNT; i++) { - if (info.features & (1 << i)) { - printf("%s%s", first ? ": " : ", ", - cpu_feature_name[i]); - first = false; - } - } - printf("\n"); - } - - return 0; -} - -static int do_cpu_list(cmd_tbl_t *cmdtp, int flag, int argc, char *const argv[]) -{ - if (print_cpu_list(false)) - return CMD_RET_FAILURE; - - return 0; -} - -static int do_cpu_detail(cmd_tbl_t *cmdtp, int flag, int argc, - char *const argv[]) -{ - if (print_cpu_list(true)) - return CMD_RET_FAILURE; - - return 0; -} - -static cmd_tbl_t cmd_cpu_sub[] = { - U_BOOT_CMD_MKENT(list, 2, 1, do_cpu_list, "", ""), - U_BOOT_CMD_MKENT(detail, 4, 0, do_cpu_detail, "", ""), -}; - -/* - * Process a cpu sub-command - */ -static int do_cpu(cmd_tbl_t *cmdtp, int flag, int argc, - char * const argv[]) -{ - cmd_tbl_t *c = NULL; - - /* Strip off leading 'cpu' command argument */ - argc--; - argv++; - - if (argc) - c = find_cmd_tbl(argv[0], cmd_cpu_sub, ARRAY_SIZE(cmd_cpu_sub)); - - if (c) - return c->cmd(cmdtp, flag, argc, argv); - else - return CMD_RET_USAGE; -} - -U_BOOT_CMD( - cpu, 2, 1, do_cpu, - "display information about CPUs", - "list - list available CPUs\n" - "cpu detail - show CPU detail" -); |