85xx: Fix detection of MP cpu spin up
authorKumar Gala <galak@kernel.crashing.org>
Wed, 9 Apr 2008 09:20:57 +0000 (04:20 -0500)
committerAndrew Fleming-AFLEMING <afleming@freescale.com>
Fri, 11 Apr 2008 22:32:56 +0000 (17:32 -0500)
We were looking at the wrong memory offset to determine of a secondary
cpu had been spun up or not.  Also added a warning message if the
all the secondary cpus we expect don't spin up.

Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
cpu/mpc85xx/mp.c

index 7b10fba0a64413e906aa02f69227db20585f1986..e733f7b00a50459f6c50e690fbea6ff9bb2e7038 100644 (file)
@@ -154,7 +154,7 @@ static void pq3_mp_up(unsigned long bootpg)
        while (timeout) {
                int i;
                for (i = 1; i < CONFIG_NR_CPUS; i++) {
-                       if (table[i * NUM_BOOT_ENTRY])
+                       if (table[i * NUM_BOOT_ENTRY + BOOT_ENTRY_ADDR_LOWER])
                                cpu_up_mask |= (1 << i);
                };
 
@@ -165,6 +165,10 @@ static void pq3_mp_up(unsigned long bootpg)
                timeout--;
        }
 
+       if (timeout == 0)
+               printf("CPU up timeout. CPU up mask is %x should be %x\n",
+                       cpu_up_mask, up);
+
        /* enable time base at the platform */
        if (whoami)
                devdisr |= MPC85xx_DEVDISR_TB1;