summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--common/cmd_mp.c3
-rw-r--r--cpu/mpc85xx/mp.c8
-rw-r--r--cpu/mpc86xx/mp.c28
-rw-r--r--include/common.h1
4 files changed, 39 insertions, 1 deletions
diff --git a/common/cmd_mp.c b/common/cmd_mp.c
index 71e430362f..d78c20951e 100644
--- a/common/cmd_mp.c
+++ b/common/cmd_mp.c
@@ -46,6 +46,8 @@ cpu_cmd(cmd_tbl_t *cmdtp, int flag, int argc, char *argv[])
cpu_reset(cpuid);
} else if (strncmp(argv[2], "status", 6) == 0) {
cpu_status(cpuid);
+ } else if (strncmp(argv[2], "disable", 7) == 0) {
+ return cpu_disable(cpuid);
} else {
cmd_usage(cmdtp);
return 1;
@@ -86,6 +88,7 @@ U_BOOT_CMD(
"Multiprocessor CPU boot manipulation and release",
"<num> reset - Reset cpu <num>\n"
"cpu <num> status - Status of cpu <num>\n"
+ "cpu <num> disable - Disable cpu <num>\n"
"cpu <num> release <addr> [args] - Release cpu <num> at <addr> with [args]"
#ifdef CPU_ARCH_HELP
"\n"
diff --git a/cpu/mpc85xx/mp.c b/cpu/mpc85xx/mp.c
index 6530cb176b..6ae7f0a72c 100644
--- a/cpu/mpc85xx/mp.c
+++ b/cpu/mpc85xx/mp.c
@@ -1,5 +1,5 @@
/*
- * Copyright 2008-2009 Freescale Semiconductor, Inc.
+ * Copyright 2008-2010 Freescale Semiconductor, Inc.
*
* See file CREDITS for list of people who contributed to this
* project.
@@ -68,6 +68,12 @@ int cpu_status(int nr)
return 0;
}
+int cpu_disable(int nr)
+{
+ /* dummy function so common/cmd_mp.c will build */
+ return 1;
+}
+
static u8 boot_entry_map[4] = {
0,
BOOT_ENTRY_PIR,
diff --git a/cpu/mpc86xx/mp.c b/cpu/mpc86xx/mp.c
index 2940673c7c..ecdf2fb389 100644
--- a/cpu/mpc86xx/mp.c
+++ b/cpu/mpc86xx/mp.c
@@ -1,3 +1,25 @@
+/*
+ * Copyright 2008-2010 Freescale Semiconductor, Inc.
+ *
+ * See file CREDITS for list of people who contributed to this
+ * project.
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License as
+ * published by the Free Software Foundation; either version 2 of
+ * the License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston,
+ * MA 02111-1307 USA
+ */
+
#include <common.h>
#include <asm/processor.h>
#include <asm/mmu.h>
@@ -24,6 +46,12 @@ int cpu_status(int nr)
return 0;
}
+int cpu_disable(int nr)
+{
+ /* dummy function so common/cmd_mp.c will build */
+ return 1;
+}
+
int cpu_release(int nr, int argc, char *argv[])
{
/* dummy function so common/cmd_mp.c will build
diff --git a/include/common.h b/include/common.h
index 391790a411..81f2b59dea 100644
--- a/include/common.h
+++ b/include/common.h
@@ -712,6 +712,7 @@ void show_boot_progress(int val);
#ifdef CONFIG_MP
int cpu_status(int nr);
int cpu_reset(int nr);
+int cpu_disable(int nr);
int cpu_release(int nr, int argc, char *argv[]);
#endif
OpenPOWER on IntegriCloud