aboutsummaryrefslogtreecommitdiff
path: root/cmd/x86/mtrr.c
diff options
context:
space:
mode:
Diffstat (limited to 'cmd/x86/mtrr.c')
-rw-r--r--cmd/x86/mtrr.c22
1 files changed, 21 insertions, 1 deletions
diff --git a/cmd/x86/mtrr.c b/cmd/x86/mtrr.c
index d8a7e56d5a4..e118bba5a2a 100644
--- a/cmd/x86/mtrr.c
+++ b/cmd/x86/mtrr.c
@@ -131,7 +131,27 @@ static int do_mtrr(struct cmd_tbl *cmdtp, int flag, int argc,
}
}
if (cmd == 'l') {
- return do_mtrr_list(cpu_select);
+ bool first;
+ int i;
+
+ i = mp_first_cpu(cpu_select);
+ if (i < 0) {
+ printf("Invalid CPU (err=%d)\n", i);
+ return CMD_RET_FAILURE;
+ }
+ first = true;
+ for (; i >= 0; i = mp_next_cpu(cpu_select, i)) {
+ if (!first)
+ printf("\n");
+ printf("CPU %d:\n", i);
+ ret = do_mtrr_list(i);
+ if (ret) {
+ printf("Failed to read CPU %d (err=%d)\n", i,
+ ret);
+ return CMD_RET_FAILURE;
+ }
+ first = false;
+ }
} else {
switch (cmd) {
case 'e':