From 51e5fdf02de15a55a736def93c3f9782a52c5871 Mon Sep 17 00:00:00 2001 From: Ralf Baechle Date: Wed, 15 Feb 2006 15:17:19 +0000 Subject: [PATCH] --- yaml --- r: 21967 b: refs/heads/master c: c1449c8fa40859eb269025a7db85b34115205f5b h: refs/heads/master i: 21965: b8d09359de3a3edf98f003ff229c63dcd7a23654 21963: 1d0032d351a41b6fb0d5b8ffaa3c69d7e5e724d4 21959: 4461c7de67773427abdd10dc4ee7909c557210a6 21951: a1d178061e546f3fd479c604bd6756005b9b4734 v: v3 --- [refs] | 2 +- trunk/arch/mips/Kconfig | 2 +- trunk/arch/mips/qemu/Makefile | 2 ++ trunk/arch/mips/qemu/q-smp.c | 48 +++++++++++++++++++++++++++++++++++ 4 files changed, 52 insertions(+), 2 deletions(-) create mode 100644 trunk/arch/mips/qemu/q-smp.c diff --git a/[refs] b/[refs] index 1889a4ac2879..aa337df995e1 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 37caa934af02bc01d0e1366a49e1c89360fa0f29 +refs/heads/master: c1449c8fa40859eb269025a7db85b34115205f5b diff --git a/trunk/arch/mips/Kconfig b/trunk/arch/mips/Kconfig index 9d1e78f9c060..6356f7d52ce6 100644 --- a/trunk/arch/mips/Kconfig +++ b/trunk/arch/mips/Kconfig @@ -1582,7 +1582,7 @@ source "mm/Kconfig" config SMP bool "Multi-Processing support" - depends on CPU_RM9000 || ((SIBYTE_BCM1x80 || SIBYTE_BCM1x55 || SIBYTE_SB1250) && !SIBYTE_STANDALONE) || SGI_IP27 || MIPS_MT_SMP + depends on CPU_RM9000 || ((SIBYTE_BCM1x80 || SIBYTE_BCM1x55 || SIBYTE_SB1250 || QEMU) && !SIBYTE_STANDALONE) || SGI_IP27 || MIPS_MT_SMP ---help--- This enables support for systems with more than one CPU. If you have a system with only one CPU, like most personal computers, say N. If diff --git a/trunk/arch/mips/qemu/Makefile b/trunk/arch/mips/qemu/Makefile index 934944ab9e85..6a8e8bcef552 100644 --- a/trunk/arch/mips/qemu/Makefile +++ b/trunk/arch/mips/qemu/Makefile @@ -3,3 +3,5 @@ # obj-y = q-firmware.o q-int.o q-irq.o q-mem.o q-setup.o + +obj-$(CONFIG_SMP) += q-smp.o diff --git a/trunk/arch/mips/qemu/q-smp.c b/trunk/arch/mips/qemu/q-smp.c new file mode 100644 index 000000000000..5a12354cd576 --- /dev/null +++ b/trunk/arch/mips/qemu/q-smp.c @@ -0,0 +1,48 @@ +/* + * This file is subject to the terms and conditions of the GNU General Public + * License. See the file "COPYING" in the main directory of this archive + * for more details. + * + * Copyright (C) 2006 by Ralf Baechle (ralf@linux-mips.org) + * + * Symmetric Uniprocessor (TM) Support + */ +#include +#include + +/* + * Send inter-processor interrupt + */ +void core_send_ipi(int cpu, unsigned int action) +{ + panic(KERN_ERR "%s called", __FUNCTION__); +} + +/* + * After we've done initial boot, this function is called to allow the + * board code to clean up state, if needed + */ +void prom_init_secondary(void) +{ +} + +void prom_smp_finish(void) +{ +} + +/* Hook for after all CPUs are online */ +void prom_cpus_done(void) +{ +} + +void __init prom_prepare_cpus(unsigned int max_cpus) +{ + cpus_clear(phys_cpu_present_map); +} + +/* + * Firmware CPU startup hook + */ +void prom_boot_secondary(int cpu, struct task_struct *idle) +{ +}