]> pilppa.org Git - linux-2.6-omap-h63xx.git/blobdiff - arch/powerpc/platforms/pseries/hotplug-cpu.c
[POWERPC] Don't enable cpu hotplug on pSeries machines with MPIC
[linux-2.6-omap-h63xx.git] / arch / powerpc / platforms / pseries / hotplug-cpu.c
index 9711eb0d549645fee11f198fcb1cdf4ddc9f8860..fc48b96c81bff2ee1ec79eef9d1f13f62b6693cf 100644 (file)
@@ -252,6 +252,20 @@ static struct notifier_block pseries_smp_nb = {
 
 static int __init pseries_cpu_hotplug_init(void)
 {
+       struct device_node *np;
+       const char *typep;
+
+       for_each_node_by_name(np, "interrupt-controller") {
+               typep = of_get_property(np, "compatible", NULL);
+               if (strstr(typep, "open-pic")) {
+                       of_node_put(np);
+
+                       printk(KERN_INFO "CPU Hotplug not supported on "
+                               "systems using MPIC\n");
+                       return 0;
+               }
+       }
+
        rtas_stop_self_args.token = rtas_token("stop-self");
        qcss_tok = rtas_token("query-cpu-stopped-state");