MIPS: Fix build error for non-malta VSMP kernel
authorAnoop P A <anoop.pa@gmail.com>
Tue, 25 Jan 2011 13:57:26 +0000 (19:27 +0530)
committerJohn Crispin <blogic@openwrt.org>
Wed, 22 Aug 2012 21:46:38 +0000 (23:46 +0200)
VSMP kernel build for non-malta platforms fails with following error

  LD      init/built-in.o
  LD      .tmp_vmlinux1
arch/mips/built-in.o: In function `vsmp_init_secondary':
smp-mt.c:(.cpuinit.text+0x23cc): undefined reference to `gic_present'
smp-mt.c:(.cpuinit.text+0x23d0): undefined reference to `gic_present'
make: *** [.tmp_vmlinux1] Error 1

gic_present variable is declared only if IRQ_GIC is selected.

Signed-off-by: Anoop P A <anoop.pa@gmail.com>
Patchwork: http://patchwork.linux-mips.org/patch/2039/
Signed-off-by: John Crispin <blogic@openwrt.org>
arch/mips/kernel/smp-mt.c

index ff17868..2defa2b 100644 (file)
@@ -150,6 +150,7 @@ static void vsmp_send_ipi_mask(const struct cpumask *mask, unsigned int action)
 
 static void __cpuinit vsmp_init_secondary(void)
 {
+#ifdef CONFIG_IRQ_GIC
        extern int gic_present;
 
        /* This is Malta specific: IPI,performance and timer interrupts */
@@ -157,6 +158,7 @@ static void __cpuinit vsmp_init_secondary(void)
                change_c0_status(ST0_IM, STATUSF_IP3 | STATUSF_IP4 |
                                         STATUSF_IP6 | STATUSF_IP7);
        else
+#endif
                change_c0_status(ST0_IM, STATUSF_IP0 | STATUSF_IP1 |
                                         STATUSF_IP6 | STATUSF_IP7);
 }