|
@@ -22,6 +22,7 @@
|
|
|
#include <linux/io.h>
|
|
|
|
|
|
#include <asm/cacheflush.h>
|
|
|
+#include <asm/hardware/gic.h>
|
|
|
#include <asm/smp_scu.h>
|
|
|
#include <asm/unified.h>
|
|
|
|
|
@@ -104,7 +105,7 @@ int __cpuinit boot_secondary(unsigned int cpu, struct task_struct *idle)
|
|
|
* the boot monitor to read the system wide flags register,
|
|
|
* and branch to the address found there.
|
|
|
*/
|
|
|
- smp_cross_call(cpumask_of(cpu), 1);
|
|
|
+ gic_raise_softirq(cpumask_of(cpu), 1);
|
|
|
|
|
|
timeout = jiffies + (1 * HZ);
|
|
|
while (time_before(jiffies, timeout)) {
|
|
@@ -147,6 +148,8 @@ void __init smp_init_cpus(void)
|
|
|
|
|
|
for (i = 0; i < ncores; i++)
|
|
|
set_cpu_possible(i, true);
|
|
|
+
|
|
|
+ set_smp_cross_call(gic_raise_softirq);
|
|
|
}
|
|
|
|
|
|
void __init platform_smp_prepare_cpus(unsigned int max_cpus)
|