|  | /* | 
|  | * SMP support for R-Mobile / SH-Mobile | 
|  | * | 
|  | * Copyright (C) 2010  Magnus Damm | 
|  | * | 
|  | * Based on realview, Copyright (C) 2002 ARM Ltd, All Rights Reserved | 
|  | * | 
|  | * This program is free software; you can redistribute it and/or modify | 
|  | * it under the terms of the GNU General Public License version 2 as | 
|  | * published by the Free Software Foundation. | 
|  | */ | 
|  | #include <linux/kernel.h> | 
|  | #include <linux/errno.h> | 
|  | #include <linux/smp.h> | 
|  |  | 
|  | int platform_cpu_kill(unsigned int cpu) | 
|  | { | 
|  | return 1; | 
|  | } | 
|  |  | 
|  | void platform_cpu_die(unsigned int cpu) | 
|  | { | 
|  | while (1) { | 
|  | /* | 
|  | * here's the WFI | 
|  | */ | 
|  | asm(".word	0xe320f003\n" | 
|  | : | 
|  | : | 
|  | : "memory", "cc"); | 
|  | } | 
|  | } | 
|  |  | 
|  | int platform_cpu_disable(unsigned int cpu) | 
|  | { | 
|  | /* | 
|  | * we don't allow CPU 0 to be shutdown (it is still too special | 
|  | * e.g. clock tick interrupts) | 
|  | */ | 
|  | return cpu == 0 ? -EPERM : 0; | 
|  | } |