Commit 
9c869edac591977314323a4eaad5f7633fca684f broke voyager again
rather subtly because it already had its own topology exporting
functions, so now each CPU gets registered twice.
I think we can actually use the generic ones, so I don't propose
reverting it.  The attached should eliminate the voyager topology
functions in favour of the generic ones.
I also added a define to ensure voyager is never hotplug CPU (we don't
have the support in the SMP harness).
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
 
 config HOTPLUG_CPU
        bool "Support for hot-pluggable CPUs (EXPERIMENTAL)"
-       depends on SMP && HOTPLUG && EXPERIMENTAL
+       depends on SMP && HOTPLUG && EXPERIMENTAL && !X86_VOYAGER
        ---help---
          Say Y here to experiment with turning CPUs off and on.  CPUs
          can be controlled through /sys/devices/system/cpu.
 
 #include <linux/sysrq.h>
 #include <linux/smp.h>
 #include <linux/nodemask.h>
-#include <asm/cpu.h>
 #include <asm/io.h>
 #include <asm/voyager.h>
 #include <asm/vic.h>
        if (pm_power_off)
                pm_power_off();
 }
-
-static struct i386_cpu cpu_devices[NR_CPUS];
-
-static int __init topology_init(void)
-{
-       int i;
-
-       for_each_present_cpu(i)
-               register_cpu(&cpu_devices[i].cpu, i, NULL);
-       return 0;
-}
-
-subsys_initcall(topology_init);