Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

powerpc: Move smp_ops_t from machdep.h to smp.h

I can't see any reason these functions are needed by machdep.h
and they are all hidden by CONFIG_SMP with no UP alternative.

Also move the declarations for the fallback timebase ops, which
are used to fill in the smp ops.

Signed-off-by: Milton Miller <miltonm@bga.com>
Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>

authored by

Milton Miller and committed by
Benjamin Herrenschmidt
17f9c8a7 d4fc8fe1

+15 -21
-21
arch/powerpc/include/asm/machdep.h
··· 29 29 struct pci_controller; 30 30 struct kimage; 31 31 32 - #ifdef CONFIG_SMP 33 - struct smp_ops_t { 34 - void (*message_pass)(int cpu, int msg); 35 - int (*probe)(void); 36 - int (*kick_cpu)(int nr); 37 - void (*setup_cpu)(int nr); 38 - void (*bringup_done)(void); 39 - void (*take_timebase)(void); 40 - void (*give_timebase)(void); 41 - int (*cpu_disable)(void); 42 - void (*cpu_die)(unsigned int nr); 43 - int (*cpu_bootable)(unsigned int nr); 44 - }; 45 - #endif 46 - 47 32 struct machdep_calls { 48 33 char *name; 49 34 #ifdef CONFIG_PPC64 ··· 296 311 extern sys_ctrler_t sys_ctrler; 297 312 298 313 #endif /* CONFIG_PPC_PMAC */ 299 - 300 - #ifdef CONFIG_SMP 301 - /* Poor default implementations */ 302 - extern void __devinit smp_generic_give_timebase(void); 303 - extern void __devinit smp_generic_take_timebase(void); 304 - #endif /* CONFIG_SMP */ 305 314 306 315 307 316 /* Functions to produce codes on the leds.
+15
arch/powerpc/include/asm/smp.h
··· 35 35 36 36 #ifdef CONFIG_SMP 37 37 38 + struct smp_ops_t { 39 + void (*message_pass)(int cpu, int msg); 40 + int (*probe)(void); 41 + int (*kick_cpu)(int nr); 42 + void (*setup_cpu)(int nr); 43 + void (*bringup_done)(void); 44 + void (*take_timebase)(void); 45 + void (*give_timebase)(void); 46 + int (*cpu_disable)(void); 47 + void (*cpu_die)(unsigned int nr); 48 + int (*cpu_bootable)(unsigned int nr); 49 + }; 50 + 38 51 extern void smp_send_debugger_break(void); 39 52 extern void smp_message_recv(int); 40 53 extern void start_secondary_resume(void); 54 + extern void __devinit smp_generic_give_timebase(void); 55 + extern void __devinit smp_generic_take_timebase(void); 41 56 42 57 DECLARE_PER_CPU(unsigned int, cpu_pvr); 43 58